厦门大学c语言模拟题讲评及课程复习_第1页
厦门大学c语言模拟题讲评及课程复习_第2页
厦门大学c语言模拟题讲评及课程复习_第3页
厦门大学c语言模拟题讲评及课程复习_第4页
厦门大学c语言模拟题讲评及课程复习_第5页
已阅读5页,还剩28页未读 继续免费阅读

下载本文档

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

文档简介

1、C语言程序设计语言程序设计课程复习及模拟题讲评课程复习及模拟题讲评二二一四年一月一四年一月C语言程序设计语言程序设计试卷各类题目分数分布情况试卷各类题目分数分布情况 一、选择题一、选择题 46分分(23小题小题, 每题每题6分分 ) 主要考基本概念主要考基本概念, 词法词法, 语法和小程序阅读等。语法和小程序阅读等。二、阅读题二、阅读题 18分分(3小题小题, 每题每题6分分)三、改错题三、改错题 12分分(2小题小题, 每题每题6分分)四、设计题四、设计题 24分分(4小题小题, 每题每题6分分) 相关说明相关说明:n选择题由机器改卷选择题由机器改卷, 其它题目由人工改卷其它题目由人工改卷n

2、考试题目有三分之二在平时的作业中考试题目有三分之二在平时的作业中n考试题型和模拟题相同考试题型和模拟题相同, 考试范围与模拟题相似考试范围与模拟题相似n考试内容考试内容90%在在28章章第第2 2章章 重点考核常用运算符重点考核常用运算符(+、-、*、/、%、=、!=、&、|、=、简单的、简单的+和和-)的正常使用。的正常使用。第第3 3章章 printf和和scanf函数只考函数只考%d、%f、%c和和%s格式格式, 数据位数控制不考。数据位数控制不考。第第4 4章章 条件运算符不考条件运算符不考, switch语句不考。语句不考。 第第5 5章章 循环结构重点是循环结构重点是whi

3、le和和for语句语句, dowhile、break、continue、goto 等语句不考。程序设计重等语句不考。程序设计重点掌握单重循环,二重循环仅限于简单应用。点掌握单重循环,二重循环仅限于简单应用。第第6 6章章 标准库函数仅限能正确调用标准库函数仅限能正确调用abs 和和sqrt函数即可。函数即可。在自定义函数中在自定义函数中, 函数嵌套和函数递归不考。函数嵌套和函数递归不考。第第7 7章章 条件编译不考。条件编译不考。第第8 8章章 多维数组不考多维数组不考, 字符串函数不考。字符串函数不考。第第9 9、1010、1111、1212章章 只作简单了解只作简单了解 一、选择题一、选择

4、题(本模块共本模块共46分分, 每题每题2分分)1. int i=10; float x; 执行执行x=5/i ; 后的值为后的值为( C )。A 0.5 B 0 C 0.0 D 1.0 知识点:知识点:P53 “/” 除法运算符;除法运算符; P59 赋值时的隐式类型转换赋值时的隐式类型转换 2. 短整型的数据长度为短整型的数据长度为2字节,设有变量说明语句字节,设有变量说明语句 short int k; 则变量则变量k可取的最大值是可取的最大值是( B )。 A 32768 B 32767 C 99 D 256 知识点:知识点:P39 基本数据类型。基本数据类型。 -215215-1(-3

5、276832767) 3. 给出以下定义给出以下定义: char x =abcd; char y = a, b, c , d; 则正确的叙述为则正确的叙述为( C )。 A 数组数组x和数组和数组y等价等价 B 数组数组x和数组和数组y的长度相同的长度相同C 数组数组x的长度大于数组的长度大于数组y的长度的长度 D 数组数组x的长度小于数组的长度小于数组y的长度的长度 知识点:知识点:P214 字符数组初始化字符数组初始化 4. 关于关于C语言变量的叙述语言变量的叙述, 错误的是错误的是( D )。 A 变量名必须由字母或下划线开头变量名必须由字母或下划线开头B 程序中的变量必须在被使用之前定

