当前位置:首页 > C语言程序设计A课程教学模拟卷1及答案资料
中央广播电视大学2008秋季
C语言程序设计A课程试卷(4)
题 号 得 分 一 二 三 四 五 总 分 2009年1月已考
一、单选题(每小题2分,共20分)
1. 由C语言目标文件连接而成的可执行文件的缺省扩展名为( )。 A. cpp B. exe C. obj D. c
2. 设有两条语句为“int a=12; a+=a*a;”,则执行结束后,a的值为( )。 A. 12 B. 144 C. 156 D. 288
3. 带有随机函数调用的表达式rand() 的值在( )区间内。 A. 1~19 B. 1~20 C. 0~19 D. 0~20
4. for循环语句“for(i=0; i 5. 在下列的字符数组定义中,存在语法错误的是( )。 A. char a[20]=\ C. char a[15]={'1','2'}; D. char a[10]='5'; 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分) 1.一个函数定义由________和函数体两部分组成。 2. 执行“printf(\”语句后得到的输出结果为________。 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.假定一个结构类型的定义为“struct B{int a[5]; char* b;};”,则该类型的理论长度为________。 三、写出下列每个程序运行后的输出结果(每小题6分,共30分) 1. #include int i, s1=0, s2=0; for(i=0;i<10;i++) if(i%2) s1+=i; else s2+=i; printf(\ } 2. #include int i=2; while(1) { if(i>M/2) break; if(M%i==0) printf(\ i++; } printf(\ } 3. #include int a[6]={4,5,6,15,20,12}; void main() { int i,s1,s2; s1=s2=0; for(i=0; i<6; i++) { switch(a[i]%2) { case 0: s2+=a[i];break; case 1: s1+=a[i];break; } } printf(\ } 4. #include int a[3][3]={{3,5,7},{9,11,13},{6,8,20}}; int i,*p=&a[0][0]; for(i=0;i<9;i++) { if(*p>10) printf(\ p++; } printf(\ } 5. #include struct Worker { char name[15]; int age; float pay;}; void main() { struct Worker x; char *t=\ int d=38; float f=400; strcpy(x.name,t); x.age=d; x.pay=f; x.age++; x.pay*=2; printf(\ } 四、写出下列每个函数的功能(每小题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(\ f=f->next; } printf(\ } 假定struct IntNode的类型定义为: struct IntNode { int data; struct IntNode* next;}; 函数功能: 五、按题目要求编写程序或函数(每小题6分,共12分) 6. 编写一个程序,计算1+3+32+...+310的值并输出,假定分别用i,p,s作为循环变量、累乘变量和累加变量的标识符。 6. 根据函数原型“int FF(int a[], int n)”,编写函数定义,计算并返回数组a[n]中所有元素之和。 中央广播电视大学2008秋季 C语言程序设计A课程试卷答案及评分标准(4) (供参考)
共分享92篇相关文档