试卷代号:1253 座位号■■ 中央广播电视大学2012一2013学年度第二学期“开放本科”期末考试 C语言程序设计A试题 2013年7月 题 号 一 二 三 四 五 总 分 分 数 得分 评卷人 一、单选题(每小题2分,共20分) 1.由C语言目标文件连接而成的可执行文件的缺省扩展名为()。 A.cpp B.exe C.obj D.c 2.设有两条语句为“inta=3;a十=a*a;”,则执行结束后,a的值为( A.12 B.18 C.15 D.27 3.带有随机函数调用的表达式rand()%20的值在( )区间内。 A.1~19 B.1~20 C.0~19 D.020 4.在for循环语句“for(i=0;i<n;i++)S;”中,循环体S被执行的次数为( )。 A.n B.n+1 C.n-1 D.n-2 5.在下列的字符数组定义中,存在语法错误的是()。 A.char a[20]="abcdefg"; B.char a[]="x+y=55."; C.char a[15]={1’,2'}; D.char a[10]=5'; 1143
试卷代号 3座位号 中央广播电视大学 3学年度第二学期"开放本科"期末考试 程序 设计A 2013 年7 |题号|一|二|三|四|五|总分| |分数 I I I I I I |得分 l评卷人| 一、单选题(每小题 2分,共 0分) I I I 1.由 连接 执行 扩展名 为 ~~P Reu c. obj D. c 2. 有两条 为"int a=3 ;a+ =a 铃a 则 执行结 ,a )。 A. 12 B. 18 C. 15 D. 27 3. 带有 随 调用 式randO %20 )区间内。 A. 1~19 R 1~20 C. O~19 D. O~20 4. 在for 句"for Ci=O ;i<n;i+ + )5;" 体S )。 A. n B. n+l C. n-l D. n-2 5. 在下 存在 错误 )。 .,} ,:, e , , d , c , YD1i a , F1tL-- 2I""'Jt ACECaarr aa =., nkd aaVAVA BD'n'h 1143
6.若有一个函数原型为“double*function()”,则其返回值类型为()。 A.实数型 B.实数指针型 C.函数指针型 D.数组型 7.在C语言中,所有预处理命令都是以( )符号开头的。 A.* B.# C.& D.@ 8.假定整数指针p所指数据单元的值为30,P+1所指数据单元的值为40,则执行 *p十十后,P所指数据单元的值为()。 A.40 B.30 C.70 D.10 9.若要使p指向二维整型数组a[10[20],则p的类型为()。 A.int* B.int* C.int *[20] D.int(*)[20] 10.表示文件结束符的符号常量为()。 A.eof B.Eof C.EOF D.feof 分 得 评卷人 二、填空题(每小题2分,共26分】 11.用于输出表达式值的标准输出函数的函数名是 12.C语言中的每个程序文件在编译时可能出现有error类型的错误,它属于(致命性/警 告性) 的错误。 13.已知'A'~’Z'的ASCII码为65~90,当执行“intx='C’+3;”语句后x的值为 1144
B. 30 D. 10 6. 有一 原型为"double 替function( )",则其返回值类型为( )。 A. B. 指针 c.函数指针型 D.数组型 7. 在C 语 有预 令都 )符号开头的。 A. 铃B.# C. &. D. @ 8. 单 元 为30 十1 单 元 为40 十 + 单元 )。 A. 40 C. 70 9. 要使 维整 a [ [ 2 型为 )。 A. int B. int C. int [ 2 D. int( [ 2 10. 件结束 符号 )。 A. eof B. Eof C. EOF D. feof 得分|评卷人 二、填空题(每小题 1. 12. 序文件在 时可 告性)的错误。 13. 知'A'-'Z' 的ASCII 为65 - 90 行"int x='C'+3;" 后x 1144
14.表达式(int)14.6的值为 15.假定不允许使用逻辑非操作符,则关系表达式x+y>5的相反表达式为 16.假定x=5,则执行“a=(x?10:20);”语句后a的值为 l7.假定一维数组的定义为“char*a[M们;”,则该数组所占存储空间的字节数为 18.存储字符串"”a”需要至少占用存储空间中的 个字节。 19.strlen()函数用于计算一个字符串的 20.在C语言中,一个函数定义由函数头和 这两个部分组成。 21.假定p所指对象的值为25,p十1所指对象的值为46,则执行表达式*(p十+)后,P所 指对象的值为 22.假定p是一个变量,则该变量的地址表示为 23.把间接访问表达式p一>name改写成对应的直接访问表达式为 得 分 评卷人 三、写出下列每个程序运行后的输出结果(每小题6分,共30分) 24.include void main() { int x=5; switch(2 *x-1){ case 4:printf("%d",x);break; case 7:printf("%d",2 x);break; case 10:printf("%d",3 x);break; default:printf("%s","default"); 输出结果: 1145
14. 式(int )l4.6 15. 定 不 式x 十y>5 表 达 16. 定x=5 则执行"a=(x? 10:20);" 后a 17. 假定 一 维 定 义 为"char 势a[M];" 该 数 组 所 18. 要至 19. strlenO 算一个字 20. 在C 头 和 个部 组成 1. 定p 为25 ,p+1 对象 为46 执行表 祷(p++) ,p 指对象的值为 22. 假定 是一 变量 址表示为 23. 达式p一>name 成对应 达式 |得分|评卷人| I I I 三、写出下列每个程序运行后的输出结果(每小题 3 0 24. # include void mainO int x=5; switch(2 铃x- I) { 臼as臼e 4ι: £( 臼as臼e f ( break; case 1ω0: prIn旧tf("%d" break; default: print£<"%s" ef lt 输出结果: 1145
25.include void main(){ int f1=1,f2,i; printf("%d",f1); for(i=1;i void main(){ inta[8]={12,39,26,41,55,63,72,40}; int i,cl=0,c2-0; for(i=0;i include<string.h void main(){ char s[]="123456789"; int i,n=strlen(s); for(i=0;i<n/2;i++){ char c=s[i];s[i]=s[n-1-i门;s[n一1-i门=c; } printf("%s\n",s); } 输出结果: 1146
25. # include void mainO { int f1= 1 . £2 . i ; 严rint£( £or(j= 1;ρi void main() { int a[8] = {l 2 ,39 ,26 ,41, 55, 63, 72 ,40}; iot i, c1= O, c2=O; £or(j=O; i 中中 cl h> void main () { char s[]="123456789 int i, n=strlen(s) ; £or(j=O; i<n/2; i++) { char c= s[i] ; s[i] = sen 一1 i] sen 一1 一i]=c; print£("%s\n飞s) ; 输出结果 1146
28.include0)(y+=x;scanf("%d",&x);) return y; } 函数功能: 30.假定结点的结构类型用IntNode表示,它的数值域为data,链接指针域为next,请根 据下面函数定义写出相应的功能。 int FF(struct IntNode*f)//f为指向一个单链表的表头指针 int n=0; if(f==NULL)return 0; while (f)(n++;f=f->next;) return n; } 函数功能: 1147
28. # include int LB (int 赞a int n) { int 铃p ,s=l; for(p=a;pO) {y+=x; scanf( return y; 函数功能 30. 假定结点 构类 用IntNode 为data 针域 为next 据下面函数定义写出相应的功能。 int FF(struct IntNode If 链表 头指针 int n=O; if(f= =NULL)return 0; while (0 {n+ +; f=f一>next;} return n; 函数功能: 1147
得分 评卷人 五、按题目要求编写函数(每小题6分,共12分) 3l.根据函数原型“double Mean(double a[M们[N],intm,intn)”,编写函数定义,要求返 回二维数组a[m][n]中所有元素的平均值。假定在计算过程中采用变量s存放累加值,采用i 和j作为扫描数组的循环变量。 32.根据函数原型“int MM(inta[],intm)”,编写函数定义,计算并返回数组a[m]中所 有元素的最大值的平方值,假定用变量max保存最大值。 1148
得分|评卷人 五、按舰阳要求编写函数{每小题 6分,共 2分} 1. 山Ie Mean(double arM互NJ ,int m, int 要求 回工维数组 a [ ]中所有元索的平均值o假定在计算过程中采用变量s存放累加值,采用 j作为扫描数组的循环变量。 32. 根据 MM (int int m)" 编写 定义 组arm] 有元素的最大值的平方值,假难用变量 x保存最大值。 1148
试卷代号:1253 中央广播电视大学2012一2013学年度第二学期“开放本科”期末考试 C语言程序设计A试题答案及评分标准 (供参考) 2013年7月 一、单选题(每小题2分,共20分) 1.B 2.A 3.C 4.A 5.D 6.B 7.B 8.A 9.D 10.C 二、填空题(每小题2分,共26分】 11.printf 12.致命性 13.70 14.14 15.x+y<=5 16.10 17.4*M 18.2 19.长度 20.函数体 21.46 22.&p 23.(p).name 三、写出下列每个程序运行后的输出结果(每小题6分,共30分) 评分标准:根据答案正确程度酌情给分。 24.default 25.141340 1149
试卷代号 5 3 中央广播电视大学 13学年度第二学期"开放本科"期未考试 计A 及评 (供参考) 2013 年7 -、单选题(每小题 2分,共 0分} 1. B 2. A 3. C 6. B 7. B 8. A 4. A 9. D 5. D 10. C 二、填空题{每小题 2分,共 6分) 11. printf 12. 13. 70 14. 14 15. x+y<=5 16. 10 17. 祷M 18. 2 19. 长度 20. 数体 21. 46 22. &.p 23. (祷 name 三、写出下列每个程序运行后的输出结果{每小题6分,共 0分) 评分标准:根据答案正确程度酌情给分。 24. default 25. 1 4 13 40 1149
26.4,4 27.987654321 28.b=120 四、写出下列每个函数的功能(每小题6分,共12分) 评分标准:根据每题答案叙述的正确与完整程度酌情给分。 29.求出从键盘上输入的一批整数的总和,以小于等于0作为结束键盘输入的标志。 30.求出并返回由f所指向的单链表中所含结点的个数。 五、按题目要求编写函数(每小题6分,共12分) 评分标准:根据函数编写的正确与完整程度酌情给分。 31.double Mean(double a[M]N],int m,int n) int i,j; double s=0.0; /11分 for(i=0;i<m;i++) /12分 for(j=0;j<n;j++)s+=ali]]; /14分 return s/(m n); /16分 32.int MM(int a,int m) int i,max=a[O]; //1分 for(i=1;i<m;i++) /2分 if(a[i]max)max=a[i]; 114分 return maxmax; /16分 1150
26.4 ,4 27.987654321 28. b=120 四、写出下列每个函数的功能{每小题6分,共 2分) 评分标准:根据每题答案叙述的正确与完整程度酌情给分。 29. 从键盘 于等 结束键盘 30. 并返 含结 五、按题目要求缩写函数(每小题6分,共 2分) 评分标准:根据函数编写的正确与完整程度酌情给分。 31. double MeanCdouble a[M][N] ,int m,int n) mt 1 , ]; double 8=0.0; forCi=O; imax) max=a[iJ; return max *口 1150 III 112 114 116 III 112 114 116