6、义程序中的变量必须在被使用之前定义C 不同的基本类型的变量之间可以混合运算不同的基本类型的变量之间可以混合运算D 变量的数据类型决定变量的作用域变量的数据类型决定变量的作用域知识点知识点: P44 变量名变量名, P46 变量必须遵循变量必须遵循“先声明先声明, 后使后使用用”原则原则, P55 类型转换类型转换 P45 变量的数据类型决定变量能取何种值变量的数据类型决定变量能取何种值, 能进能进行何种运算行何种运算, 所需内存空间大小。所需内存空间大小。 P171 变量作用域变量作用域 5. 函数形参如果缺省存储类别函数形参如果缺省存储类别, 则默认为则默认为( A )。 A auto B

7、register C static D extern知识点知识点: P174175 变量的存储类别,局部变量的存储变量的存储类别,局部变量的存储类型。类型。P4647 变量的声明变量的声明6. 合法的合法的C语言标识符是语言标识符是( B )。A 2a B sum C default D a*b知识点知识点: P3132 标识符、关键字、特定字标识符、关键字、特定字 7. 如果整型量如果整型量a, b, c的值分别是的值分别是5、4、3, 则语句则语句if (abc) c+; 执行后执行后c的值是的值是( C )。A 语法错误语法错误 B 4 C 3 D 2知识点知识点: P88 关系表达式的

8、值关系表达式的值 8. 若有定义了若有定义了char a; int b; float c; double d; 则表达式则表达式a*b+d-c的值的类型为的值的类型为( D )。A char B int C float D double知识点知识点: P56 类型转换类型转换-隐式类型转换规则隐式类型转换规则9. 设已定义设已定义 int a, *p; 下列赋值表达式中正确的是下列赋值表达式中正确的是( C )。A *p=a B p=*a C p=&a D *p=&a知识点知识点: P246 指针的运算,指针的运算,*的运算对象只能是指针的运算对象只能是指针变量变量 10. 设

