计算机语言b(c语言)2008春季学期b卷及参考答案

上传人:子 文档编号:43666282 上传时间:2018-06-07 格式:DOC 页数:15 大小:103KB
返回 下载 相关 举报
计算机语言b(c语言)2008春季学期b卷及参考答案_第1页
第1页 / 共15页
计算机语言b(c语言)2008春季学期b卷及参考答案_第2页
第2页 / 共15页
计算机语言b(c语言)2008春季学期b卷及参考答案_第3页
第3页 / 共15页
计算机语言b(c语言)2008春季学期b卷及参考答案_第4页
第4页 / 共15页
计算机语言b(c语言)2008春季学期b卷及参考答案_第5页
第5页 / 共15页
点击查看更多>>
资源描述

《计算机语言b(c语言)2008春季学期b卷及参考答案》由会员分享,可在线阅读,更多相关《计算机语言b(c语言)2008春季学期b卷及参考答案(15页珍藏版)》请在金锄头文库上搜索。

1、12008 春 计算机语言 B(C 语言) B 卷一、选择题(每小题 1 分,共 30 分)下列各题 A、B、C、D 四个选项中,只有一个选项是正确的,请将你认为正确的选项填 写在题干的括号内。1. 能将高级语言程序转换成目标程序的是【 】。 A调试程序 B连接程序 C编译程序 D编辑程序 2. 下列选项中,合法的 C 语言关键字是【 】。 AVAR Bcher Cinteger Dbreak 3下列属于 C 语言合法字符常数的是【 】。 A97 B“A“ Ct D“0“ 4设有 int x=11; 则表达式 (x+ * 1/3) 的值是【 】。 A3 B 4 C 11 D 12 5 设 x、

2、y、z 和 k 都是 int 型变量,则执行表达式:x=(y=4,z=16,k=32)后,x 的值为【 】。 A4 B 16 C 32 D 52 6以下程序的输出结果是【 】。 main() int x=10,y=3; printf(“%dn“,y=x/y); A0B1 C3D不确定 7有以下程序: main() int i; for(i=0;i8;y=i ) printf(“%d %d“,x-,y); A10 1 9 2B9 8 7 6C10 9 9 0D10 10 9 0 11变量 x 已说明为 float 类型,下面能实现对 x 进行保留小数点后两位,并对第三位 进行四舍五入运算的表达式

3、是【 】。 A(int)(x*100+0.5)/100.0 Bint(x*100+0.5)/100.0 C(int)(x/100+0.5)*100.0 Dint(x/100+0.5)*100.0 12. 以下能正确定义一维数组的选项是【 】。 Aint a5=0,1,2,3,4,5; Bchar a=0,1,2,3,4,5; Cchar a=A,B,C; Dint a5=“0123“; 13. 若有以下说明和定义: union dt int a ; char b ; double c ; data ;3以下叙述中错误的是【 】。 Adata 的每个成员起始地址都相同 B变量 data 所占的内

4、存字节数与成员 c 所占字节数相等 C程序段:data.a=5;printf(“%fn“,data.c);输出结果为 5.000000 Ddata 可以作为函数的实参 14. 有以下程序 main() char str10=“China“,“Beijing“,*p=str; printf(“%sn“,p+10); 程序运行后的输出结果是【 】。 A China B Bejing C ng D ing 15. 以下叙述不正确的是【 】。 A分号是 C 语句的必要组成部分 BC 程序的注释可以写在语句的后面 C函数是 C 程序的基本单位 D主函数的名字不一定用 main 表示 16. C 语言中允

5、许的基本数据类型包括【 】。 A整型、实型、逻辑型 B整型、实型、字符型 C整型、字符型、逻辑型 D整型、实型、逻辑型、字符型 17C 语言中的函数【 】。 A可以嵌套定义 B可以嵌套调用,但不能递归调用 C不可以嵌套调用 D递归调用和嵌套调用均可以 18若有说明:int a10;则对 a 数组元素引用正确的是【 】。 Aa10 Ba3.0 Ca(3) Da10-10 19若有以下定义和语句:int s45,(*ps)5;ps=s; 则对 s 数组元素的正确引用形式是【 】。 Aps+1 B*(ps+3) Cps02 D*(ps+1)+3 20有以下程序 #include “stdio.h“

