杭州师范大学C语言试题第3套

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

一、判断题第1题:C语言可以不用编译就能被计算机识别执行参考答案:错第2题:函数的形参都属于全局变量参考答案:错第3题:在标准C语言中,函数的参数可任意类型的数据包括结构体和共用体。参考答案:对第4题:在标准C中,没有逻辑型数据,故不能使用逻辑表达式。错第5题:在标准C中,“=”是判断两个数是否相等。参考答案:错第6题:在标准C语言中,指针函数参数传递是单向传递,且传递的是变量的地址参考答案:对第7题:EOF能够被识别为常量参考答案:对第8题:对于定义int*p赋初值;则初值是赋给P变量的。参考答案:对第9题:C语言中数据的存储结构是指数据的逻辑结构在内存中的表示对第10题:C语言中既有逻辑类型也有集合类型参考答案:错二、单选题选择正确的答案输入第1题:设x和y均为int型变量,则以下语句:x+=y;y=x-y;x-=y;的功能是参考答案:DA、把x和y按从大到小排列B、把x和y按从小到大排列C、无确定结果D、交换x和y中的值第2题:下面程序的输出结果是:#include<stdio.h>intfunc(inta,intb){intc;c=a+b;returnc;}main(){intx=6,y=7,z=8,r;r=func(x--+y--,z--);printf(%d\n,r);}参考答案:DA、18B、19C、20D、21第3题:C语言结构体类型变量在程序执行期间参考答案:AA、所有成员一直驻留在内存中B、只有一个成员驻留在内存在C、部分成员驻留在内存中D、没有成员驻留在内存中第4题:变量a是int型变量,定义指针变量p的语句中正确的是参考答案:DA、intp=a;B、int*p=*a;C、intp=&a;D、int*p=&a;第5题:下面提供的一组函数中,用于按“数据块”的方式进行输入和输出的是参考答案:AA、fread(),fwrite()B、fscanf(),fprintf()C、fgets(),fputs()D、fgetc(),fputc()第6题:以下斜述不正确的是参考答案:DA、一个C源程序可由一个或多个函数组成B、一个C源程序必须包含一个main函数C、C程序的基本组成单位是函数D、在C程序中,注释说明只能位于一条语句的后面第7题:Break语句的正确的用法是参考答案:BA、无论在任何情况下,都中断程序的执行,退出到系统下一层。B、在多重循环中,只能退出最靠近的那一层循环语句。C、跳出多重循环。D、只能修改控制变量。第8题:C语言规定:在一个源程序中,main函数的位置参考答案:CA、必须在最开始B、必须在系统调用的库函数的后面C、可以任意D、必须在最后第9题:以下不形成死循环的是()。参考答案:DA、for(;;x+=i);B、while(1)x++C、for(i=10;;i--)sum+=i;D、for(;(c=getchar())!='\n';)printf(%c,c);第10题:字符串指针变量中存入的是参考答案:AA、字符串的首地址B、字符串C、第一个字符D、字符串变量三、程序填空题第1题:以下程序的功能是:从键盘上输入若干个学生的成绩,统计并输出其中的最高成绩和最低成绩,当输入负数时结束输入,请填空。main(){floatx,amax,amin;scanf(%f,____);amax=x;amin=x;while(___){if(___)amax=x;if(___)amin=x;scanf(%f,&x);}printf(\namax=%f\namin=%f\n,amax,amin);}请在左边文本框当中输入正确答案参考答案:&x请在左边文本框当中输入正确答案参考答案:x>=0请在左边文本框当中输入正确答案参考答案:x>amax请在左边文本框当中输入正确答案参考答案:x<amin第2题:下列程序实现对输入的10个整数,找出其中的最小值并指出其是第几个,请在____处补上正确的代码。voidmain(){inta[10];intI,n,min;for(I=0;I<10;I++)scanf(%d,&a[I]);min=____;n=0;for(I=1;I<10;I++)if(____){____;n=___;}printf(min=%d,n=%d\n,min,n);}请在左边文本框当中输入正确答案参考答案:a[0]请在左边文本框当中输入正确答案参考答案:a[I]<min请在左边文本框当中输入正确答案参考答案:min=a[I]请在左边文本框当中输入正确答案参考答案:I第3题:下列程序利用函数求两个数的和,请在____处补上必要的代码:_____;main(){floata,b,c;scanf(%f,%f,&a,&b);c=add(a,b);printf(sumis%f\n,c);}floatadd(floatx,floaty){floatz;z=x+y;______;}请在左边文本框当中输入正确答案参考答案:floatadd(floatx,floaty)请在左边文本框当中输入正确答案参考答案:return(z)四、程序阅读题第1题:阅读下列程序,输入数据:2,4,写出程序运行的输出结果。#include<stdio.h>voidmain(){intI,s=1,t=1,a,n;scanf(%d,%d,&a,&n);for(I=1;I<n;I++){t=t*10+1;s=s+t;}s*=a;printf(SUM=%d\n,s);}A)、SUM=1234B)、sum=1234C)、2468D)、SUM=2468参考答案:D第2题:阅读程序,当输入:hello、luck、morning时,写出程序运行结果。#include<string.h>voidmain(){charstr[3][80],c[80];intI;for(I=0;I<3;I++)gets(str[I]);strcpy(c,str[0]);for(I=1;I<3;I++)if(strlen?<strlen(str[I]))strcpy(c,str[I]);printf(%s,c);printf(%3d\n,strlen?);}A)、hello5B)、luck4C)、morning6D)、morning7参考答案:D第3题:阅读下列程序,写出程序运行的输出结果。#include<stdio.h>voidmain(){intk=0;charc='A';switch(c++){case'A':k++;break;case'B':k--;case'C':k+=2;break;case'D':k=k%2;break;case'E':k=k*10;break;default:k=k/3;}printf(k=%d,c=%c\n,k,c);}A)、k=1,c=BB)、k=1,c=AC)、k=-1,c=BD)、k=2,c=B参考答案:A第4题:阅读下面程序,写出运算结果。#include<stdio.h>voidfun1(intn,inta[][3]){for(intI=0;I<n;I++)for(intj=0;j<n;j++)a[I][j]=a[I][j]/a[I][I];}voidmain(){inta[3][3]={{6,4,2},{8,6,4},{9,6,3}};fun1(3,a);for(intI=0;I<3;I++){for(intj=0;j<3;j++)printf(%3d,a[I][j]);printf(\n);}}}A)、142114321B)、142111321C)、642963D)、642963参考答案:A第5题:阅读程序,当输入为:1234567890时,写出程序的运行结果。#include<stdio.h>voidmain(){intI,a[10],*p=a;for(I=0;I<10;I++)scanf(“%d”,p++);for(--p;p>=a;p--)printf(“%3d”,*p);}A)、1234567890B)、9876543210C)、9,8,7,6,5,4,3,2,1,0D)、0987654321参考答案:D五、程序设计题第1题:从键盘输入一个数,判断是否能同时被7和11整除,或者只能被其中的一个整除,还是都不能整除。参考答案:#include<stdio.h>main(){intnum;printf(请输入一个整数:);scanf(%d,&num);if(num%7==0&&num%11==0)printf(输入的数能同时被7和11整除);if(num%7==0&&num%11!=0)printf(输入的数能被7整除但不能被11整除);if(num%7!=0&&num%11==0)printf(输入的数能被11整除但不能被7整除);if(num%7!=0&&num%11!=0)printf(输入的数不能同时被7和11整除);}第2题:输入一个八位二进制数(如11010110,以一个完整的数输入),转化为十进制输出。输入输出都应有提示说明。参考答案:#include<stdio.h>#include<math.h>main()float{inty,a,d,k;floatnum;printf(请输入一个八位二进制数(0和1组成):\n);scanf(%d,&num);d=0;k=0;a=1;while(num!=0){y=num%10;num=(int)num/10;d=d+y*a;a=a*2;}printf(你输入的二进制数转化十进制数是:%d,d);}第3题:编写函数,在10个元素的一维数组中,统计比相邻元素大的数组元素个数并将统计数返回主函数输出(不考虑a[0]和a[n-1])。参考答案:#include<stdio.h>intnum(floatx[],intn){intj,k=0;for(j=1;j<n-1;j++)if(x[j]>x[j-1]&&x[j]>x[j+1])k++;returnk;}voidmain(){floata[10];intn;for(n=0;n<10;n++)scanf(%d,&a[n]);printf(%d\n,num(a,10));}

1 / 7
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功