大学计算机C语言期末考试复习试题及答案(20套)(1)

上传人:liy****000 文档编号:115509707 上传时间:2019-11-13 格式:PDF 页数:105 大小:419.73KB
返回 下载 相关 举报
大学计算机C语言期末考试复习试题及答案(20套)(1)_第1页
第1页 / 共105页
大学计算机C语言期末考试复习试题及答案(20套)(1)_第2页
第2页 / 共105页
大学计算机C语言期末考试复习试题及答案(20套)(1)_第3页
第3页 / 共105页
大学计算机C语言期末考试复习试题及答案(20套)(1)_第4页
第4页 / 共105页
大学计算机C语言期末考试复习试题及答案(20套)(1)_第5页
第5页 / 共105页
点击查看更多>>
资源描述

《大学计算机C语言期末考试复习试题及答案(20套)(1)》由会员分享,可在线阅读,更多相关《大学计算机C语言期末考试复习试题及答案(20套)(1)(105页珍藏版)》请在金锄头文库上搜索。

1、一、判断 共10题 (共计10分)第1题 (1.0分) 题号:1488 函数即 可以嵌套定义,又可以嵌套调用. 答案:N 第2题 (1.0分) 题号:1256 unsigned 和 void 在 C 中都是保留字. 答案:Y 第3题 (1.0分) 题号:1280 表达式 +i 表示对变量 i 自 加1. 答案:Y 第4题 (1.0分) 题号:1282 C 语言源程序的基本结构单位是 main 函 数. 答案:N 第5题 (1.0分) 题号:1276 字符常量的长度肯定为1. 答案:Y 第6题 (1.0分) 题号:1469 char a=a,b,c;char b=“abc“;数组a 和数组 b

2、占用的内存空间大 小不一样. 答案:Y 第7题 (1.0分) 题号:1249 若有 int i=10,j=2; 则 执行完 i*=j+8;后 i 的值为28. 答案:N 第8题 (1.0分) 题号:33 int i,*p=是正确的 C 说明。答案:Y 第9题 (1.0分) 题号:1250 While 循环语句的循环体至少执行一次. 答案:N 第10题 (1.0分) 题号:1510 有数组定义int a22=1,2,3;则a01 的值为0. 答案:Y 二、单项 选择 共30题 (共计30分)第1题 (1.0分) 题号:456 执行下面程序 后,输出结果是()。 main() a=45,b=27,

3、c=0; c=max(a,b); printf(“%dn“,c); int max(x,y) int x,y; int z; if(xy) z=x; else z=y; return(z); A:45 B:27 C:18 D:72 答案:A 第2题 (1.0分) 题号:437 下列数组说明中,正确的是 ()。 A:int array4; B:int array; C:int array5; D:int array3; 答案:A 第3题 (1.0分) 题号:2396 下面有关 for 循环的正确描述是 () A:for 循环只能用于循环次数已经确定的情况 B:for 循环是先执行循 环体语句,后

4、判断表达式 C:在 for 循环中,不能用 break 语句跳出循环 体 D:for 循环的循环体语句中,可以包含多条 语句,但必须用花括号括起来 答案:D 第4题 (1.0分) 题号:2817 以下程序的输出结果是(). main() int i,j,k,a=3,b=2; i=(-a=b+)?-a:+b; j=a+;k=b; printf(“i=%d,j=%d,k=%dn“,i,j,k); A:i=2,j=1,k=3 B:i=1,j=1,k=2 C:i=4,j=2,k=4 D:i=1,j=1,k=3 答案:D 第5题 (1.0分) 题号:2866 若有下列定义,则对 a 数组元素地址的正确引

5、用是(). int a5,*p=a; A:*(p+5) B:*p+2 C:*(a+2) D:* s=“Beijing“; B:char *s; s=“Beijing“; C:char s8; s=“Beijing“; D:char *s; s=“Beijing“; 答案:D 第7题 (1.0分) 题号:3191 若变量 a,i 已正确定义,且 i 已正确赋值,合 法的语句是() A:a=int(i); B:a=1 C:+i; D:a=a+=5; 答案:C 第8题 (1.0分) 题号:490 以下字符中不是转义字符的是 ()。 A:a B:b C:c D: 答案:C 第9题 (1.0分) 题号:

6、184 下列定义不正确的是 ()。 A:#define PI 3.141592 B:#define S345 C:int max(x,y); int x,y; D:static char c; 答案:C 第10题 (1.0分) 题号:3028 char h,*s=可将字符H通过指针存入变 量 h 中的语句是(). A:*s=H; B:*s=H; C:s=H; D:s=H 答案:B 第11题 (1.0分) 题号:690 设 char 型变量 x 中的值 为10100111,则表达式(2+x)(3)的值是()。 A:10101001 B:10101000 C:11111101 D:01010101