9、有函数定义设有函数定义 void p(int x) printf(%d, x); 则正确的函数调用是则正确的函数调用是( A )。A p(3); B a=p(3); C printf(%d,p(3); D p(int x);知识点知识点: P158 函数的返回值函数的返回值11. 设有如下的函数设有如下的函数: ggg(float x) return x*x; 则函数返回值的类型是则函数返回值的类型是( C )。A 与参数与参数x的类型相同的类型相同 B 是是void C 是是int D 无法确定无法确定知识点知识点: P150 函数定义函数定义12. 设有说明语句设有说明语句 int x;

10、float y; 执行执行scanf(x=%d, y=%f, &x, &y); ,则正确的输入是,则正确的输入是( B )。A 17 71.9 B x=17, y=71.9 C 17 71.9D x=17 y=71.9知识点知识点: P7880 格式输入函数格式输入函数13. 下列运算符中下列运算符中, 优先级最低的是优先级最低的是( A )。A = B + C & D !=知识点知识点: P51 运算符的优先级和结合性运算符的优先级和结合性14. 下列四个选项中下列四个选项中, 不能作为不能作为C语言常量的是语言常量的是( D )。A 5e4 B 23 C abc D

11、 AB知识点知识点: P3437 字面常量字面常量15. 循环语句循环语句for (i=0, j=10; ij; i+, j-); 的循环次数的循环次数 是是( C )。A 0 B 语法错误语法错误 C 5 D 无穷多次无穷多次知识点知识点: P121 for循环语句循环语句 16. 已知已知x=0, y=4; 执行语句执行语句 if (x=0) y+; else y-; 之后之后, y的值是的值是( A )。A 3 B 4 C 5 D 6知识点知识点: P91 if语句语句17. 已知有宏定义已知有宏定义 #define M 3+2 请问表达式请问表达式 3*M*3的值是的值是( D )。A

12、 45 B 27 C 28 D 15知识点知识点: P190 带参数的宏带参数的宏18. 以下说法中正确的是以下说法中正确的是( D )。A 在在C语言中语言中, 要调用的函数必须在要调用的函数必须在main( )函数中定义函数中定义B C语言程序总是从第一个定义的函数开始执行语言程序总是从第一个定义的函数开始执行C C语言程序中语言程序中, main( )函数必须放在程序的开头函数必须放在程序的开头D C语言程序总是从语言程序总是从main( )函数开始执行函数开始执行知识点知识点: P9 main函数函数 19. 以下叙述中错误的是以下叙述中错误的是( D )。A 在不同的函数中可以使用相

13、同名字的变量在不同的函数中可以使用相同名字的变量B 函数中的形式参数是局部变量函数中的形式参数是局部变量C 在一个函数内定义的变量只在本函数范围内有效在一个函数内定义的变量只在本函数范围内有效D 当外部变量和局部变量同名时,局部变量无效当外部变量和局部变量同名时,局部变量无效知识点知识点: P171 变量的作用域:局部变量,全局变量变量的作用域:局部变量,全局变量20. 引用数组元素时引用数组元素时, 数组元素下标不可以是数组元素下标不可以是( C )。A 字符常量字符常量 B 整型变量整型变量 C 字符串字符串 D 算术表达式算术表达式知识点知识点: P202 一维数组的引用一维数组的引用v

14、oid main( )int j=5, k=4, c=3, mm100;for (int i=0; i100; i+) mmi=i;printf(%dn %dn,mma, mmj+k);21. 有关有关C语言函数的描述语言函数的描述, 说法错误的是说法错误的是( C )。A C程序必须包含一个主函数程序必须包含一个主函数main( )B 主函数可以出现在其他函数之前或之后主函数可以出现在其他函数之前或之后C 函数必须有返回值函数必须有返回值D 函数可以包含多个函数可以包含多个return语句语句知识点知识点: P152 P158 函数的声明函数的声明, 函数的返回值函数的返回值22. 在在C语

15、言里语言里, 常量常量c和和c两者两者( A )。A 完全不同完全不同 B 类型相同类型相同C 存储长度相同存储长度相同 D 存储值相同存储值相同知识点知识点: P3536 字符型常量字符型常量, 字符串常量字符串常量23. 在在C语言中语言中, 要求运算对象必须是整数的运算符要求运算对象必须是整数的运算符 是是( C )。A / B ! C % D =知识点知识点: P52 %只能对整型数据运算只能对整型数据运算二、阅读题二、阅读题(本模块共本模块共18分分, 每题每题6分分)1. 考生文件夹下的图形文件考生文件夹下的图形文件read1.bmp描述的是程序代码描述的是程序代码, 请请阅读该程

16、序阅读该程序, 把程序的运行结果写在文本文件把程序的运行结果写在文本文件read1.txt中。中。知识点知识点: P54 自增自增+、自减、自减-运算符运算符 2. 考生文件夹下的图形文件考生文件夹下的图形文件read2.bmp描述的是程序代码描述的是程序代码, 请请阅读该程序阅读该程序, 把程序的运行结果写在文本文件把程序的运行结果写在文本文件read2.txt中。中。知识点知识点: P246 指针的运算指针的运算: &取地址运算符,取地址运算符,*指向运算符指向运算符 P250 指针变量作为函数参数。例指针变量作为函数参数。例10.2.13. 考生文件夹下的图形文件考生文件夹下的图

17、形文件read3.bmp描述的是程序代码描述的是程序代码, 请请阅读该程序阅读该程序, 把程序的运行结果写在文本文件把程序的运行结果写在文本文件read3.txt中中 。知识点知识点: P176 static局部变量局部变量(静态局部变量静态局部变量)与自与自动局部变量的差别。例动局部变量的差别。例6.6.3 1.考生文件夹下有一程序文件考生文件夹下有一程序文件error1.cpp, 修改并执行程序。修改并执行程序。 /error1.cpp/求满足求满足1+2+3+4+n1000时时, n的最大值及数列之和。的最大值及数列之和。#include void main( )int sum, n=1

18、; / int sum=0, n=1;while sum1000 / while (sum1000)sum=sum+n;n+;n-;sum= ; / sum=sum-n- ;printf(n=%dtsum=%dn, n, sum);三、改错题三、改错题(本模块共本模块共12分分, 每题每题6分分)知识点知识点: P113 while语句语句; P54 自增自增+、自减、自减-运算符运算符 2. 考生文件夹下有一程序文件考生文件夹下有一程序文件error2.cpp, 修改并执行程序。修改并执行程序。 /定义一个函数定义一个函数fun(a), 函数返回正整数函数返回正整数a的位数的位数, 在主函数

19、中输入一个正整数在主函数中输入一个正整数,/调用调用fun函数函数, 输出该数的位数。输出该数的位数。#include/ int fun(int a); / int fun( int );void main( )/ int fun(int a); / int fun( int );int a, k;printf(请输入一个正整数:请输入一个正整数:);scanf(%d, &a);k=fun(a);printf(%d的位数是的位数是%dn, a, k);int fun( a) / int fun(int a)int i=0;while(a)a=a/10;i+;return / retur

20、n i;知识点知识点: P150 函数定义函数定义 P152 函数的声明与函数原型函数的声明与函数原型 P158 函数的返回值函数的返回值四、设计题四、设计题(本模块共本模块共24分分, 每题每题6分分)1. 请在考生文件夹下的请在考生文件夹下的prog1.cpp文件中编写程序文件中编写程序, 输入一输入一个个3位的整数位的整数, 如果该数的个位数和百位数相同如果该数的个位数和百位数相同, 则输出则输出“回回文数文数”, 否则输出否则输出“不是回文数不是回文数”。/prog1.cpp#includevoid main()int n;printf(请输入一个请输入一个3位的整数位的整数: );s

21、canf(%d,&n);if (n%10=n/100)printf(回文数回文数n);elseprintf(不是回文数不是回文数n); 知识点知识点:P53 /(除法运算符除法运算符)、%(求余运算符求余运算符)、求某个整数、求某个整数的个位、十位、百位、的个位、十位、百位、. 2. 请在考生文件夹下的请在考生文件夹下的prog2.cpp文件中编写程序文件中编写程序, 要求要求: 计算数列计算数列S=1-1/3+1/5-1/7+1/9-1/11+的值的值, 直到最后一项直到最后一项的绝对值小于的绝对值小于0.000001为止。为止。#include #include void main

22、()float s=0.0, t=1.0, n=1;while (fabs(t/n)=1e-6)s+=t/n; n=n+2; t=-t;printf(1-1/3+1/5-1/7+1/9-1/11+.=%fn, s);知识点知识点:P115 绝对值函数绝对值函数: abs(x)、fabs(x), while循环循环; P35 浮点型常量的指数表示法浮点型常量的指数表示法 3. 请在考生文件夹下的请在考生文件夹下的prog3.cpp文件中编写程序文件中编写程序, 先定义一个先定义一个求素数的函数。然后在主函数中调用该函数求素数的函数。然后在主函数中调用该函数, 输出输出100200之间之间的所有素

23、数。的所有素数。#include int sushu(int n)for (int i=2; in; i+) / for (int i=2; i=sqrt(n); i+)if (n%i=0) return 0;return 1;void main( )for (int i=100, j=0; i=200; i+) if (sushu(i) printf(%dt, i); if (+j)%5=0) printf(n); 知识点知识点:P125、P127、P137、P206 求素数求素数;P150158 函数的定义、声明、调用、函数间参数传函数的定义、声明、调用、函数间参数传递和返回值。递和返回值。 4. 请在考生文件夹下的请在考生文件夹下的prog4.cpp文件中编写程序文件中编写程序, 要求要求: 输入输入一个长度为一个长度为10的整型一维数组。找出其中的最大值元素的整型一维数组。找出其中的最大值元素, 然后然后和数组的最后一个元素位置对换。输出该数组。

温馨提示

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

评论

0/150

提交评论