试卷代号:1253 座位号☐■ 中央广播电视大学2008一2009学年度第一学期“开放本科”期末考试 C语言程序设计A试题 2009年1月 题 号 二 三 四 五 总分 分 数 得分 评卷人 一、单选题(每小题2分,共20分) 1.由C语言目标文件连接而成的可执行文件的缺省扩展名为()。 A.cpp B.exe C.obj D.c 2.设有两条语句为“inta=l2;a十=a*a;”,则执行结束后,a的值为()。 A.12 B.144 C.156 D.288 3.带有随机函数调用的表达式rand()%20的值在( )区间内。 A.119 B.1~20 C.0~19 D.020 4.for循环语句“for(i=0;i<n;i十=2)S:”中循环体S语句被执行的次数为( )。 A.(n+1)/2 B.n/2+1 C.n/2-1 D.n-1 5.在下列的字符数组定义中,存在语法错误的是()。 A.char a[20]="abcdefg"; B.char a[]="x+y=55."; C.char a[15]={1','2'}; D.char a[10]='5'; 6.若有一个函数原型为“double*function()”,则它的返回值类型为( A.实数型 B.实数指针型 C.函数指针型 D.数组型 1381
试卷代号 :1253 座位号[工 〕 中央广播电视大学2008-2009学年度第一学期“开放本科”期末考试 C语言程序设计 A 试题 2009年 1月 题 号 四 五 总 分 分 数 得 分 评卷 人 一、单选题(每小题 2分.共 20分) 1.由 C语言目标文件连接而成的可执行文件的缺省扩展名为( )。 A. cpp B. exe C. obi D. c 2.设有两条语句为“int a=12; a+=a * a;",则执行结束后 ,a的值 为( )。 A. 12 B. 144 C. 156 D. 288 3.带有随机 函数调用的表达式 randU %20的值在( )区间 内。 A.1^-19 B. 1^-20 C. 0- 19 D. 0^-20 4. for循环语句“for(i=0; iGn; i+=2) S;”中循环体 S语句被执行的次数为( A. (n十 1)/2 B. n/2+1 C. n/2一 1 D. n-1 5.在下列的字符数组定义中,存在语法错误的是( )。 A. char a[20]="abcdefg"; B. char a[]="x+y=55.“; C. char a[15]={’1’,’2’}; D. char a[10]=’5’; 6.若有一个函数原型为“double * function()",则它的返 回值类型为( )。 A.实数型 B.实数指针型 C.函数指针tl 1).数织刑 1381
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] ID.int(*)[20] 10.表示文件结束符的符号常量为( ). A.eof B.Eof C.EOF D.feof 得分 评卷人 二、填空题(每小题2分,共26分) 1.一个函数定义由 和函数体两部分组成。 2.执行“printf("%c”,'F’-2);”语句后得到的输出结果为 3.int类型的长度为 4.表达式(float)25/4的值为 5.若x=5,y=10,则x<=y的逻辑值为 6.作为语句标号使用的case和default只能用于 语句的定义体中。 7.在程序中执行到 语句时,将结束所在函数的执行过程,返回到调用该函 数的位置。 8.假定二维数组的定义为“char a[M们[N门;”,则该数组所含元素的个数为 9.存储字符'a'需要占用存储器的 个字节空间。 10.用于存储一个长度为n的字符串的字符数组的长度至少为 11.假定p所指对象的值为25,p十1所指对象的值为46,则执行表达式(*p)十十后,p 所指对象的值为 12.假定p是一个指向整数对象的指针,则用 表示该整数对象。 13.假定一个结构类型的定义为“s1 ruct B{inta[5]:char b;};”,则该类型的理论长度 为 1382
7.在 C语言中,所有预处理命令都是以( )符号开头的。 A.* B.井 C. &. 1).@ 8.假定整数指针 p所指数据单元的值为 30,p+1所指数据单元的位为 40,则执行 *p十+后 ,p所指数据单元的值为( )。 A. 40 13. 30 C. 70 1). 10 9.若要使 p指向二维整型数组 a[10][20],则 p的类型为( )。 A. int C. int *[20] 表示文件结束符的符号常量为( .eof in t 关 关 .irnt(二)[201 Eof EOF D.feof A C 得 分 评卷人 二、填空题(每小题 2分,共 26分) 1一 个函数定义由_ 和函数体两部分组成。 2.执行“printf(0ooc",'F'-2);”语句后得到的输出结果为 3.int类型的长度为 4.表达式(float)25/4的值为 5.若 x=5,y=10,则 x<=y的逻辑值为 6.作为语句标号使用的 case和 (iefault只能用于 语句的定义体中。 7.在程序中执行到_ 语句时,将结束所在函数的执行过程,返回到调用该函 数的位置。 8.假定二维数组的定义为“。d1.i.a._l aFLM1va]J}Llnyr口;”,则该数组所含元素的个数为 9.存储字符 ’a’需要 占用存储器的 个字节空间。 10.用于存储一个长度为 n的字符串的字符数组 的长度至少为 11.假定 p所指对象的值为 25,p+1所指对象的值为 46,则执行表达式(*})十十后,P 所指对象的值 为 12.假定P是一个指向整数对象的指针,则用_ 表示该整数对象。 13.假定一个结构类型的定义为“struct 13{ int al 5] ; char* b; } ;",则该类型的理论长度 为 13 8 2
得分 评卷人 三、写出下列每个程序运行后的输出结果(每小题6分,共30分) 1.includeM/2)break; if(M%i==0)printf("%d",i); i++; printf("\n"); 3.include<stdio.h inla[6]={4,5,6,15,20,12}: void main() { int i.s1.s2: 1383
得 分 评卷人 三、写出下列每个程序运行后的输出结果(每小题 6分,共 30分) 1. #include void main() int i,sl= 0,s2= 0 for(i=0;i const int M = 20 void main() int i=2; while(1){ if(i> M/2) break; if(M%i==0) printf("%d“,i); 1十+ ; printfC\Ii"); 3.#include int a仁6]={4,5,6,15,20,12}; void main() Itll I。S1.,夕: 1383
s1=s2=0: for(i=0;i10)printf("%d",p); p十十; } printf("\n"); 5.include #include struct Worker char name[15];int age;float pay;); void main(){ struct Worker x; char*t="liouting”; int d=38;float f=400; strcpy(x.name,t); x.age=d;x.pay=f; x.age十+;x.pay*=2; printf("%s %d %6.2f\n",x.name,x.age,x.pay); 1384
sl二s2=0; for(i=0;i void main(){ inta[3][3]={{3,5,7},(9,11,13},{6,8,20)}; int i,,p= &a[0][0]; for(i=0;i10) printf("ood”,*P); P++; } printf C\n "); 5.#include #include struct Worker{char name[15]; void main(){ str uct Worker x; char二t=fhouting"; int d=38;float f=400; strcpy(x. name,t); x. age=d; x. pay= f; x. age++;x. pay* =2; printf ("% s环d%6. 2f\n',x. } 1384 int age;float pay; nam e ,x. age, x. pay);
得分 评卷人 四、写出下列每个函数的功能(每小题6分,共12分】 1.include int SA(int a,int b){ if(a>b)return 1; else if(a==b)return 0; else return-1; } 函数功能: 2.void Output(struct IntNode *f)/f为单链表的表头指针 { if(!f)return; while(f){ printf("%d",f->data): {=f->next; } printf("\n"); 假定struct IntNode的类型定义为: struct IntNode int data;struct IntNode next;); 函数功能: 得 分 评卷人 五、按题目要求编写程序或函数(每小题6分,共12分) 1.编写一个程序,计算1十3十32+…+3”的值并输出,假定分别用i,P,s作为循环变量、 累乘变量和累加变量的标识符。 2.根据函数原型"int FF(inta[],intn)”,编写函数定义,计算并返回数组a[n]中所有元 素之和。 1385
得 分 评卷 人 四、写出下列每个函数的功能(每小题 6分,共 12分) 1.#include int SA(int a,int b) if(a> b) return 1 else if(a= = b) return 0 else return 一 1 函数功能 : 2. void Output(struct IntNode * f) //f为单链表的表头指针 { if(!f) return; while(f) print{(" 0 o d’‘,f一>data) f= f一 > next: print {("\n"); 假定struct IntNode的类型定义为: struct IntNode{int data;struct IntNode二 next 函数功能: 得 分 评 卷 人 五 、按题目要求编写程序或函数 (每小题 6分 ,共 12分 ) 1.编写一个程序 ,计算 1+3+3`+ 十3`。的值并输出,假定分别用 i,p,s作为循环 变量 、 累乘变量和累加变量的标识符 。 2.根据函数原型I'int M int a[] int n)",编写函数定义,计算并返回数组 a[n」中所有元 素之和。 1385
试卷代号:1253 中央广播电视大学2008一2009学年度第一学期“开放本科”期末考试 C语言程序设计A试题答案及评分标准 (供参考) 2009年1月 一、单选题(每小题2分,共20分) 1.B 2.C 3.C 4.A 5.D 6.B 7.B 8.A 9.D 10.C 二、填空题(每小题2分,共26分) 1.函数头 2.D 3.4 4.6.25 5.1 6.switch或开关或分情况 7.return或返回 8.M*N 9.1 10.n+1 11.26 12.*p 13.24 三、写出下列每个程序运行后的输出结果(每小题6分,共30分) 评分标准:根据答案正确程度酌情给分。 1.2520 2.24510 1386
试卷代号:1253 中央广播电视大学2008--2009学年度第一学期“开放本科”期末考试 C语言程序设计 A 试题答案及评分标准 (供参考) 2009年 1月 一、单选题(每小题 2分,共 20分) 1,B 6. H 2. C 3. C 4. A 5. D 7_ 13 8. A 9_ D 10. C 二、填空题(每小题 2分 ,共 26分 ) 1.函数头 2. D 3. 4 4. 6. 25 5. 1 6. switch或开关 或分情况 7. return或返回 8. M * N 9. 1 10. n+l 11. 26 12. * p 13_ 24 三、写出下列每个程序运行后的输出结果(每小题 6分,共 30分) 评分标准:根据答案正确程度酌情给分。 25 20 2, 2 4 5 10 1386
3.2042 4.111320 5.liouting 39 800.00 四、写出下列每个函数的功能(每小题6分,共12分) 评分标准:根据答案叙述的正确与完善程度酌情给分。 1.比较两个整数a和b的大小,若a>b则返回1,若a-=b则返回0,若a void main() int i; int p=1; /11分 int s=1; /12分 for(i=1;i<=10;i++){p=3;s+=p;} /15分 printf("%d\n",s); /16分 2.int FF(int a],int n) int i,sum=0; /11分 for(i=0;i<n;i++)sum+=a[i]; /14分 return sum; /16分 } 1387
3. 20 42 4. 11 13 20 5. liouting 39 800.00 四、写出下列每个 函数的功能(每小题 6分,共 12分 ) 评分标准 :根据答案叙述的正确与完善程度酌情给分 。 1.比较两个整数 a和b的大小,若 a> b则返回 1,若 a==b则返回。,若 a void main() p今 1 //1分 //2分 刀5分 //6分 十 L 十 七 十 L fi n n J. L - J.‘ - , 五 for(i=1;i<=10;i斗+){p*二3; s+=p;} printf(" 0 o d\n", s); 2. int FF(int a[],int n) int i,sum =0 for(i二0;i<n; 14一+)sum十=a[i]; return sum ; 刀1分 //4分 //6分 1387