2022年二级C语言上机模拟题及答案 .pdf
《2022年二级C语言上机模拟题及答案 .pdf》由会员分享,可在线阅读,更多相关《2022年二级C语言上机模拟题及答案 .pdf(18页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、一、1、程序填空题给定程序中 ,函数fun 的功能是将参数给定的字符串、整数、浮点数写在文本文件中,再用字符串方式从此文本文件中逐个读入,并调用库函数atoi 和 atof 将字符串转换成相应的整数、浮点数,然后将其显示在屏幕上。填空: (1)FILE* (2)fclose(fp) (3)fp 改错: (1)t=(STU *)calloc(sizeof(STU),m); (2)tk=bj; 编程: int i,t,j=0,*p=a; t=p0; for(i=0;i=n) aj=t; return j; 二、1、程序填空题给定程序中 ,函数 fun 的功能是:将形参n 中,各位上为偶数的数取出,
2、并按原来从高位到低位的顺序组成一个新的数,并作为函数值返回。例如,从主函数输入一个整数:2763849626846。填空: (1)1 (2)s (3)i*10 改错: (1)int fun(int n,int xxM); (2)printf( “ %4d” ,xxij); 编程: *c=(a/10)*1000+(b%10)*100+(a%10)*10+(b/10); 最后在黑色对话框中输入45 12 后按回车键三、1、程序填空题给定程序中 ,函数 fun 的功能是:找出100999 之间 (含 100 和 999)所有整数中各位上数字之和为 x(x 为一正整数 )的整数,然后输出;符合条件的整
3、数个数作为函数值返回。例如,当x 值为 5 时,100999 之间各位上数字之和为5 的整数有: 104、113、 122、131、140、203、212、221、230、302、311、320、401、410、500,共有 15 个。当 x 值为 27 时,各位数字之和为27 的整数是: 999,只有 1 个。填空: (1)999 (2)t/10 (3)x 改错: (1)void fun(long s,long *t) (2)while(s0) 编程: (注意:此题在 /* 请按题目要求完成以下代码*/的下面填入答案) if(ai.s aj.s) tmp=ai; ai=aj; aj=tmp;
4、 四、1、程序填空题给定程序中 ,函数 fun 的功能是: 找出 100 至 x(x999)之间各位上的数字之和为15 的所有整数,然后输出;符合条件的整数个数作为函数值返回。例如,当n 值为 500 时,各位数字之和为15 的整数有: 159、168、177、186、195、249、258、267、276、285、294、339、348、357、366、375、384、393、429、 438、 447、456、465、474、483、492。共有 26 个。填空: (1)0 (2)x (3)t+ 改错: (1)int i,s1; (2)ti=ss1-1-i; 编程: *c=(b/10)*1
5、000+(a/10)*100+(b%10)*10+a%10; 最后在黑色对话框中输入45 12 后按回车键五、1、程序填空题给定程序中 ,函数 fun 的功能是计算下式s=1/(2*2 )+3/(4*4)+5/(6*6)+ +(2n-1)/(2n*2n)名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 18 页 - - - - - - - - - 直到 |(2n-1)/(2n*2n)|=1e-3, 函数的返回值2.985678。填空: (1)0 (2)i+ (3)2.0*i
6、 改错: (1)void fun(char *s,char *t) (2)t2*d= ? 0? ; 编程: int i,j=0; for(i=1;istrlen(s);i+=2) if(i%2=1 & si%2=1) tj+=si; tj= ?0?; 最后在黑色对话框中输入ABCDEFG123456 后按回车键六、1、程序填空题函数 fun 的功能是:统计长整数的各个位上出现数字1、2、3 的次数,并通过外部(全局)变量 c1、c2、c3 返回主函数。例如,当n=123114350 时,结果应该为:c1=3 c2=1 c3=2。填空: (1)n%10 (2)break (3)break 改错:
7、 (1)if(t=0) (2)*zero=count; 编程: double s=0,t=1; int i; for(i=1;i=n;i+) t*=i; s+=1.0/t; return s; 最后在黑色对话框中输入50 后按回车键七、1、程序填空题给定程序中 ,函数 fun 的功能是: 统计出带有头结点的单向链表中结点的个数,存放在形参n所指的存储单元中。填空: (1)*n (2)next (3)head 改错: (1)a=NULL; (2)if(*r=*p) 编程: *c=(a%10)*1000+(b/10)*100+(a/10)*10+(b%10); 最后在黑色对话框中输入45 12 后
8、按回车键八、1、程序填空题给定程序中 ,函数 fun 的功能是根据形参i 的值返回某个函数的值。当调用正确时, 程序输出x1=5.000000, x2=3.000000, x1*x1+x1*x2=40.000000 填空: (1)double (2)f1 (3)f2 改错: (1)char *fun(char *s,char *t) (2)ss+; (3)tt+; 编程: int i; for(i=0;im;i+) fun1(w); 最后在黑色对话框中输入3 后按回车键九、1、程序填空题函数 fun 的功能是:从三个形参a,b,c 中找出中间的那个数,作为函数值返回。例如,当a=3,b=5,c
9、=4 时,中数为4。填空: (1)a (2)a (3)b 改错: (1)c=c+32;( 把大写 C 改成小写 ) (2)c=c+5; 编程: int i; double fac=1.0; double sum=1.0; for(i=2;i=n;i+) 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 18 页 - - - - - - - - - fac+=sqrt(i); sum+=fac; 最后在黑色对话框中输入20 后按回车键十、1、程序填空题给定程序中 ,函数 fu
10、n 的功能是, 将形参 s 所指字符串中的字母字符顺序前移,其他字符顺序后移,处理后新字符串的首地址作为函数值返回。例如: s 所指字符串为:asd123fgh543df,处理后新字符串为asdfghdf123543。填空: (1)si (2)k (3)0 改错: (1)while(*w) (2)if(*r=*p) 编程: int i,j=0; for(i=0;istrlen(s);i+) if(!(si%2) tj+=si; tj= ?0?; 最后在黑色对话框中输入ABCDEFG12345 后按回车键十一、1、程序填空题给定程序中已建立一个带有头结点的单向链表,链表中的各结点按数据域递增有序
11、链接。函数 fun 的功能是:删除链表中数据域值相同的结点,使之只保留一个。填空: (1)q (2)next (3) next 改错: (1);( 少了分号 ) (2) p=j;t=ap;ap=ai;ai=t;编程: int i; *n=0; for(i=7;i=m;i+) if(i%7 = 0) | (i%11 = 0) a(*n)+=i; 十二、1、程序填空题给定程序中 ,函数 fun 的功能是: 将形参 std 所指结构体数组中年龄最大者的数据作为函数值返回,并在main 函数中输出。填空: (1)*std (2)stdi.age (3)max.name 改错: (1)void fun(
12、int *a,int *b) (2)t=*b;*b=*a;*a=t; 编程: int i,j,min,k; for(i=0;iN;i+) min=tt0i;k=0; for(j=1;jM;j+) if(ttjimin) min=ttji; k=j; ppi=ttki; 十三、1、程序填空题给定程序中 ,函数 fun 的功能是 :求出形参ss所指字符串数组中最长的长度,其余字符串左边用字符 *补齐,使其与最长的字符串等长。字符串数组中共有M 个字符串,且串长N。填空: (1)k (2)len (3)ssij 改错: (1)result*=n-; (2)return result;( 把横线改成r
13、esult) 编程: char *p=s; int i=0; while(*p) if(*p!=c) si+=*p; p+; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 18 页 - - - - - - - - - si= ?0?; 最后在黑色对话框中输入n 后按回车键十四、1、程序填空题给定程序中 ,函数 fun 的功能是 :求出形参ss所指字符串数组中最长字符串的长度,将其余字符串右边用字符* 补齐,使其与最长的字符串等长。ss 所指字符串数组中共有M 个字符串,
14、且串长 N。填空: (1)ssi (2)j+n (3)1 改错: (1)if(*p = ,? ) (2);(后面缺少分号 ) 编程: char ch; int i,j; for(i=1;i6;i+) for(j=i+1;j6;j+) if (*(s+i) *(s+j) ) ch=*(s+j); *(s+j)= *(s+i); *(s+i) = ch; 最后在黑色对话框中输入CEAedca 后按回车键十五、1、程序填空题函数 fun 的功能是:计算f(x)=1+x+x2 2!+xn/n! 直到 xn/n! 10-6 若 x=2.5,函数值为: 12.182494。填空: (1)x (2)n (3
15、)t 改错: (1)d=1;s=0; (2)d=d/10;( 是除号 ) 编程: int i; double s=0; for(i=0;i8;i+) s+=sqrt(xi+xi+1)/2); return s; 十六、1、程序填空题给定程序中 ,函数 fun 的功能是 :在任意给定的9个正整数中找出按升序排列时处于中间的数,将原数据序列中比该中间数小的数用该中间数替换,位置不变, 在主函数中输出处理后的数据序列,并将中间数作为函数值返回。例如,有9 个正整数: 1 5 7 23 87 5 8 21 45 按升序排列时的中间数为:8 处理后主函数中输出的数列为:8 8 8 23 87 8 8 2
16、1 45 填空: (1)bk (2)N/2 (3) 改错: (1)int tN,i,num=0; (2)tnum+=bi; (3)for(i=0;i= ? 0? & *s= ? 9?) s+; return n; 十七、1、程序填空题给定程序中 ,函数 fun 的功能是 :统计整型变量m 中各数字出现的次数,并存放到数组a中,其中: a0存放出现的次数,a1存放出现的次数,a9存放出现的次数。例如,若m 为 14579233,则输出结果应为:0,1,1,2,1,1,0,1,0,1。填空: (1)ai (2)m%10 (3)m/10 名师资料总结 - - -精品资料欢迎下载 - - - - -
17、- - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 18 页 - - - - - - - - - 改错: (1)bi=ai0; (2)for(j=1;j aij) 编程: double sum=0,max,min; int i; max=min=a0; for(i=0;in;i+) sum=sum+ai; if(maxai) min=ai; sum=sum-max-min; return (sum/(n-2); 最后在黑色对话框中输入9.9 8.5 7.6 8.5 9.3 9.5 8.9 7.8 8.6 8.4 后按回车键 (每个小数之
18、间只有一个空格 ) 十八、1、程序填空题给定程序中 ,函数 fun 的功能是将形参给定的字符串、整数、浮点数写到文本文件中,再用字符方式从此文本文件中逐个读入并显示在终端屏幕上。填空: (1)FILE* (2)fp (3)ch 改错: (1)sj+=si; (2)sj= ?0?;(双引号改成引号) 编程: (注意:这道题是在/*请填写相应语句完成其功能*/下面的大括号中填入答案)for(j=0;jM;j+) bn=sji; n=i*M+j+1;十九1.程序填空题函数 fun 的功能是:计算f(x) =1+x+x/2 !+ +xn/n!的前 n 项。若 x=2.5,函数值为: 12.182340
19、. 填空: (1)1 (2) 1 (3)i 改错: (1)k=i;(2)c=k%10 ; (后面少了分号)编程: int i;double avg=0.0,sum=0.0,abs=0.0,fc; for(i=0;i10;i+) sum+=xi; avg=sum/10; for(i=0;i10;i+) abs+=(xi-avg)*(xi-avg); fc=sqrt(abc/10); ruturn fc; 二十1、 程序填空题给定程序中,函数fun 的功能是:对形参ss 所指字符串数组中的M 个字符串按长度由短到长进行排序。Ss 所指字符串数组中共有M 个字符串,且串长=0;j-) bi+=sj;
20、 strcpy(s,b); 最后在黑色对话框中输入abcdefg 后按回车键二十一1.程序填空题给定程序通过定义并赋初值的方式,利用结构体变量存储了一名学生的学号姓名和 3 门课的成绩。函数fun 的功能是将该学生的各科成绩都乘以一个系数a。填空: (1)STU (2)scorei (3)&std 改错: (1)if(k0) (2)else if (k=0) 编程: int I,j; for(i=0;i (3)fwrite 改错: (1)p=s; (顺序反了 ) (2)while(*p+); (缺少分号 ) 编程: int I,j; for(j=0;jM;j+) bj=0; for(i=0;i
21、=0&i=10&ai=20&ai=30&ai=40&ai=50&ai=60&ai=70&ai=90&ai=99) b9+=1; else b10+=1; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 18 页 - - - - - - - - - 二十三1.程序填空题甲乙丙丁四人同时开始放鞭炮,甲每隔t1 秒放一次,乙每隔t2 秒放一次,丙每隔t3 秒放一次,丁每隔t4 秒放一次,每人各放n 次。函数fun 的功能是根据形参提供的值,求出总共听到多少次鞭炮声作为函数值返回
22、。注意, 当几个鞭炮同时炸响,只算一次响声,第一次响声是在第 0 秒。例如,若 t1=7,t2=5 ,t3=6, t4=4,n=10,则总共可听到28 次鞭炮声。填空: (1) i (2) t+ (3)count 改错: (1)int fun (int a, int b, int c) (2) else return 1;( 注意:这题不仅缺少分号,中间的单词也错了,应该是return) 编程: int i,j=0; double s=0.0; for (i=3;i=n;i+) for (j=2;j=i;j+)if(i%j=0) break; if(j=i) s=s+sqrt(i); retu
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年二级C语言上机模拟题及答案 2022 二级 语言 上机 模拟 答案
限制150内