文档详情

全国计算机等级考试_二级C语言上机考试题库及答案.doc

发布:2018-04-03约8.68万字共71页下载文档
文本预览下载声明
填空 给定程序的功能是:从键盘输入若干行文本(每行不超过80个字符),写到文件myfile4.txt中,用-1作为字符串输入结束的标记。然后将文件的内容读出显示在屏幕上。文件的读写分别有自定义函数ReadText和WriteText实现。 请在程序的下划线处填入正确的内容并把下划线删除,是程序得出正确的结果。 注意:源程序存放在考生文件夹下的BLANK1.c中 不得增行或删行,也不得更改程序的结构! 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 str[81]; printf(\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 str[81]; printf(\nRead file and output to screen :\n); fgets(str,81,fr); while( !feof(fr) ) { /**********found**********/ printf(%s,___3___); fgets(str,81,fr); } } 修改 给定程序MODI1.c中函数fun的功能是:从低位开始取出长整形变量s中的奇数位上的数,依次构成一个新数放在t中,高位仍放在高位,低位仍放在低位。 例如:当s中的数为:7654321时,t中的数为:7531 请改正程序中的错误,使他能得出正确的结果。 注意:不要改动main函数,不能增行或删行,也不得更改程序的结构! #include stdio.h /************found************/ void fun (long s, long t) { long sl=10; *t = s % 10; while ( s 0) { s = s/100; *t = s%10 * sl + *t; /************found************/ sl = sl*100; } } 程序 函数fun的功能是:将两个两位数的正整数a,b合并成一个整数放在c中。合并的方式是:将a数的十位和个位数依次放在c数的千位和十位上,b数的十位和个位数依次放在c数的百位和个位上。 例如:a=45,b=12时,调用该函数后,c=1524. 注意:部分源程序存在文件PROG1.C中。数据文件IN.DAT中的数据不得修改。 请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。 2、B: *fw str str M: long *t sl = sl*10; P: *c=(b/10)*1000+(a%10)*100+(b%10)*10+(a/10); 填空 给定程序中,函数fun的功能是:将自然数1~10以及它们的平方根写到名为myfile3txt的文本文档中,然后再顺序读出显示在屏幕上。 请在程序的下划线处填入正确的内容并把下划线删除,是程序得出正确的结果。 注意:源程序存放在考生文件夹下的BLANK1.c中 不得增行或删行,也不得更改程序的结构! int fun(char *fname ) { FILE *fp; int i,n; float x; if((fp=fopen(fname, w))==NULL) return 0; for(i=1;i=10;i++) /**********found**********/ fprintf(___1___,%d %f\n,
显示全部
相似文档