0607C语言程序设计A课程期末复习与考试要求文本.docx
- 文档编号:9038412
- 上传时间:2023-05-16
- 格式:DOCX
- 页数:17
- 大小:23.04KB
0607C语言程序设计A课程期末复习与考试要求文本.docx
《0607C语言程序设计A课程期末复习与考试要求文本.docx》由会员分享,可在线阅读,更多相关《0607C语言程序设计A课程期末复习与考试要求文本.docx(17页珍藏版)》请在冰点文库上搜索。
0607C语言程序设计A课程期末复习与考试要求文本
(2011.06.07)C语言程序设计A课程期末复习与考试要求(文本)
王宇:
怎样才能学好程序语言?
现在各种程序语言都很多,什么c语言啊,c++啊java,c#啊,各种语言都很多我们要从什么开始学习,怎么才能学好这些语言呢?
以及以后的那个就业需要的知识。
希望老师以及高手给予帮助!
?
?
徐孝凯:
要学好一门语言,它是学习计算机任何专业的基础.要使用计算机,就必须学会计算机能够理解的语言,以便执行相应的程序或命令.
黄乐:
徐老师,课件视频只有一可以正常播放,其它都没反应。
徐孝凯:
请咨询电大在线的网站!
吴耀:
C语言很难,我们得好好学习
徐孝凯:
回复:
C语言――对的,要学习和上机操作相结合.
谢祚洲:
我是新手,先来报到
徐孝凯:
通过学习,很快会变为老手!
殷自胜:
这门课考试是以什么形式进行?
机试?
笔试?
徐孝凯:
笔试!
往届试卷供参考
中央广播电视大学
C语言程序设计A课程试卷
(2)
题号
一
二
三
四
五
总分
得分
2010.1.13底考
一、单选题(每小题2分,共20分)
1.由C语言源程序文件编译而成的目标文件的默认扩展名为()。
A.cppB.cC.exeD.obj
2.设x和y均为逻辑值,则x||y为假的条件是x和y()。
A.均为真B.其中一个为真
C.均为假D.其中一个为假
3.枚举类型中的每个枚举常量的值都是一个()。
A.整数B.浮点数C.字符D.记录
4.循环语句“for(i=0;i<=n;i++)S;”中循环体S被执行的次数为()。
A.1B.n-1C.nD.n+1
5.假定有语句为“inta[4][5]={{1,3,5},{2,8}};”,则a[1][1]的值为()。
A.3B.5C.8D.10
6.在下面的选项中,不能作为函数的返回值类型的是()。
A.voidB.nodeC.intD.long
7.假定x的值为5,y的值为6,则表达式x++*--y的值为()。
A.25B.30C.36D.42
8.用calloc函数创建具有10个整型元素的动态存储空间的正确调用是()。
A.calloc(10,sizeof(char))B.calloc(10)
C.calloc(10,sizeof(int))D.calloc(20,sizeof(int))
9.假定有语句“intb[10],*pb;”,则不正确的赋值为()。
A.pb=bB.pb=b[5]C.pb=b+2D.pb=&b[0]
10.标准输入设备的文件流标识符是()。
A.stderrB.stdinC.stdoutD.stdio
二、填空题(每小题2分,共26分)
1.在一个C语言程序文件中,若要包含另外一个头文件或程序文件,则应使用的预处理命令为__________。
2.用于从键盘上为变量输入值的标准输入函数的函数名为________。
3.假定一个枚举类型的定义为“enumRA{ab,ac,ad,ae};”,则ad的值为________。
4.int类型的长度为________。
5.执行“intx=45,y=8;printf("%d",x/y);”语句序列后得到的输出结果为________。
6.把表达式x=x+y转换成复合赋值表达式为__________。
7.假定x的值为5,则执行“a=(x>=6?
3:
8);”语句后a的值为________。
8.假定一维字符指针数组的定义为“char*a[5];”,则该数组占用的存储空间的字节数为________。
9.假定二维数组的定义为“doublea[M][N];”,则数组元素的行下标取值范围在_________之间。
10.空字符串的长度为________。
11.在所有函数定义之外定义的变量,若没有被初始化则系统隐含对它所赋的初值为________。
12.若p指向x,则________与x的表示是等价的。
13.直接访问表达式(*fp).score所对应的间接访问表达式为____________。
三、写出下列每个程序运行后的输出结果(每小题6分,共30分)
1.#include
voidmain(){
inti,s=0;
for(i=1;i<6;i++)s+=i*i;
printf(“s=%d\n”,s);
}
2.#include
#defineN6
voidmain()
{
inti,a[N]={2,5,8,10,15,21};
for(i=0;i if(a[i]%5==0)printf("%d",a[i]); printf("\n"); } 3.#include #include voidmain(){ inti; unsignedintlen=0; char*a[5]={"student","worker","cadre","soldier","n123"}; for(i=0;i<5;i++) if(strlen(a[i])>len)len=strlen(a[i]); printf("len=%d\n",len); } 4.#include voidmain() { inta,b; for(a=2,b=3;a<15;){ printf("%d%d",a,b); a=a+b; b=a+b; } } 5.#include voidLE(int*a,int*b){ intx=*a; *a=*b;*b=x; } voidmain(){ intx=15,y=26; LE(&x,&y); printf("%d%d\n",x,y); } 四、写出下列每个函数的功能(每小题6分,共12分) 1.#include intSA(inta,intb){ if(a>b)return1; elseif(a==b)return0; elsereturn-1; } 函数功能: 2.voidOutput(structIntNode*f)//f为单链表的表头指针 { if(! f)return; while(f){ printf("%d",f->data); f=f->next; } printf("\n"); } 假定structIntNode的类型定义为: structIntNode{intdata;structIntNode*next;}; 函数功能: 五、按题目要求编写函数(每小题6分,共12分) 1.编写一个函数,函数原型为“intfun4(char*ptr);”,请采用while循环求出由字符指针ptr所指向的字符串中包含的小写英文字母的个数,并把这个值作为函数值返回。 2.编写一个主函数,计算并输出表达式1+22+32+...+102的值。 中央广播电视大学 C语言程序设计A课程试卷答案及评分标准 (2) (供参考) 一、单选题(每小题2分,共20分) 1.D2.C3.A4.D5.C 6.B7.A8.C9.B10.B 二、填空题(每小题2分,共26分) 1.#include2.scanf3.24.4 5.56.x+=y7.88.20 9.0~M-110.011.012.*p 13.fp->score 三、写出下列每个程序运行后的输出结果(每小题6分,共30分) 评分标准: 根据答案正确程度酌情给分。 1.s=55 2.51015 3.len=7 4.23581321 5.2615 四、写出下列每个函数的功能(每小题6分,共12分) 评分标准: 根据答案叙述的正确与完善程度酌情给分。 1.比较两个整数a和b的大小,若a>b则返回1,若a==b则返回0,若a 2.遍历输出由f所指向的单链表中每个结点的值。 五、按题目要求编写函数(每小题6分,共12分) 评分标准: 根据编写函数的正确与完整程度酌情给分。 1.intfun4(char*ptr) { intn=0;//1分 while(*ptr){//2分 if(*ptr>='a'&&*ptr<='z')n++;//4分 ptr++;//5分 } returnn;//6分 } 2.#include voidmain() { inti,s=0;//1分 for(i=1;i<=10;i++)s+=i*i;//4分 printf("s=%d\n",s);//6分 } 注: 若s的初值为1,则循环变量i的初值应修改为2。 课程学习资源: 文字主教材《C语言程序设计》 任爱华主编 中央广播电视大学出版社出版。 录象教材 20讲任爱华等主讲 中央广播电视大学音像出版社出版,2011年秋使用。 IP网络课件 16讲徐孝凯主讲 电大在线的该课程网站点播。 复习资料 《C语言程序设计期末复习指导》中央电大教育杂志社出版发行。 平时考核 《C语言程序设计形成性考核册》中央电大教育杂志社出版发行。 网上辅导 在电大在线《C语言程序设计》课程教学网页上发表。 命题原则: (1)在教学大纲和考核说明所规定的知识范围内命题。 (2)试题的取材要求覆盖面广、区分度高。 (3)试题兼顾各个能力层次,了解和理解约占40%,应用约占60%。 (4)试题的难易程度和题量适当,按难易程度分为四个层次: 容易占20%,较易占40%,较难占30%,难占10%。 题量安排以平时能够独立完成作业者,能在规定的考试时间内做完并有一定时间检查为原则。 试题题型: 选择: 根据题意,从四种可选择的答案中选择合适的一种答案。 填空: 根据题意,在画有横线或空白括号内填写合适内容。 写出程序运行结果: 根据所给的C语言程序,写出运行后的输出结果。 指出程序或函数功能: 根据所给的C语言程序或函数,指出运行程序或进行函数调用时所能实现的功能。 编写程序或函数: 根据所给出的题目要求,编写出相应的程序或函数模块。 考核形式: 本课程考核采用终结性考试与形成性考核相结合的方式。 形成性考核分为两种,一种视形成性考核册作业完成情况和所规定的上机实验完成情况而定,占总成绩的20%;另一种为省级电大统一命题和组织的期末上机考核,占总成绩的10%,要求完成一个带有多个程序文件的程序项目的编写(或修改)并上机运行通过,上机考核时限为60分钟。 形成性考核成绩由省级电大考核和确认。 终结性考试采用书面和闭卷方式,考试成绩占总成绩的70%,由中央电大统一命题和考试时间,答卷时限为90分钟。 总成绩满分为100分,合成成绩达到60及以上分数者可获得该课程规定的4学分,否则不获得该课程学分。 部分单选题练习: 1.在每个C语言程序中都必须包含有这样一个函数,该函数的函数名为()。 A.mainB.MAINC.nameD.function 2.每个C语言程序文件的编译错误分为()类。 A.1B.2C.3D.4 3.字符串"a+b=12\n"的长度为()。 A.6B.7C.8D.9 4.在switch语句的每个case块中,假定都是以break语句结束的,则此switch语句容易被改写为()语句。 A.forB.whileC.doD.if 5.在下面的do-while循环语句中,其循环体语句被执行的次数为()。 inti=0;doi++;while(i<10); A.8B.9C.10D.11 6.将两个字符串连接起来组成一个字符串时,选用的字符串函数为()。 A.strlen()B.strcpy()C.strcat()D.strcmp() 7.若用数组名作为函数调用的实参,传递给形参的是()。 A.数组的首地址B.数组中第一个元素的值 C.数组中全部元素的值D.数组元素的个数 8.假定a为一个整数类型的数组名,整数类型的长度为4,则元素a[4]的地址比a数组的首地址大()个字节。 A.4B.8C.16D.32 9.假定s被定义为指针类型char*的变量,初始指向的字符串为"Helloworld! ",若要使变量p指向s所指向的字符串,则p应定义为()。 A.char*p=s;B.char*p=&s; C.char*p;p=*s;D.char*p;p=&s; 10.从一个数据文件中读入以换行符结束的一行字符串的函数为()。 11.由C语言源程序文件编译而成的目标文件的默认扩展名为()。 A.cppB.cC.exeD.obj 12.设x和y均为逻辑值,则x||y为假的条件是x和y()。 A.均为真B.其中一个为真 C.均为假D.其中一个为假 13.枚举类型中的每个枚举常量的值都是一个()。 A.整数B.浮点数C.字符D.记录 14.循环语句“for(i=0;i<=n;i++)S;”中循环体S被执行的次数为()。 A.1B.n-1C.nD.n+1 15.假定有语句为“inta[4][5]={{1,3,5},{2,8}};”,则a[1][1]的值为()。 A.3B.5C.8D.10 16.在下面的选项中,不能作为函数的返回值类型的是()。 A.voidB.nodeC.intD.long 17.假定x的值为5,y的值为6,则表达式x++*--y的值为()。 A.25B.30C.36D.42 18.用calloc函数创建具有10个整型元素的动态存储空间的正确调用是()。 A.calloc(10,sizeof(char))B.calloc(10) C.calloc(10,sizeof(int))D.calloc(20,sizeof(int)) 19.假定有语句“intb[10],*pb;”,则不正确的赋值为()。 A.pb=bB.pb=b[5]C.pb=b+2D.pb=&b[0] 20.标准输入设备的文件流标识符是()。 A.stderrB.stdinC.stdoutD.stdio A.gets()B.fgets()C.getc()D.fgetc() 部分填空题练习: 1.在一个C语言程序文件中,若要包含另外一个头文件或程序文件,则应使用的预处理命令为__________。 2.用于从键盘上为变量输入值的标准输入函数的函数名为________。 3.假定一个枚举类型的定义为“enumRA{ab,ac,ad,ae};”,则ad的值为________。 4.int类型的长度为________。 5.执行“intx=45,y=8;printf("%d",x/y);”语句序列后得到的输出结果为________。 6.把表达式x=x+y转换成复合赋值表达式为__________。 7.假定x的值为5,则执行“a=(x>=6? 3: 8);”语句后a的值为________。 8.假定一维字符指针数组的定义为“char*a[5];”,则该数组占用的存储空间的字节数为________。 9.假定二维数组的定义为“doublea[M][N];”,则数组元素的行下标取值范围在_________之间。 10.空字符串的长度为________。 11.在所有函数定义之外定义的变量,若没有被初始化则系统隐含对它所赋的初值为________。 12.若p指向x,则________与x的表示是等价的。 13.直接访问表达式(*fp).score所对应的间接访问表达式为____________。 14.用于输出表达式值的标准输出函数的函数名是________。 15.每个C语言程序文件在编译时可能出现有致命性错误,其对应的标识符为________。 16.已知'A'~'Z'的ASCII码为65~90,当执行“intx='C'+3;”语句后x的值为________。 17.表达式(int)14.6的值为________。 18.假定不允许使用逻辑非操作符,则关系表达式x+y>5的相反表达式为___________。 19.假定x=5,则执行“a=(x? 10: 20);”语句后a的值为________。 20.假定一维数组的定义为“char*a[M];”,则该数组所占存储空间的字节数为________。 21.存储字符串"a"需要至少占用存储空间中的________个字节。 22.strlen()函数用于计算一个字符串的________。 23.在C语言中,一个函数定义由函数头和__________这两个部分组成。 24.假定p所指对象的值为25,p+1所指对象的值为46,则执行表达式*(p++)后,p所指对象的值为________。 25.假定p是一个变量,则用________表示该变量的地址。 26.把间接访问表达式p->name改写成对应的直接访问表达式为____________。 写出程序运行结果练习: 1.#include voidmain(){ intn=6,y=1; while(n--)y+=3; printf("y=%d\n",y); } 2.#include voidmain() { inti,s=0; for(i=1;i<8;i++) if(i%2==0||i%3==0)s+=i; printf("s=%d\n",s); } 3.#include voidmain(){ chara[]="abcdbfkgamd"; inti1=0,i2=0,i=0; while(a[i]){ if(a[i]<'e')i1++;elsei2++; i++; } printf("%d%d\n",i1,i2); } 4.#include voidmain(){ inta[8]={4,8,12,16,20,24,28,32}; int*p=a; do{ printf("%d",*p); p+=3;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 0607 语言程序设计 课程 期末 复习 考试 要求 文本
![提示](https://static.bingdoc.com/images/bang_tan.gif)