7、 答案:D 第12题 (1.0分) 题号:2381 设以下变量均为 int 类型,表达式的值不为 7的是() A:x=y=6,x+y,x+1 B:x=y=6,x+y,y+1 C:x=6,x+1,y=6,x+y D:y=6,y+1,x=y,x+1 答案:C 第13题 (1.0分) 题号:3124 若有说明 int a34;则对 a 数组元素的 正确引用是(). A:a24 B:a1,3 C:a1+10 D:a(2)(1) 答案:C 第14题 (1.0分) 题号:679 在 C 语言中,形参的缺省存储类是 ()。 A:auto B:register C:static D:extern 答案:A 第

8、15题 (1.0分) 题号:1343 C 语言源程序的基本单 位是(). A:过程 B:函数 C:子程序 D:标识符 答案:B 第16题 (1.0分) 题号:3023 C 语言程序中必须有的 函数是(). A:#include “stdio.h“ B:main C:printf D:scanf 答案:B 第17题 (1.0分) 题号:3228 有定义 :int a=8,b=5,c;, 执行语句 c=a/b+0.4;后,c 的值为 () A:1.4 B:1 C:2.0 D:2 答案:B 第18题 (1.0分) 题号:640 以下对二维数组 a 的正确说明是()。 A:int a3 B:float

9、 a(3,4) C:double a14 D:float a(3)(4) 答案:C 第19题 (1.0分) 题号:2884 以下标识符中,不能作为合法的 C 用户定义标识符的是(). A:answer B:to C:signed D:_if 答案:C 第20题 (1.0分) 题号:652 在 C 语言中,引用数组元素时,其数组下标的数据类型允许是()。 A:整型常量 B:整型表达式 C:整型常量或整型表达式 D:任何类型的表达式 答案:C 第21题 (1.0分) 题号:381 以下标识符中,不能作为合法的 C 用户定义标识符的是()。 A:answer B:to C:signed D:_if

10、答案:C 第22题 (1.0分) 题号:2898 已知 year 为整型变量,不能使表达式 (year%4=0 if(j1;i-) for(j=1;j0) /*SPACE*/ s = 【?】; /*SPACE*/ *t = s%10*sl【?】; /*SPACE*/ sl = sl 【?】10; main() long s, t; clrscr(); printf(“nPlease enter s:“); scanf(“%ld“, fun(s, printf(“The result is: %ldn“, t); 答案: =(答案1)= % =(答案2)= s/100 =(答案3)= + *t

11、=(答案4)= * 四、程序改错 共2题 (共计22分)第1题 (11.0分) 题号:383 /*- 【程序改错】 - - 题目:给定程序的功能是:读入一行英文 文本, 将其中每个单词的 后一个字母改成大写,然后 输出此 文本行 (这里的“单词”是指由空格隔开的 字符串)。例如,若输入 I am a student to take the examination.,则应输出“I aM A studenT tO takE thE examination.“。 - - 注意:不可以增加或删除程序行,也不可以更改程序的结构。 -*/ #include “conio.h“ #include “stdi

12、o.h“ #include “ctype.h“ #include “string.h“ up1st ( char *p ) /*FOUND*/ integer k = 0; for ( ; *p; p+ ) if ( k ) /*FOUND*/ if ( *p = ) k = 0; /*FOUND*/ *(p -1 ) = toupper( *( p - 1 ); else if ( *p != ) k = 1; *( p-1 ) = toupper( *(p-1) ); main( ) char chrstr81; printf( “nPlease enter a string: “ );

13、gets ( chrstr ); printf( “nnBefore changing:n %s“, chrstr ); up1st( chrstr ); printf( “nAfter changing:n %s“, chrstr ); 答案: =(答案1)= int k=0; =(答案2)= if ( *p = ) =(答案3)= *(p -1 ) = toupper( *( p - 1 ); 第2题 (11.0分) 题号:431 /*- 【程序改错】 - - 题目:编写函数 fun 求1000以内所有8的倍数之和。 - - 注意:不可以增加或删除程序行,也不可以更改程 序的结构。 -*/ #include“stdio.h“ #define N 1000 main() int sum; sum=fun(8); printf(“%d 以内所有%d 的倍数之和 为:%dn“,N,8,sum); getch(); int fun(int m) /*FOUND*/ int s=0;i; /*FOUND*/ for(i=1;iN;i+) /*FOUND*/ if(i/m=0) s+=i

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 资格认证/考试 > 其它考试类文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号