首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
下列给定程序中函数fun的功能是:求两个非零正整数的最大公约数,并作为函数值返回。 例如,若num1和num2分别为49和21,则输出的最大公约数为7;若num1和hUm2分别为27和81,则输出的最大公约数为27。 请改正程序中的错误,使
下列给定程序中函数fun的功能是:求两个非零正整数的最大公约数,并作为函数值返回。 例如,若num1和num2分别为49和21,则输出的最大公约数为7;若num1和hUm2分别为27和81,则输出的最大公约数为27。 请改正程序中的错误,使
admin
2015-11-24
16
问题
下列给定程序中函数fun的功能是:求两个非零正整数的最大公约数,并作为函数值返回。
例如,若num1和num2分别为49和21,则输出的最大公约数为7;若num1和hUm2分别为27和81,则输出的最大公约数为27。
请改正程序中的错误,使它能得出正确结果。
注意:不要改动main函数,不得增行或删行。也不得更改程序的结构!
试题程序:
#include<stdio.h>
int fun(int a,int b)
{
int.r,t;
if(a<b){
/**********found***********/
t=a,b=a,a=t;
}
r=a%b;
while(r!=0)
{a=b,b=r;r=a%b,}
/**********found***********/
return(a);
}
void main()
{
int num1 , hum2 , a;
printf(”Input num1 num2:”);
scanf(”%d%d”,&num1,&num2);
printf(”numl=%d hum2=%d\n\n”,
num1,num2),
a=fun(num1,num2);
printf(“The maximun common divi
sor is%d\n\n”,a);
}
选项
答案
(1){t=a;a=b;b=t;} (2)return(b);或return b;
解析
求最大公约数算法一般采用辗转相除法。辗转相除法的算法为:首先将m除以n(m>n)得余数r,再用余数r去除原来的除数,得到新的余数,重复此过程直到余数为0时停止,此时的除数就是m和n的最大公约数。
程序首先判断参数a和b的大小,如果a<b则进行交换,这里是一个数学逻辑错误,应先将a的值赋给中间变量t,再将b的值赋给a,最后将t的值赋给b。当余数r为0时,除数b即为所求的最大公约数,所以函数应返回b。
转载请注明原文地址:https://kaotiyun.com/show/ekID777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
将目前低水平的、不全面的、发展很不平衡的小康社会,发展成为更高水平、内容比较全面丰富、发展较为均衡的小康社会,它包括经济、政治、文化和生态等多方面的内容。这是我国()。
关于缓刑,下列哪一选项是错误的?()
鸡蛋一般不能洗了以后存放,是因为()。
3个3口之家一起观看演出,他们购买了同一排的9张连座票,现要求一家人必须坐在一起,问有多少种不同的坐法?
若一个三角形的所有边长都是整数,其周长是奇数,且已知其中的两边长分别为8和2012.则满足条件的三角形总个数是?
有5个连续自然数,它们的和为一个平方数,中间三个数的和为立方数,则这五个数中最小数的最小值为多少?
一支有100多人的旅行团乘坐汽车,如果每辆车都乘坐29人,结果剩下4人;如果增加一辆车,则所有游客正好平均分到各辆车上,问此时每辆车乘坐了多少人?()
随着技术的不断研发和升级换代,网络的功能运用越来越多,且覆盖面越来越广,从而促使网络从以往单一的新闻功能、信息功能应用日益拓展为通信功能、资讯功能、综合服务功能和其他社会功能的全面应用.网络正在从媒体化加速向社会化和体系化转变,网络发展中呈现庞大的舆论生态
(2015年真题)汉朝法律规定,被告人及其亲属不服官府判决的,可申请重审。这一诉讼程序称为
对下列二叉树进行中序遍历的结果是()。
随机试题
患者,男性,32岁。某日突然发觉自己的手变大了,汗毛像野兽毛一样浓密,镜子里自己的脸比黑熊还难看,仔细一看,这些情况都恢复到原来的状态。此症状属于
实行政府指导价的工程勘察和工程设计收费,其基准价根据()进行计算。
下列属于财产信托的有()。
银行业从业人员可以在任意商业机构兼职。()
学习新信息对已有旧信息回忆的抑制作用叫()。
在Windows中,要把图标设置成缩略图方式,应在()下面菜单中设置。
若sinxdx,b=∫01cosxdx,则a与b的关系是()。
实质教育论认为教学的主要任务是向学生传授知识;形式教育论认为教学的主要任务是发展学生的______。(2014.山东)
下面是一位教师的反思日记。回顾过去,我感觉到,过去一个学期的教学比我前十年的教学总和都更能让我明白什么叫教育。以前,我教过好几个班,并且每班人数都在80左右。每天我的大部分时间都在备课,与学生的交流很少,我只考虑自己能提供什么,很少考虑学生需要什
Thewordhorsepowerwasfirstusedtwohundredyearsago.JamesWatthadmadetheworld’sfirst(11)usedsteamengine.Hehad
最新回复
(
0
)