【计算机类职业资格】全国计算机二级C语言上机试题56+2015年及答案解析.doc

上传人:eastlab115 文档编号:1329381 上传时间:2019-10-17 格式:DOC 页数:2 大小:36KB
下载 相关 举报
【计算机类职业资格】全国计算机二级C语言上机试题56+2015年及答案解析.doc_第1页
第1页 / 共2页
【计算机类职业资格】全国计算机二级C语言上机试题56+2015年及答案解析.doc_第2页
第2页 / 共2页
亲,该文档总共2页,全部预览完了,如果喜欢就下载吧!
资源描述

1、全国计算机二级 C语言上机试题 56+2015年及答案解析(总分:30.00,做题时间:90 分钟)1.给定程序的功能是:从键盘输入若干行文本(每行不超过 80个字符),写到文件 myfile4.txt中,用-1作为字符串输入结束的标志。然后将文件的内容读出显示在屏幕上。文件的读写分别由自定义函数ReadText和 WriteText实现。 请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。 注意:源程序存放在考生文件夹下的 BLANK1.C中。不得增行或删行,也不得更改程序的结构! 给定源程序: #include #include #include void WriteT

2、ext(FILE *); void ReadText(FILE *); main() FILE *fp; if(fp=fopen(“myfile4.txt“,“w“)=NULL) printf(“ open fail!/n“); exit(0); WriteText(fp); fclose(fp); if(fp=fopen(“myfile4.txt“,“r“)=NULL) printf(“ open fail!/n“); exit(0); ReadText(fp); fclose(fp); /*found*/ void WriteText(FILE _1_) char str81; print

3、f(“/nEnter string with -1 to end :/n“); gets(str); while(strcmp(str,“-1“)!=0) /*found*/ fputs(_2_,fw); fputs(“/n“,fw); gets(str); void ReadText(FILE *fr) char str81; printf(“/nRead file and output to screen :/n“); fgets(str,81,fr); while( !feof(fr) ) /*found*/ printf(“%s“,_3_); fgets(str,81,fr); (分数

4、10.00)_2.给定程序 MODI1.C中函数 fun的功能是:从低位开始取出长整型变量 s中奇数位上的数,依次构成一个新数放在 t中。高位仍在高位,低位仍在低位。 例如,当 s中的数为:7654321 时,t 中的数为:7531。 请改正程序中的错误,使它能得出正确的结果。 注意:不要改动 main函数,不得增行或删行,也不得更改程序的结构! 给定源程序: (分数:10.00)_3.函数 fun的功能是:将两个两位数的正整数 a、b 合并形成一个整数放在 c中。合并的方式是:将 a数的十位和个位数依次放在 c数的个位和百位上, b 数的十位和个位数依次放在 c数的千位和十位上。 例如,当

5、 a45,b=12 时,调用该函数后,c=1524。 注意: 部分源程序存在文件 PROG1.C中。数据文件IN.DAT中的数据不得修改。请勿改动主函数 main和其它函数中的任何内容,仅在函数 fun的花括号中填入你编写的若干语句。 给定源程序: #include void fun(int a, int b, long *c) main() int a,b; long c; printf(“Input a, b:“); scanf(“%d,%d“, fun(a, b, printf(“The result is: %ld/n“, c); NONO(); (分数:10.00)_全国计算机二级

6、C语言上机试题 56+2015年答案解析(总分:30.00,做题时间:90 分钟)1.给定程序的功能是:从键盘输入若干行文本(每行不超过 80个字符),写到文件 myfile4.txt中,用-1作为字符串输入结束的标志。然后将文件的内容读出显示在屏幕上。文件的读写分别由自定义函数ReadText和 WriteText实现。 请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。 注意:源程序存放在考生文件夹下的 BLANK1.C中。不得增行或删行,也不得更改程序的结构! 给定源程序: #include #include #include void WriteText(FILE

7、); void ReadText(FILE *); main() FILE *fp; if(fp=fopen(“myfile4.txt“,“w“)=NULL) printf(“ open fail!/n“); exit(0); WriteText(fp); fclose(fp); if(fp=fopen(“myfile4.txt“,“r“)=NULL) printf(“ open fail!/n“); exit(0); ReadText(fp); fclose(fp); /*found*/ void WriteText(FILE _1_) char str81; printf(“/nEnte

8、r string with -1 to end :/n“); gets(str); while(strcmp(str,“-1“)!=0) /*found*/ fputs(_2_,fw); fputs(“/n“,fw); gets(str); void ReadText(FILE *fr) char str81; printf(“/nRead file and output to screen :/n“); fgets(str,81,fr); while( !feof(fr) ) /*found*/ printf(“%s“,_3_); fgets(str,81,fr); (分数:10.00)_正

9、确答案:(第一处:要求填写文件流的自变量名,在这个函数中,已有的语句 fputs(“/n“,fw);分析可知:由于文件流变量 fw在函数体没有定义过,所以本处应填*fw 或 fw。 第二处:通过 while循环语句,把键盘上输入的内容,要写入到指定的文件中,键盘上输入的内容已存入字符串 str变量中,因此,本处应填写 str。 第三处:要把已存入文件中的内容,再从文件中读出且已存入字符串变量 str中,最后在屏幕显示出来,因此,此处应填写 str。)解析:2.给定程序 MODI1.C中函数 fun的功能是:从低位开始取出长整型变量 s中奇数位上的数,依次构成一个新数放在 t中。高位仍在高位,低

10、位仍在低位。 例如,当 s中的数为:7654321 时,t 中的数为:7531。 请改正程序中的错误,使它能得出正确的结果。 注意:不要改动 main函数,不得增行或删行,也不得更改程序的结构! 给定源程序: (分数:10.00)_正确答案:(第一处:在函数 fun中使用了*t,但在函数定义时没有使用*t,所以应改为:void fun(longs,long *t)。 第二处:每循环一次,sl 的值就乘以 10,所以应改为:sl=sl*10;。)解析:3.函数 fun的功能是:将两个两位数的正整数 a、b 合并形成一个整数放在 c中。合并的方式是:将 a数的十位和个位数依次放在 c数的个位和百位

11、上, b 数的十位和个位数依次放在 c数的千位和十位上。 例如,当 a45,b=12 时,调用该函数后,c=1524。 注意: 部分源程序存在文件 PROG1.C中。数据文件IN.DAT中的数据不得修改。请勿改动主函数 main和其它函数中的任何内容,仅在函数 fun的花括号中填入你编写的若干语句。 给定源程序: #include void fun(int a, int b, long *c) main() int a,b; long c; printf(“Input a, b:“); scanf(“%d,%d“, fun(a, b, printf(“The result is: %ld/n“, c); NONO(); (分数:10.00)_正确答案:( )解析:

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 考试资料 > 职业资格

copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1