上海计算机二级考试题c语言_第1页
上海计算机二级考试题c语言_第2页
上海计算机二级考试题c语言_第3页
上海计算机二级考试题c语言_第4页
上海计算机二级考试题c语言_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1单选设有定义int a10; 则合法数组元素的下标范围为_设有定义:int x=10,y=20,z=30; 则执行下列语句后的结果是_if ( xy ) z=x;x=y; y=z;printf(%d,%d,%d,x, y, z );执行下列语句序列后,不可能出现的运行结果是_int n; scanf( %d, &n); switch ( n ) case 1: case 2: putchar(X); case 3: case 4: putchar(Y); break; default: putchar(Z); 2填空 设有以下程序段,则执行完该程序段后,变量 i 的值是_int i;char

2、 s=Hello!, *p=s;for( i=0; *(p+i)!=0; i+ );阅读以下程序并写出运行结果_ #include main() int k,n=0;for ( k=1; k=1000; k+ )if ( k%3=0 & k%5=0 )printf( %d , k );n+;if ( n=3 ) break;3程序填空以下程序输入n和n个大于1的正整数,输出其中素数。如输入:5 19 93 11 37 15则输出:19 11 37例示说明:先输入n为5,再输入5个正整数,输出5个整数中的素数#include void main()int n, a, i, j, ct;scanf

3、( %d, &n );for ( i=0; _(1)_; i+ )_(2)_;scanf( %d, &a );for( j=2; ja; j+ )if ( _(3)_ )ct+;if ( ct=0 )printf( %d , a );printf( n );以下程序从文件“student.txt”读取学生的学号、姓名、平时成绩和考试成绩,再从键盘上输入一个成绩,将所有考试成绩达到或超过该成绩的学生数据写到新的文本文件“studentD.txt”。文件的最后一行为0表示学生数据结束。设文件student.txt的内容为101 Zhao9558103 Qian7581105 Sun9991107

4、Li 80670运行时键盘输入:80则生成新文件studentD.txt的内容为:103 Qian 75 81105 Sun 99 910例示说明:student.txt中考试成绩在80分以上的Qian与Sun信息写到studentD.txt源程序:#include void select( FILE *fp1, FILE *fp2, int x )int num, score1, score2;char name20;while ( 1 )num = 0;fscanf( fp1, %d%s%d%d, &num, name, &score1, &score2 );if ( num = 0 )_

5、(1)_;if ( _(2)_ )fprintf( fp2, %3d %-7s %3d %3dn, num, name, score1, score2 );fprintf( fp2, 0 );void main()FILE *fp1, *fp2;int x;fp1 = fopen( student.txt, r );fp2 = fopen( studentD.txt, _(3)_ );if ( fp1=NULL | fp2=NULL ) /* 文件打开失败 */printf( File Open Error!n );return;scanf( %d, &x );select( _(4)_ );

6、fclose( fp1 );fclose( fp2 );以下程序输入一个10进制整数,转换为16进制,计算16进制的各个位数,并从高位到低位依次输出。如输入:687则输出:2 A F例示说明:10进制687等于16进制2AF,输出时2、A、F中间包含空格源程序:#include void main()int a10, i, n;scanf( %d, &n );for ( i=0; n0; i+ )ai = _(1)_;n /= 16;for ( i-; _(2)_; _(3)_ )printf( %X , ai );三、程序调试题(本大题2小题,第1题4分,第2题6分,共10分)1. 程序调试

7、题1(D_3_1.C)调试要求:下列程序不能得到正确的结果,请按题中的功能要求,调试并修改该程序(在所修改语句后加/*/字样的注释),使其运行能得到正确的结果。将结果(包括D_3_1.c文件和D_3_1.exe文件)保存到目录C:KS中。功能说明:以下程序计算并输出等差数列的累加和,数列的首项为a0,公差为d,项数为n。如输入:-3 5 4则输出:sumx=18例示说明:-3为首项,5为公差,4为项数,前4项之和为18原程序(见C:KSD_3_1.C):#include int sumx( int a0, d, n )int i, k, s=0;k = a0;for ( i=0; in; i+

8、 )s += k;k += d;return s;void main()int a0, d, n;scanf( %d%d%d, &a0, &d, &n );printf( sumx=%dn, sumx(a0,d,n) );2. 程序调试题2(D_3_2.C)调试要求:下列程序有3处错误,请按题中的功能要求,在不改变程序结构(不增加、删除语句,不调整语句顺序)的情况下调试并修改该程序(在所修改语句后加/*/字样的注释),使其运行能得到正确的结果。将结果(包括D_3_2.c文件和D_3_2.exe文件)保存到目录C:KS中。功能说明:以下函数length返回字符串中字母A到字母Z所包含字符的长度。

9、主程序输入一行字符串,调用length函数输出该字符串中大写字母A到Z的子串长度。如输入:Z2009-AShanghaiZ则输出:Length=8例示说明:从A到Z的子串为Shanghai,其长度为8原程序(见C:KSD_3_2.C):#include int length( char *p )char *q, *r;for ( q=p; *q!=0 | *q!=A; q+ );for ( r=q; *r!=0 & *r!=Z; r+ );return r-q;void main()char str81;int n;gets( str0 );n = length( str );printf( Length=%dn, n );五、编程题(本大题2小题,每题18分,共36分)1编程题1(D_5_1.C)编程要求:请按题中的功能要求,编写程序并能得到正确的结果。将结果(包括D_5_1.C文件和D_5_1.exe文件)保存到目录C:KS中。功能说明:键盘输入5个整数,按由小到大的顺序排序后输出。如输入:10 0 20 5 3

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论