《C语言程序设计》复习资料二(2009年1月试题).doc_第1页
《C语言程序设计》复习资料二(2009年1月试题).doc_第2页
《C语言程序设计》复习资料二(2009年1月试题).doc_第3页
《C语言程序设计》复习资料二(2009年1月试题).doc_第4页
《C语言程序设计》复习资料二(2009年1月试题).doc_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

广播电视大学C语言程序设计A期末考试试题2009年1月题 号一二三四五总 分分 数评卷人得分 一、单项选择题(每小题2分,共20分)1由C语言目标文件连接而成的可执行文件的缺省扩展名为( B )。 A cppA B exe C obj D c2设有两条语句为“int a=12; a+=a*a;”,则执行结束后,a的值为( C )。 A 12 B 144 C 156 D 2883带有随机函数调用的表达式rand()%20的值在( C )区间意内。 A 119 B 120 C 019 D 0204For循环语句“for(i-0;in;i+=2)S;”中循环体S语句被执行的次数为( B )。 A (n+1)/2 B n/2+1 C n/2-1 D n-15在下列的字符数组定义中,存在语法错误的是( D )。A char a20=”abcdefg”; B char a=”a+y=55.”; C char a15=1,2; D CHAR A10=5;6若有一个函数原型为“double * function( )”,则它的返回值类型为( B )。A 实数型 B 实数指针型 C 函数指针型 D 数组型7在C语言中,所有预处理命令都是以( B )符号开关的。 A * B # C & D 8假定整数指针p所指数据单元的值为30,p+1所指单元的值为40,则执行*p+后,p所指数据单元的值为( A )。 A 40 B 30 C 70 D 109若要使p指向二维整形数组a1020,则p的类型为( D )。 A int * B int * C int *20 D int(*)2010表示文件结束符的符号常量为( C )。 A eof B Eof C EOF D feof评卷人得分二、填空(每小题2分,共26分)1一个函数定义由_函数头_和函数体两部分组成。2执行“printf(“%c”,F-2);”语句后得到的输出结果为_D_。3int类型的长度为_4个字节_。4表达式(float)25/4的值是_6.25_。5若x=5,y=10,则x=y的逻辑值为_ 1 (或TRUE)_。6作为语句标号使用的case和default只能用于_switch_语句的定义体中。7在程序中执行到_return_语句时,将结束所在函数的执行过程,返回到调用该函数的位置。8假定二维数组的定义为“char aMN;”,则该数组所含元素的个数为_M*N_。9. 存储字符a需要战胜存储器的_1_个字节空间。10存储一个长度为n的字符串和字符数组的长度至少为_n+1_。11. 假定p所指对象的值为25,p+1所指对象的值为46,则执行表达式(*p)+后,p所指对象的值为_26_。12. 假定p是一个指向整数对象的指针,则用_*p_表示该整数对象。13. 假定一个结构类型的定义为“struct Bint a5;char *b;”,则该类型的理论长度为_24个字节_。三、写出下列每个程序运行后的输出结果(每小题6分,共30分)1#includevoid main()int i,s1=0,s2=0;for(i=0;i10;i+)if(i%2)s1+=i;else s2+=i;printf(%d %dn,s1,s2);输出结果为:25 20Press any key to continue2#includeconst int M=20;void main()int i=2;while(1)if(iM/2)break;if(M%i=0)printf(%d ,i);i+;printf(n);输出结果为:2 4 5 10Press any key to continue3#includeint a6=4,5,6,15,20,12;void main()int i,s1,s2;s1=s2=0;for(i=0;i6;i+)switch(ai%2)case 0:s2+=ai;break;case 1:s1+=ai;break;printf(%d %dn,s1,s2);输出结果为:20 42Press any key to continue4#includevoid main()int a33=3,5,7,9,11,13,6,8,20;int i,*p=&a00;for(i=0;i10)printf(%d ,*p);p+;printf(n);输出结果为:11 13 20Press any key to continue5#include#includestruct Workerchar name15;int age;float pay;void main()struct Worker x;char *t=liouting;int d=38;float f=400;strcpy(,t);x.age=d;x.pay=f;x.age+;x.pay*=2;printf(%s %d %6.2fn,,x.age,x.pay);输出结果为:liouting 39 800.00Press any key to continue评卷人得分四、写出下列每个函数的功能(每小题6分,共12分)1#includeint SA(int a,int b)if(ab)return 1;else if(a=b)return 0;else return -1;函数功能:比较a、b两数的大小,根据大于、等于、小于返回值1、0、-1。 2#includevoid Output(struct IntNode *f) /f为单链表的表头指针if(!f)return;while(1)printf(%d ,f-data);f=f-next;printf(n);假定struct IntNode的类型定义为:struct IntNodeint data;struct IntNode *next;函数功能:函数Output的功能为遍历整个链表IntNode,依次输出各个节点的数据(空表直接返回)。评卷人得分五、按题目要求编写程序或函数(每小题6分,共12分)1编写一个程序,计算1+3+32+310的值并输出,假定分别用I,p,s作为循环变量,累乘变量和累加变量的标识符。#includevoid main()int i,p=1,s=1;for(i=1;i=10;i+)p*=

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论