




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、中央广播电视大学计算机科学与技术专业C语言程序设计A课程考核说明(2018)一、考核说明 C 语言程序设计课程是全国电大系统计算机科学与技术专业(本科)的一门基础 必修课程。本课程是学习数据结构、操作系统、计算机网络、数据库、软件工程等课程的 先修课,在整个专业教案体系中占有非常重要的作用。本课程主要介绍 C 语言的基本语法规则和程序设计方法,包括 C 语言程序结构和上机 运行程序的基本过程,各种数据类型的常量和变量的定义与表示,各种运算符和表达式的 表示与应用,各种流程控制语句的定义与作用,各种常用函数的定义格式与调用方法,用 户函数的定义与调用,数组、指针、结构、文件等数据类型的定义与使用
2、,结构化和模块 化的程序设计方法等内容。学习 C 语言程序设计需要理论与实践相结合,只注重书本知识是空洞的,只注重 上机实践是迷茫的,必须两者结合循序渐进,通过书本知识指导实践,通过实践加深理解 和吸收知识,以及运用知识解决问题的能力。现将该课程考核的有关问题说明如下:1. 考核对象 全国电大系统开放教育计算机科学与技术专业(本科)的学生。2教案媒体文字主教材C语言程序设计 任爱华主编 中央广播电视大学出版社出版。录象教材 20 讲 任爱华等主讲 中央广播电视大学音像出版社出版,时间待定。IP 网络课件 16 讲 徐孝凯主讲 电大在线的该课程网站点播, 2008 年9月。复习资料C语言程序设计
3、期末复习指导中央电大教育杂志社出版发行。平时考核C语言程序设计形成性考核册 中央电大教育杂志社出版发行。网上辅导 在电大在线C语言程序设计课程教案网页上发表。3. 命题依据本考核说明以中央电大计算机科学与技术专业 C 语言程序设计课程的教案大纲为 依据编制。本考核说明是考试命题的依据。4. 考核要求本课程是以掌握 C 语言知识并解决实际程序设计问题为目的。主要考核学生对C 语言知识的掌握程度和对解决一般问题的程序设计能力。对C 语言知识要在理解和应用的基础上加强记忆和掌握,不能死记硬背。本课程教案内容包括了解、理解和应用三个层次,并且逐步递进,具体含义如下:(1)了解层次:记忆(2)理解层次:
4、掌握(3)应用层次:利用5. 命题原则C语言中的基本概念和语法规则;C语言中的每个语法成分和语句的定义格式、含义及作用;C语言,结合实际解决问题的需要,能够分析和编写程序。(1) 在教案大纲和考核说明所规定的知识范围内命题。在教案知识范围之内,需要灵 活运用才能够解决问题的试卷不属于超纲。(2) 试卷的取材要求覆盖面广、区分度高。(3) 试卷兼顾各个能力层次,了解和理解约占40%,应用约占 60%。(4) 试卷的难易程度和题量适当,按难易程度分为四个层次:容易占20%,较易占40%,较难占 30%,难占 10%。题量安排以平时能够独立完成作业者,能在规定的考试时间1 / 17 内做完并有一定时
5、间检查为原则。6. 试卷题型选择 :根据题意,从四种可选择的答案中选择合适的一种答案。填空: 根据题意,在画有横线或空白括号内填写合适内容。写出程序运行结果:根据所给的C语言程序,写出运行后的输出结果。指出程序或函数功能: 根据所给的 C 语言程序或函数,指出运行程序或进行函数调用时所 能实现的功能。编写程序或函数: 根据所给出的题目要求,编写出相应的程序或函数模块。7. 考核形式: 本课程考核采用终结性考试与形成性考核相结合的方式。形成性考核分为两种,一种视形 成性考核册作业完成情况和所规定的上机实验完成情况而定,占总成绩的20%;另一种为省级电大统一命题和组织的期末上机考核,占总成绩的10
6、%,要求完成一个带有多个程序文件的程序工程的编写(或修改)并上机运行通过,上机考核时限为60 分钟。形成性考核成绩由省级电大考核和确认。终结性考试采用书面和闭卷方式,考试成绩占总成绩的 70%,由中央电大统一命题和考试时间,答卷时限为90 分钟。总成绩满分为 100 分,合成成绩达到 60 及以上分数者可获得该课程规定的 4 学分,否则不获得该课程学分。第二部分 考核内容及要求第一章 C 语言概述考核内容(知识点):1 程序、程序文件和函数的概念及其相互之间的关系。2 函数的定义格式和作用,主函数的特殊地位和作用。3 . C语言简单语句和复合语句的语法格式。4 #include 预处理命令的格
7、式与作用。5 头文件的文件名格式、在程序中的使用方法和作用。6 程序中两种注释标记的写法和作用。7 标准输出函数 printf() 和标准输入函数 scanf() 的定义格式和具体应用。8 C 语言程序文件名、编译后生成的目标文件名和连接后生成的可执行文件名的命名 规则,以及上机输入、编辑、编译、连接和运行程序的过程。考核要求:要求了解和理解以上内容。第二章 数据类型和表达式重点考核的内容(知识点):1 . C语言中的数据类型的分类。2 各种整数类型的关键字表示,存储空间的大小和值域范围。3 整型变量的定义和初始化,十进制整型常量的表示。4 字符类型的关键字表示,存储空间的大小和值域范围;字符
8、型常量的表示,回车、 换行、单引号、双引号、反斜线、空字符等特殊字符的表示。5 字符型变量的定义和初始化,字符型与整型的关系。6 枚举的概念,枚举类型的定义,枚举变量的定义和初始化,枚举常量与整型常量的 对应关系。7 各种实数类型的关键字表示,存储空间的大小和有效位数。8 单精度和双精度实数的定点表示和浮点(科学)表示,实型变量的定义和初始化。2 / 179 加、减、乘、除、取余、赋值、增1、减 1 、取数据存储长度等算术运算符的表示、含义、运算对象个数和运算优先级。10 关系运算符的定义和关系表达式的计算,逻辑运算符的定义与逻辑表达式的计 算,根据任意表达式的值判断其逻辑值的方法。一般考核的
9、内容(知识点):1 整型常量的八进制和十六进制表示。2 符号常量的两种定义方法,它们之间的区别。3 位操作符、复合赋值操作符的含义与使用。 4求关系或逻辑表达式的相反表达式的方法。考核要求: 理解和掌握以上重点考核的内容,了解和理解以上一般考核内容。第三章 流程控制语句 考核内容(知识点):1 C语言程序中的顺序、分支和循环这三种基本结构,每种结构的执行过程。2 简单 if 语句、带 else 子句的 if 语句、多分支结构的 if 语句的定义格式、执行过 程和在处理问题中的具体应用。3 switch 语句的定义格式、执行过程和在处理问题中的具体应用。4 if 语句与 switch 语句之间的
10、功能比较, if 语句与 switch 语句之间的转换。5 for 循环、 while 循环和 do-while 循环的定义格式、执行过程和在处理问题中的具 体应用。6 三种循环结构不同特点。7 Break 语句在 switch 语句和各种循环语句中的作用, continue 语句在各种循环语 句中的作用。8 goto 语句和 return 语句的定义格式和功能。 考核要求:理解和掌握本章的所有内容,并能够灵活应用。第四章 数组和字符串 考核内容(知识点):1 一维数组的含义、定义格式及初始化格式。2 数组长度、数组元素、元素下标的含义,访问数组元素的语法格式,下标运算符的 操作对象和操作结果
11、。3 数组元素的下标变化范围,数组元素所占存储空间大小和整个数组所占存储空间大 小的计算,各元素对应存储空间的排列情况,每个元素的存储地址的计算。4 利用一维数组存储数据,按元素值的升序或降序排列数据,按给定条件或功能对数 组元素依次进行访问和处理。5 二维数组的含义、定义格式及初始化格式。6 二维数组的行数和列数的概念,数组长度(即所含元素个数)的计算。7 访问二维数组元素的语法格式,每个下标运算符的操作对象和操作结果。8 二维数组中的所有元素在存储空间中的排列情况,每个元素的存储地址的计算。9 利用二维数组存储矩阵数据,按给定条件或功能对数组元素依次进行访问和处理。10 字符串常量的定义格
12、式,字符串的存储格式,字符串长度的概念。11 一维字符数组、二维字符数组与字符串之间的关系,一维字符数组与二维字符数3 / 17 组的初始化。12 strlen 、 strcpy 、 strcmp 、 strcat 等字符串函数的声明格式及功能。13 利用 typedef 语句定义数据类型的方法。 考核要求: 了解和理解一维数组、二维数组和字符串的概念的使用方法,会利用它们存储和处理数 据。第五章 指针 考核内容(知识点):1 指针的概念,指针变量的定义和初始化。2 指针赋值( = )、取对象(变量)地址( &)、访问指针所指对象( * )、指针比较 (=、!= 、 等)、指针算术运算( +、
13、 - 、 +=等)、指针增 1 或减 1(+、- )等各种 运算的含义和使用。3 数组名的指针含义。4 一维数组元素的下标访问方式与指针访问方式及其之间的转换。5 二维数组元素的下标访问方式与指针访问方式及其之间的转换。6动态存储分配函数 malloc() 和 calloc() 以及动态存储空间释放函数 free() 的定义格式 与调用方法。考核要求: 理解指针的概念,掌握利用指针访问简单数据和数组元素的方法,掌握进行动态存储分配 与释放的方法。第六章 函数 考核内容(知识点):1 函数的定义格式。2 函数调用表达式的语法格式及执行过程。3 函数定义中形参变量的作用及实虚参数结合的过程。5 函
14、数声明(原型)语句的定义格式及作用。6 形参为一维数组或二维数组时的说明格式,调用时数组参数传递的过程。7 变量的作用域的概念和含义;系统对全局变量、 static 变量、局部变量的建立和 初始化过程。8 函数的递归调用的概念和递归函数的具体执行过程。9 头文件在程序文件中的位置和作用。 考核要求: 掌握用户自定义函数的定义、声明与调用方法,掌握函数调用中一般参数、指针参 数、数组参数的传递,以及函数体执行和返回的过程。第七章 结构与联合 考核内容(知识点):1 结构的概念,结构类型的定义格式,结构类型的声明(即不完整定义)格式。2 结构对象(变量)的各种定义格式和初始化,结构大小的计算,结构
15、对象和结构数 组对象的动态分配和初始化。3 结构赋值,结构成员的直接访问和间接访问,利用结构数组保存和处理数据。4 结构和结构指针作为函数参数和返回值类型的具体应用。4 / 175 链表的概念,链表中结点的结构,链表的建立和遍历的方法和算法。6 联合的概念,联合类型的定义格式,联合对象的定义和初始化,联合的存储结构及 大小的计算,匿名联合的特点。考核要求: 理解和掌握结构和联合类型的特点以及数据成员的访问方法,了解和理解链表中结点的结 构和建立与访问链表的方法,以及结构与联合嵌套定义的概念。第八章 文件 考核内容(知识点):1. 数据文件的概念。2. 文件的打开和关闭方法。3. 文件的各种访问
16、方式的表示。4. 对字符文件进行的输入和输出数据的方法。5. 对字节文件进行的输入和输出数据的方法。 考核要求:了解和理解文件的有关概念和访问方式,会利用字符或字节文件保存和处理数据。第三部分 模拟考核试卷及解答、选择题1. 由 C 语言源程序文件编译而成的目标文件的缺省扩展名为( C) 。A. cpp B. exeC. objD. C2. C 语言程序的基本模块为( D )。A. 表达式 B. 标识符 C. 语句 D. 函数3. 设 x 和 y 均为逻辑值 , 则 x|y 为假的条件是 ( C ) 。A 它们均为真 B. 其中一个为真 C. 它们均为假 D. 其中一个为假4. x0 | y=
17、5的相反表达式为( B )。A. x=0 | y!=5 B. x0 | y!=5 D. x0 & y=55. 枚举类型中的每个枚举常量的值都是一个( A )。A. 整数 B. 浮点数C. 字符 D.逻辑值( C ) 循环语句。D. 任一种6. 循环体至少被执行一次的语句为A for B.while C.do-while7. 循环语句“ for(int i=0in 。 i+) S 。”中循环体 S 被执行的次数为 ( C ) 。A. 1 B. n-1 C. n D. n+18. 在下面的 while 循环语句中,其循环体被执行的次数为( C )。 int i=0,s=0 。 while(s3 &
18、 x10的相反表达式为x=10。17 .若x=5, y=10,则x!=y的逻辑值为_J6 / 1718. 假定x=5,则执行“ int a=(! X? 10:20)语句后a的值为20。19. 在if语句中,每个 else关键字与它前面同层次并且最接近的Jf关键字相配套。20. 若while循环的“头”为“ while ( i+name等价的表达式是 (*p).name三、写出下列每个程序运行后的输出结果1. #i ncludevoid mai n() int i, s=0。for(i=1o o i+) if(s50) break。if(i%2=0) s+=i。printf(i,s=%d, %d
19、n,i,s)。/ s=2+4+6+8+10+12+14=56 i=152. #in clude7 / 17void mai n() char ch=*。in t i, n=5。while(1) for(i=0。 in。 i+) printf(%c,ch)prin tf(n)。if(-n=O) break。 3. #i ncludecon st i nt N=5。void mai n()int i,p=1,s=0。for(i=1 o iN。 i+)p=p*i os=s+p oprin tf(%5d%5d,i,p)。prin tf(%5dn,s)。结果*结果111222369424334. #i
20、ncludevoid mai n()int x=24,y=88。int i=2,p=1。do while(x%i=0 & y%i=0) p*=i。x/=i 。y/=i 。i+。while(x=i & y=i)。prin tf(%dn,p*x*y)。/* i=2 p=2 x=12 y=44P=4 x=6 y=22P=8 x=3 y=11i=3 i=4循环条件不成立因此循环体不执行p*x*y=8*3*1 仁264*/8 / 175. #i ncludevoid mai n() int a9=36,25,48,24,55,40,18,66,20in t i, b1, b2。a0=a1? (b 仁a0
21、, b2=a1):(b仁a1,b2=a0)for(i=2。i9。i+)/i 取 2 到 8if(aib1) b2=b1。 b1=ai。 /else if(aib2) b2=ai。prin tf(%d %dn,b1,b2)。分析 i=2 a2=48 b仁 25 b2=36i=3a3=24b2=25b仁24i=4a4=55b2=25b仁24i=5a5=44b仁25b仁24i=6a6=18b2=24b1= 18i=7a7=66b2=24b1= 18i=8 a8=20 b2=20 b仁 18结果18 206. #in cludevoid mai n() int a12=76,63,54,62,40,7
22、5,80,92,77,84,44,73int b4=60,70,90,101。int c4=0。int i,j 。for(i=0 。i=bj) j+ cj+。for(i=0 。 i4。i+) prin tf(%d,ci)prin tf(n)。/ b1=25,b2=36注意循环体结果3 2 6 17. #in cludevoid mai n() int a=10, b=20。prin tf(%d %dn,a,b)。 int b=a+25。 /注意局部变量 b的作用域a*=4。9 / 17printf(%d %dn,a,b)。 printf(%d %dn,a,b)。 结果10 2040 3540
23、208. #includevoid SelectSort(int a, int n)int i,j,k,x 。for(i=1。 in 。 i+) /进行 n-1 次选择和交换k=i-1 。for(j=i。 jn 。 j+)if(ajak) k=j 。x=ai-1 。 ai-1=ak 。 ak=x 。void main()int i 。int a6=20,15,32,47,36,28 。 SelectSort(a,6) 。for(i=0 。 i6 。 i+) printf(%d ,ai) 。 printf(n) 。 结果: 15 20 28 32 36 479 #include void mai
24、n() int a8=4,8,12,16,20,24,28,32 。int *p=a 。do printf(%d,*p) 。 p+=2 。 while(pa+8) 。 printf(n) 。 结果: 4 12 20 2810. #include void LE(int* a, int* b) int x=*a 。10 / 17*a=*b。*b=x 。void mai n() int x=15, y=26prin tf(%d %dn,x,y) LE( &x,& y)。prin tf(%d %dn,x,y) 11. #in clude#in cludestruct Worker char n am
25、e15。/姓名int age。/年龄float pay。/工资 。int Equal(struct Worker* r1, struct Worker* r2)if(strcmp(r1- n ame, r2-n ame)=0) retur n 1 else return 0。void mai n() struct Worker a4=abc,25,420,defa,58,638,ghi n,49,560,jklt,36,375struct Worker x= i。for(i=0。 i=4) pri ntf(没有查找所需要的记录!n)else prin tf(%s %d %6.2
26、fn,ai. name,ai.age,ai.pay)结果:defa 58 638.00四、写出下列每个函数的功能1. i nt SE(i nt n) n为大于等于1的整数int x,s=0。printf(输入 d个整数:,n)。scan f(%d, &x)。if(n=1) return x。s=x 。while(-n) scanf(%d,&x)。 s+=x。 return s。11 / 17 函数功能:求出键盘上输入的 n 个整数之和并返回。2. float FH() float x,y=0,n=0 。 scanf(%f,%x) 。 while(x! =-1.0) n+。 y+=x 。 sca
27、nf(%f,%x) 。if(n-0) return y。 else return y/n 。函数功能:求出从键盘上输出的一批常数的平均值,以 -1.0 作为结束输入的标志。3. #include void WA(int a, int n) int i,k,j,x 。for(i=0 。 in-1 。 i+) k=i 。 for(j=i+1 。 jak) k=j 。 x=ai 。 ai=ak 。 ak=x 。 函数功能:采用选择排序的方法对数组 a 中的 n 个整数按照从大到小的次序重新排列。4. #includeint* LJ(int a, int n) int i,k=0 。 for(i=1。
28、 iak) k=i 。return &ak 。函数功能:求出数组a中n个元素的最大值元素,返回该元素的地址。5. void QC(struct StrNode* f) while(f) printf(%sn,f-name) 。 f=f-next 。12 / 17假定结构类型 StrNode 的定义如下 :stuct StrNode char name15 。/ 字符串域struct StrNode *next。 / 指针域。函数功能:遍历 f 单链表,即从头结点开始依次输出 f 单链表中每个结点的值。6. int Output(struct IntNode *f)int sum=0。if(!f
29、) return -9999 。 / 用返回特定值 -9999 表示空表 while(f) sum+=f-data 。f=f-next 。return sum 。假定 struct IntNode 的类型定义为:struct IntNode int data。 / 结点值域struct IntNode* next 。 / 结点指针域 。函数功能:对于以表头指针为 f 的链表,求出并返回所有结点中 data 域的值之和。7. int wr4(FILE* fptr) char c=0。fseek(fptr,0,SEEK_SET) 。while(1) ch=fgetc(fptr) 。i
30、f(ch!=EOF) c+ 。else break。return c 。函数功能: 求出一个以 fptr 为文件流的所对应文件的长度,即所存字符的个数。五、根据下列每个题目要求编写程序1. 编写一个函数 fun() ,首先从键盘上输入一个 4 行 4 列的一个实数矩阵到一个二维13 / 17数组 a44 中,接着求出主对角线上元素之和,最后返回求和结果。#includedouble fun() double a44 。 double s=0 。 int i,j。printf( 输入一个 4*4 的数值矩阵 :n) 。 for(i=0。 i4 。 i+)for(j=0。j4。j+) scanf(
31、%lf,&aij)for(i=0。 i4 。 i+)s+=aii。return s。void main()printf( 主对角线上元素之和是 %lfn,fun()。i,p,s 作为循环变2a+5b=120 的全部整2. 编写一个主函数,计算 1+3+32+.+3 10 的值并输出,假定分别用 量、累乘变量和累加变量的标识符。#includevoid main()int i。 /用i 作为循环变量int p=1。 /用p 作为累乘变量int s=1。 /用s 作为累加循环变量for(i=1。 i=10 。i+) p*=3。 s+=p 。 printf(%dn,s)3. 编写一个主函数,已知6W
32、 aw 40,15 b 30,求出满足不定方程数组解。如 (13,20) 就是其中的一组解。#includevoid main()int a,b。for(a=6。 a=40。 a+)for(b=15。 b=30。 b+)if(2*a+5*b=126) printf(%d, %d)n,a,b)14 / 17参考解答:一、选择题1. C 2.D3.C4.B 5.A 6.C7.C8.C9.D10.B11.A12.B 13.C 14.A 15.A 16.D 17.A 18.C、填空题1. /* 2.#3.程序4.scanf()5. weirong186.0317.C 8.19. 210.8 11. float12.313.
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 中海龙湾国际营销策划报告24P
- 思科无线解决方案及成功案例
- 2025年对苯二胺项目建议书
- 跨境电商平台摊位产权分割与跨境电商合作合同
- 新西兰留学签证及住宿安排服务协议
- 广播电视音乐作品版权使用及收益分成协议
- 家庭环保绿化工程责任保证协议
- 子女教育交接及家庭教育资源整合协议
- 游艇码头泊位租赁及船舶交易与维修服务合同
- 虚拟主播电商直播内容创作与版权合作合同
- 销售人员试用期考核表
- 第二单元 水循环-2023-2024学年度五年级科学上册期中专项复习(青岛版)
- 非遗扎染创新创业计划书
- 超星尔雅学习通《先秦诸子导读(浙江大学)》2025章节测试附答案
- 江苏社工考试试题及答案
- 2025年劳务合同模板电子版简短一点
- 二级建造师继续教育题库(带答案)
- 市场监管投诉举报培训
- 《新能源乘用车二手车鉴定评估技术规范 第1部分:纯电动》
- 课题申报参考:西藏地方与祖国关系史融入当地高校“中华民族共同体概论”课教学研究
- 【MOOC】《C++程序设计基础》(华中科技大学)章节作业中国大学慕课答案
评论
0/150
提交评论