首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
给定程序MODII.C中fun函数的功能是: 求s=aa…aa-…-aaa-aa-a (此处aa…aa表示n个a,a和n的值在1至9之间) 例如a=3,n=6,则以上表达式为: s=333333033333-33330333
给定程序MODII.C中fun函数的功能是: 求s=aa…aa-…-aaa-aa-a (此处aa…aa表示n个a,a和n的值在1至9之间) 例如a=3,n=6,则以上表达式为: s=333333033333-33330333
admin
2021-06-15
37
问题
给定程序MODII.C中fun函数的功能是:
求s=aa…aa-…-aaa-aa-a
(此处aa…aa表示n个a,a和n的值在1至9之间)
例如a=3,n=6,则以上表达式为:
s=333333033333-3333033303303
其值是:296298
a和n是mn函数的形参,表达式的值作为函数值传回main函数。
请改正程序中的错误,使它能计算出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!
#include
long fun(int a,int n)
{ int j;
/*************found*************/
long s=0,t=1;
for(j=0;j
t=t * 10+a ;
s=t ;
for(j=1;j
/*************found*************/
t=t%10;
s = s — t ;
}
return(s);
}
main()
{ int a,n;
printf("\nP2ease enter a and n:");
scanf("%d%d", &a, &n);
printf("The value of function is:
%ld\n",fun(a,n));
}
选项
答案
(1)long s=0, t=0;(2)t=t/10 ;
解析
(1)当进入第一循环,“t=t*10+a:”语句,如果输入的a是3,并且利用题目中给出的初始化值1,计算得出t的值为13,而实际应该是1,由此可知t的初值设置不正确,不应该是1。所以将“long s=0,t=1;”改为“long s=0,t=0;”。
(2)循环中通过语句“t=t%10;”来获得每一项,每循环一次,t的值应缩小10倍,这里应该用除以10来实现,而不能用“%”求余数。所以将“t=t%10;”改为“t=t/10;”。
转载请注明原文地址:https://kaotiyun.com/show/Mgtp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
关于do循环体while(条件表达式);以下叙述中正确的是
有以下程序#includeintfun(inta,intb){if(b==0)returna;elsereturn(fun(--a,--b));}main(){pri
有以下程序#include<stdio.h>main(){intn,*p=NULL;*p=&n;printf("Inputn:");scanf("%d",&p);printf("outputn:");orintf("%d\n",p:}该
有以下程序(说明:字*A的ASCII码值是65)voidfun(char*s){while(*s){if(*s%2)printf("%c",*s);s++;}}main(){chara[]="BYTE";fun(a);printf("\n")
在关系数据库中,描述全局数据逻辑结构的是
有以下程序:#include<stdio.h>#defineSUB(a)(a)-(a)main(){Inta=2,b=3,c=5,d;d=SUB(a+b)*c;printf("%d\n",d);}程序的运行结果是()。
以下程序段中,与语句:k=a>b?(b>c?1:0):0;功能相同的是()。
对长度为10的线性表进行冒泡排序,最坏情况下需要比较的次数为
下列数据结构中,能用二分法进行查找的是()。
随机试题
用于预防应激性溃疡的上消化道出血及麻醉前给药预防吸入性肺炎的药物是
推理的形式有效性是指对于一个推理形式假设______,则_______。
导致脉道不利的原因是
男,50岁。上腹部隐痛2年,间歇性黑便,体重下降,近3个月出现疼痛向腰背部放射。查体:贫血貌,上腹部可触及一4cm×3cm肿块,固定。此患者最可能的诊断是
以下关于围护结构的传热热阻,说法不正确的是()。
()能自动核销已对账的记录。
对借款人的限制包括()。
如果要在Applet中显示特定的文字、图形等信息,可以在用户定义的Applet类中重写的方法是
下列循环语句中有语法错误的是()。
Lookatthechartsbelow.TheyshowthesalesoftelephonesindifferentdepartmentstoresfromMondaytoWednesday.Whichchart
最新回复
(
0
)