6、main() char a=“abcdefg“,b10=“abcdefg“;printf(“%d %dn“,sizeof(a) ,sizeof(b); 执行后输出结果是【 】。 A7 7 B8 8 C8 10 D10 10 21两次运行下面的程序,如果从键盘上分别输入 6 和 4,则输出结果是【 】。4main() int x; scanf(“%d“, if(x+5) printf(“%d“,x) ; else printf(“%dn“,x-); A7 和 5B6 和 3C7 和 4D6 和 4 22下面程序的运行结果是【 】。 #include “stdio.h“ main() char a

7、=“abcdefg“,*p; p=a; printf(“%cn“,*(p+3); Ad B0 C元素 a3的地址 D字符 c 的地址 23以下程序段的输出结果是【 】。char s=“141141abct“;printf(“%dn“,strlen(s); A9 B10 C11 D14 24若要打开当前目录下名为 abc.txt 的文本文件进行读操作,下面符合此要求的函数 调用是【 】。 Afopen(“abc.txt“, “r“) Bfopen(“abc.txt“, “r+“) Cfopen(“abc.txt“, “rb“) Dfopen(“abc.txt“,“w“) 25有如下程序 main

8、() int x=123; do printf(“%d“,x-); while(!x); 该程序的执行结果是【 】。 A321 B 123 C 122 D 陷入死循环 26有以下程序段: int k=0 while(k=1) k+; 则 while 循环执行的次数是【 】。 A无限次B 有语法错,不能执行 C一次也不执行D 执行 1 次 27下面程序的输出结果是【 】。5A0 B 1 C 10 D 9 main() int a=1,2,3,4,5,6,7,8,9,0,*p;p=a;printf(“%dn“,*p+9); 28以下程序的输出结果是【 】。 # include main() int

9、 i; for ( i=1;ib?(ac?a:c):(b); A5B 4 C 6 D 不确定二、阅读程序,写出运行结果(每小题 4 分,共 28 分)1有以下程序: main() int a=0,b=0,c=0;c=(a-=a-3),(a=b,b+3);printf(“%d,%dn“,a,c); 执行程序后输出的结果是:得分得分62有以下程序: main() int i=0,j=1,k=2,m=0;if(m=j+ 执行程序后输出的结果是:3有以下程序: main() int a,b;for(a=1,b=1; a=10) break;if(b%3=1) b+=3;continue;printf(

10、“%dn“,a); 执行程序后输出的结果是:4有以下程序: f(int *b , int m, int n) int i,s=0;for(i=m;i=1;n-)8s=s+1.0/fun(n);printf(“%6.3fn“,s); 执行程序后输出的结果是:三、填空题 (每空 2 分,共 30 分)1. 下面程序把从终端读入的 10 个字符以文本方式写到当前目录(文件夹)下,文件名 为“my.txt”的文件中,请填空。 #include main( ) int i;char ch;FILE *fp;if (fp= fopen( , “w“) = NULL) exit(0);for (i=0;i

11、void swap(int *,int *); main() int i=10,j=20;swap( printf(“i=%d,j=%dn“,i,j); void swap( ) int t;t= ;*x=*y;*y=t;得分得分9 3. 下面的程序是把一组数按照从小到大的次序排序,请填空。 main ( ) int a10; int i,j,t,p ;printf(“input 10 number: n“);for( i=0;i #include #define PI 3.1415926 main() float s=0,x1,x2,dx,fx; int k,n; n=500;x1=0;x2

12、=PI; dx=(x2-x1)/n; for(k=0;k main() char str1100= “I am a teacher“,str2=“student“,*p1,*p2; p1=str1;p2=str2; p1=p1+ ; while(*p2!= ) *p1=*p2;11p1+; p2+; printf(“%sn“,str1); 四、编程题(每小题 6 分,共 12 分)1.计算二维数组 a34=1,2,3,4,9,10,11,12,5,6,7,8中每一行元素的和,将计算结 果放在一维数组 sum3中。2. 通过函数 fun(n)的调用来实现求 1!+2!+.+n!的和,主函数已经给

13、出,请完 成函数 fun 的功能(如果参数 n main( ) int n; double sum; double fun(); printf(“enter an integer n:n“); scanf(“%d“, sum=fun(n); printf(“output the sum :%lfn“,sum);得分得分12getch(); double fun(int n) 1314参考答案和评分标准一、选择题(每小题 1 分,共 30 分) 1C 2D 3C 4A 5C 6C 7A 8A 9D 10D 11A 12B 13C 14B 15D 16B 17D 18D 19C 20C 21A 22A 23A 24A 25B 26A 27C 28C 29B 30C 二、阅读程序,写出运行结果(每小题 4 分,共 28 分) (说明:格式 1 分,其他 3 分)10,3 21,2,3,1 34418 515 65 71.667 三、填空题(每空 2 分,共 30 分) 1. “m

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

当前位置:首页 > 生活休闲 > 科普知识

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