2010级C语言期终考试试题(适用于机电学
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2010-2011 学年第一学期《C语言程序设计》课内考试卷(A卷)授课班号年级专业学号姓名
题号一二三上机(1) 上机(2) 总分审核
题分30 18 12 20 20
得分
一、选择题(30分,每小题1分)
得分评阅人
1.以下所列的C语言常量中,错误的是( )
A. 0xFF B. 1.2e0.5 C.‘#’ D. '\72'
2. 下面四个选项中,合法用户标识符的选项是( )
A. float
B. _total
C. #123
D. M.D.John
3. 若有以下类型说明语句:
char x; float y; double z;
则表达式x+z-y的结果类型为( )
A. float
B. char
C. int
D. double
4. 设x、y、s均为int型变量,则执行语句:x=y=2;s=x++||++y;后,y的值为( )
A. 不定值
B. 2
C. 3
D. 1
5. 若有说明语句:char c=‘\67’;则变量c( )
A.包含1个字符 B.包含2个字符
C.包含3个字符 D.该说明语句不合法
6. 若说明x在区间(2,9]中,C语言的表达式为( )
A.2 7.下面程序段执行后 int i = 4; float x; x = i /5; x的值为( ) A. 0.8 B. 0 C. 0.0 D. 1.0 8.设有说明“int a=3,b=5,m;”,则执行表达式m=a<=3 &&a+b<8后,m的值为( )。 A.true B.false C.0 D.1 9. 完成下列循环语句后,n的值为多少( )。 for(int n=0;n<100;n++) { } A. 0 B.99 C.100 D.101 10. 设有定义int a[]={1,2,3,4,5,6,7,8,9,10}, *p=a,i; 则数组元素地址的正确表示为( )。 A、&(a+1) B、a++ C、&p D、&p[i] 11.下列数组定义正确的为( ) A.char a[]={3,5}; B.char a[]={‘3’,‘5’}; C.char a[]=‘3,5’; D.char a[2]=”3579”; 12.有如下定义 int *p=NULL; 表示( ) A. p指向的单元的值为0 B. p指向的单元的值为NULL C. p不指向任何有效单元 D. p指向的变量的值为0 13. 以下程序执行后sum的值是( ) A. 28 B. 24 C. 不确定 D. 45 main() { int i , sum=0; for(i=10;i>4;i-=2) sum+=i; printf("%d\n",sum); } 14.数组作为函数的形参时,把数组名作为实参,传递给函数的是( )。 A. 该数组的首地址 B. 该数组的元素个数 C. 该数组中的各元素值 D. 该数组的大小 15. 设有定义char a[80]= "0123456789";则sizeof(a)和strlen(a)的值分别为( )。 A. 10和10 B. 10和80 C. 80和10 D. 80和11 16. 下列程序的运行结果是( ) #include main() { int a=2,c=5; printf(“a=%d,b=%d\n”,a,c); } A. a=%2,b=%5 B. a=2,b=5 C. a=d, b=d D. a=%d,b=%d 17. 设有语句”float (*p)(int,int);”,该语句的作用是() A.函数原型说明 B.函数定义,p为函数名 C.变量定义, p为指向函数的指针变量 D.变量说明,p为指向float型的指针变量 18. 若需要建立如图所示的存储结构,且已有说明float*p,m=3.14;则正确的赋值语句是 ( ) p 3.14 A. p=m; B. p=&m; C. *p=m; D. *p=&m; 19. 设a是整型变量,初值为12,执行完表达式a+=a-=a*a后,a 的值是()。 A.144 B. -264 C. 264 D.-120 20. 若int a[10]={10,20,30,40,50},*p=&a[1], b=*p++; 则b值为()。 A. 20 B.30 C. 40 D. 10 21. 定义共用体 union{ char name[10]; int id; double score}; 则共用体stu存储空间字节数为() A.10 B. 4 C.8 D.22 22. 若int a=1, b=5, c=6; 则表达式a十b—c? 十十a: b--的值为()。 A.2 B.4 C.5 D.1 23.下列运算符中,()只可用于整型数。 A.十十B.% C.-- D./ 24. 若int a[10][10];则表示第i行第j列元素的值中,()不正确。 A.*(&a[i]+j) B.*(a[i]+j) C.*(*&a[i]+j) D.*(*(a+i)+j) 25.当执行下面的程序时,如果输入EFG,则输出结果是______ A) abc1234 B) 1234 C) EFG D) EFG1234 #include "stdio.h" #include "string.h" main() { char str[12]="abc"; gets(str); strcpy(str, "1234"); printf("%s\n",str); } 26. 设变量a、e、b、c皆为实型,若有代数式(3ae)/(bc),则不正确的C语言表达式是( ) A. a/b/c*e*3 B. 3*a*e/b/c C. 3*a*e/b*c D. a*e/c/b*3