《《C语言程序设计》试卷》由会员分享,可在线阅读,更多相关《《C语言程序设计》试卷(4页珍藏版)》请在人人文库网上搜索。
1、*班级:*学号:*姓名:*考试方式闭卷制卷分数题 号一 二三四五总分得 分登分人核分人得分阅卷人 一、选择题( 每小题2分,共40分)1、不能作为C语言标识符的是( )、__charB、#MC、abcD、A_B_C2、下面哪个表达式的值为4 ( )A. 11/3 B. 11.0/3 C. (float)11/3 D. (int)(11.0/3+0.5)3、判断char型 变量c1是否为大写字母的正确表达式( )A、 A=A)&(c1=A)&(c1=c1)4、源程序要正确地运行,必须要有什么函数?( )A. printf函数 B. 自定义的函数 C. main函数 D. 不需要函数5、在语言中逻。
2、辑“真”等价于以下( )、整数、大于的数、小于的数、不等于的数6、若a为整型变量,且有以下语句 ( )a=-017L;printf(%dn,a);则下面哪个说法是正确的?A. 赋值不合法 B. 输出值为-17 C. 输出为不确定值 D. 输出值为-15 7、以下程序的运行结果是( )main()int x=1,y=2,z=3;z+=xy?+x:+y;printf(“%d”,z);A、1B、2C、3D、68、如果对以下程序进行编译和运行,其结果为( )main()int x,y; x=555;y=x+2;y=x+2;printf(“x=%d”,x,y);A、程序不能通过编译,出现错误提示信息B、。
3、程序能通过编译,不出现错误提示信息C、程序能通过编译,但不能运行D、显示x=5559、在C语言的if语句中,用作判断的表达式为 ( )A. 关系表达式 B. 逻辑表达式 C. 算术表达式 D. 任意表达式10、请问:下面这个程序段的输出是什么?( )int a,b,c;a=7;b=8;c=9;if(ab)a=b,b=c;c=a;printf(a=%d b=%d c=%dn,a,b,c);A. a=7 b=8 c=7 B. a=7 b=9 c=7 C. a=8 b=9 c=7 D. a=8 b=9 c=8 11、若有以下说明和语句,且0abc() static int x=0; +x; prin。
4、tf(“%d”,x);main() abc(); abc();abc();A、000B、111C、1,2,3D、12313、下列程序的输出结果为()main() int a5=2,4,5,6,10,*p,*k;p=a; k=&p; printf(“%d”,*(P+); printf(“%dn”,*k); A、4 4B、2 2C、2 4D、4 614、. 该源程序执行后,屏幕上显示什么?( )void main()int a;float b;a=4;b=9.5;printf(a=%d,b=%4.2fn,a,b);*班级:*学号:*姓名:*A. a=%d,b=%fn B. a=%d,b=%f C.。
5、 a=4,b=9.50 D. a=4,b=9.15、以下程序的输出结果为( )includemain() int a=010,b=10; printf(“%d,%dn”,a+,-b); A、10,10B、8,10C、10,9D、8,916、若输入12和8,以下程序的输出结果为()main() int a,b,num1,num2,temp;scanf(“%d,%d”,&num1,&num2);if(num1num2)temp=num1; num1=num2;num2=temp;a=num1; b=num2;while(b!=0)temp=a%b; a=b;b=temp;printf(“%d,%d。
6、”,a,num1*num2/a);A、4,24B、3,24C、5,25、4,2517、若有以下说明和语句,则输出结果是 ( )char str=c:abc.dat;printf(%s,str);A. 字符串中有非法字符 B. c:abc.dat C. c:abc.dat D. c:abc.dat18、若k为整型,以下while循环执行( )次.k=2;while(k=0)printf(%d,k),k-;printf(n);A. 无限次 B. 0次 C. 1次 D. 2次19、若要定义b为5*10的二维数组,正确的定义语句为( )A、float b(5,10)B、float b5,10C、flo。
7、at 510D、float b51020在下列语句中,不正确的是( )A、 c=2*max(a,b) B、m=max(a,max(b,c)C、printf(“%d”,max(a,b) D、int max(int x,int max(int y,int z)得分阅卷人 二、填空题(每题3分,共30分)1、 若已知a=10,b=15,c=1。则表达式a*b&c的运算结果为_______。2、 有以下函数调用语句,请问函数fun1有几个参数______________。fun1(x,(y,z),10,fun2(x-1,y-1)3、C语言的基本数据类型分为___________、_________、_。
8、___________。4、程序的三种基本结构为___________、___________、___________。5、有以下语句:int a,b;scanf(“a=%d ,b=%d”,&a,&b);为使变量a,b的值分别为12 ,34则输入数据的形式为______________________________________。6、若程序片段为i=0;if(imain()char a10=”,*p; p=&a4; puts(p); 以上程序的输出结果为__________。8、下面程序的运行结果是____________。main() struct cmplxint x;int y;cn。
9、um2=1,3,2,7;printf(“%dn”,cnum0.y/cnum0.x*cnum1.x);9、C语言的数组名是一个_________常量,不能对其进行自增(减)运算。10、#includemain()char a10=”,*p; p=&a4; puts(p); 以上程序的输出结果为____________。得分阅卷人 三、程序填空题(每小题6分,共12分)1、这个程序输入了20个数存放在一个数组中,并且输出其中最大者与最小者、,20个数的和及它们的平均值。请填空。void main()*班级:*学号:*姓名:*char array___;int max,min,average,sum。
10、=0;int i;for(i=0;iarrayi)___sum=___;average = ___;printf(20个数中最大值是%d,max);printf(最小值是%d,min);printf(和是%d,sum);printf(平均值是%d.n,average);2、 利用指针法将两个数按从大到小的顺序输出。main()int a,b,_____________;printf(“input a,b:”);scanf(“%d%d”,&a,&b);________p2=&b;if(amain() int i,j;for(i=5;i=1;i-)for(j=1;j=i;j+) putchar($。
11、);for(j=1;j=5-i;j+) putchar(&);putchar(n);2、 写出运行结果main()int a =0,1,2,3,4,5,6,7,8,9;int s,i,* p;s=0;p=&a0;for(i=0;i10;i+=2)s+=*(p+i);printf(“s=%d”,s);*班级:*学号:*姓名:*3、写出运行结果void main() int x=1,y=0,a=0,b=0;switch(x) case 1:switch(y)case 0:a+; break;case 1: b+; break;case 2: a+;b+; break;case 3: a+;b+;printf(“na=%d,b=%d”,a,b);得分阅卷人 五、编程题(每小题8分,共16分) 1. 线性查找(注:指的是从数组的第一个元素开始,依次将要查找的数和数组中元素比较,直到找到该数或找遍整个数组为止。)2、编写一程序,将字符数组S2中的全部字符复制到字符数组S1中,不用Strcpy函数。复制时0也要复制过去,0后面的字符不复制。