首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
给定程序MODI1.C中函数fun的功能是:从整数1到55之间,选出能被3整除、且有一位上的数是5的那些数,并把这些数放在b所指的数组中,这些数的个数作为函数值返回。规定,函数中a1放个位数,a2放十位数。 请改正程序中的错误,使它能得出正确结果。
给定程序MODI1.C中函数fun的功能是:从整数1到55之间,选出能被3整除、且有一位上的数是5的那些数,并把这些数放在b所指的数组中,这些数的个数作为函数值返回。规定,函数中a1放个位数,a2放十位数。 请改正程序中的错误,使它能得出正确结果。
admin
2013-09-15
49
问题
给定程序MODI1.C中函数fun的功能是:从整数1到55之间,选出能被3整除、且有一位上的数是5的那些数,并把这些数放在b所指的数组中,这些数的个数作为函数值返回。规定,函数中a1放个位数,a2放十位数。
请改正程序中的错误,使它能得出正确结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。
#include <stdio.h>
int fun(int *b)
{ int k,a1,a2,i=0;
for(k=10; k<=55; k++) {
/**********found**********/
a2=k/10;
a1=k-a2*10;
if((k%3==0 && a2==5)‖(k%3==0&& a1==5))
{ b
=k;i++;}
}
/**********found**********/
return k;
}
main()
{ int a[100],k,m;
m=fun(a);
printf("The result is:\n");
for(k=0; k<m; k++)printf("%4d", a[k]);print f("\n");
}
选项
答案
(1)a2=k/10; (2)return i;
解析
(1)第一标识下“a2=k/10;”是截取十位数,截取个位数是k%10,而截取十位数是k/10,因此第一标识下应改成“a2=k/10;”。
(2)变量i是标识数组b的下标也就是数组的个数,题目中“return k;”返回的是循环条件表达式中的变量,所以这里应该将“return k;”改为“return i;”。
转载请注明原文地址:https://jikaoti.com/ti/c1n0FFFM
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
以下关于typedef的叙述错误的是
有以下程序 #include <stdio.h> void fun(char *t, char *s) { while(*t!=0) t++; while( (*t++ = *s++
以下正确的字符串常量是
下列程序舶输出结果是【 】。#include<stdio.h>main(){inta[5]={2,4,6,8,10},*p;p=a;p++;printf("%d",*p);}
在关系数据库中,用来表示实体之间联系的是【 】。
有下列程序: #include <stdio.h> main() { FILE *fp; int a[10]={1,2,3},i,n; fp=fopen("d1.dat","w"); for(i
有下列程序: #include <stdio.h> int f(int x) { int y; if(x=0‖x==1)return(3); y=x*x-f(x-2); retur
以下函数按每珩8个输出数组中的数据voidfun(iht*w,intn){inti;for(i=0;i<n,i++){______printf("%d"
随机试题
在有关人的身心发展动因问题上持内发论观点的足()。
用于显示乙型肝炎表面抗原的染色方法是
一男性肺癌患者,病理诊断为小细胞肺癌,首选的治疗方法为
A、曲直B、炎上C、稼穑D、从革E、润下木曰
患者,男性,58岁。腹胀、肛门停止排气排便2天,3年前曾因胃溃疡行胃大部切除术。查体:腹部叩诊鼓音,肠鸣音12次/分,有气过水声,为明确诊断,首选的检查方法是
在生产中对每道工序上的加工进度控制是()。
下列各项中,属于银行资产的是()。
在20世纪初的中国,积极宣传资产阶级民主革命思想的主要人物有()
社会发展和变革的先导是
A、Sheisquiteconfidentaboutherself.B、Sheisworriedaboutheradmission.C、Shehasreceivedacoupleofoffers.D、Sheista
最新回复
(
0
)