《C语言程序设计课程期末复习辅导与答疑.doc》由会员分享,可在线阅读,更多相关《C语言程序设计课程期末复习辅导与答疑.doc(9页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、(2009.06.09)C语言程序设计课程期末复习辅导与答疑(文本)徐孝凯:欢迎参加C语言程序设计课程的网上教学答疑辅导活动!徐孝凯:上届试卷供参考!见附件。高洪超:谢谢您吕昱渲:计算机二级考试考些什么? 徐孝凯:请看它们的教学大纲和有关资料!刘亚鹏:数据类型与表达式徐孝凯:请看书!汪婷:寻求答案:编写C程序一般需经过的几个步骤依次是徐孝凯:按照结构化的程序设计方法分析编写思路;编写出各个功能模块的函数;最后编写出主函数和给出相应的预处理命令。黄新佳:怎么样学习这门课?我看了本门课程的教学要求,可我觉得好难学习的,怎么样才能学好这么课程呀?徐孝凯:按照教材的章节顺序学习,并结合上机运行程序!黄
2、新佳:练习题:形成性作业是必须做的吗?每章的后面都有练习题,也要做吗?哪里有答案吗?徐孝凯:形成性作业必须做!书中的练习题选做!没有现成的答案!王昆:如何考试?老师您好,这门课如何考试,是笔试还是上机,如何复习,谢谢!徐孝凯:请参考该课程的期末复习指导!顾闻:考试范围:我想知道一下这次C语言期终考试的考试范围是什么,谢谢徐孝凯:参考期末复习指导和往届试卷!彭璐:问题:以前学过C语言,没有学的好,不知有什么好的方法学好。徐孝凯:重新学应该容易了!但也还要认真和努力!秦宁远:老师你好,如何快速有效的学习啊徐孝凯:没有捷径可走,循序渐进学习!黄晓冬:您好,徐老师!今天的辅导是什么内容,考试复习资料:
3、形考作业册、复习指导册、09年1月的一份试卷,除了这些,还有什么复习资料吗徐孝凯:就这些资料,没有其他的资料!张喆:老师,您好!我想请教您,本学期C语言程序设计的复习资料包括:形成性考核作业、期末复习指导、上届的考试试题,还有其他复习资料吗?麻烦您了,谢谢!徐孝凯:没有其他资料了!沈慧娟:徐老师好!您辛苦啦!徐孝凯:沈老师好!你们面对学生教学不容易!需要耐心和时间!沈慧娟:该课程的形考作业是如何要求的?徐孝凯:按照考核说明的要求,占总成绩的20%。沈慧娟:徐老师,作业题是纸质还是电子的,网上好象没有! 徐孝凯:答疑结束!附件中央广播电视大学2008秋季C语言程序设计A课程试卷(4)题 号一二三
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()%20的值在( )区间内。 A. 119 B. 120 C. 019 D. 020 4. for循环语句“for(i=0; in; i+=2) S;”中循环体S语句被执行的次数为( )。 A. (n+1)/2 B. n/2
5、+1 C. n/2-1 D. n-1 5. 在下列的字符数组定义中,存在语法错误的是( )。 A. char a20=abcdefg; B. char a=x+y=55.; C. char a15=1,2; D. char a10=5; 6. 若有一个函数原型为“double *function()”,则它的返回值类型为( )。 A. 实数型 B. 实数指针型 C. 函数指针型 D. 数组型 7. 在C语言中,所有预处理命令都是以( )符号开头的。 A. * B. # C. & D. 8. 假定整数指针p所指数据单元的值为30,p+1所指数据单元的值为40,则执行*p+后,p所指数据单元的值为
6、( )。 A. 40 B. 30 C. 70 D. 10 9. 若要使p指向二维整型数组a1020,则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(%c,F-2);”语句后得到的输出结果为_。 3int类型的长度为_。 4. 表达式(float)25/4的值为_。 5若x=5,y=10,则x=y的逻辑值为_。 6. 作为语句标号使用的cas
7、e和default只能用于_语句的定义体中。 7. 在程序中执行到_语句时,将结束所在函数的执行过程,返回到调用该函数的位置。 8. 假定二维数组的定义为“char aMN;”,则该数组所含元素的个数为_。 9. 存储字符a需要占用存储器的_个字节空间。 10. 用于存储一个长度为n的字符串的字符数组的长度至少为_。 11. 假定p所指对象的值为25,p+1所指对象的值为46,则执行表达式(*p)+后,p所指对象的值为_。 12. 假定p是一个指向整数对象的指针,则用_表示该整数对象。 13假定一个结构类型的定义为“struct Bint a5; char* b;”,则该类型的理论长度为_。
8、三、写出下列每个程序运行后的输出结果(每小题6分,共30分) 1. #include void 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); 2. #include const int M=20; void main() int i=2; while(1) if(iM/2) break; if(M%i=0) printf(%d ,i); i+; printf(n); 3. #include int a6=4,5,6,15,20,12; void main()
9、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); 4. #include void 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); 5. #include #include struct Worker char name15; int age; float pay; v
10、oid 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.2fn,x.name,x.age,x.pay); 四、写出下列每个函数的功能(每小题6分,共12分) 1. #include int SA(int a, int b) if(ab) return 1; else if(a=b) return 0; else return -1; 函数功能: 2. void Output(
11、struct IntNode *f) /f为单链表的表头指针 if(!f) return; while(f) printf(%d ,f-data); f=f-next; printf(n); 假定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)”,编写函数定义
12、,计算并返回数组an中所有元素之和。中央广播电视大学2008秋季C语言程序设计A课程试卷答案及评分标准(4)(供参考)一、单选题(每小题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.
13、25 20 2. 2 4 5 10 3. 20 42 4. 11 13 20 5. liouting 39 800.00四、写出下列每个函数的功能(每小题6分,共12分)评分标准:根据答案叙述的正确与完善程度酌情给分。 1. 比较两个整数a和b的大小,若ab则返回1,若a=b则返回0,若ab则返回-1。 2. 遍历并输出由f所指向的单链表中每个结点的值。 五、按题目要求编写程序或函数(每小题6分,共12分)评分标准:按程序或函数编写的正确与完整程度酌情给分。1. #include void main() int i; int p=1; /1分 int s=1; /2分 for(i=1;i=10;i+) p*=3; s+=p; /5分 printf(%dn,s); /6分 2. int FF(int a, int n) int i,sum=0; /1分 for(i=0; in; i+) sum+=ai; /4分 return sum; /6分