南昌大学2005~2006学年第二学期c语言期末考试试卷(答案已上传)_第1页
南昌大学2005~2006学年第二学期c语言期末考试试卷(答案已上传)_第2页
南昌大学2005~2006学年第二学期c语言期末考试试卷(答案已上传)_第3页
南昌大学2005~2006学年第二学期c语言期末考试试卷(答案已上传)_第4页
南昌大学2005~2006学年第二学期c语言期末考试试卷(答案已上传)_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

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

文档简介

南昌大学 20052006 学年第二学期期末考试试卷 试卷编号: ( A )卷 课程编号: 课程名称: C 程序设计 考试形式: 闭卷 适用班级: 全校理工科 姓名: 学号: 班级: 学院: 专业: 考试日期: 题号 一 二 三 四 总分 题分 50 18 20 12 100 累分人 签名 得分 考生注意事项:1、本试卷共 9 页,请查看试卷中是否有缺页或破损。如有立即举手报告以便更 换。 2、考试结束后,考生不得将试卷、答题纸和草稿纸带出考场。 一、 单项选择题(每空 2 分,共 50 分) (请将各小题正确答案的字母序号填到相应小题的下划线上) 得分 评阅人 1. C 语言的运算符按运算对象的数目可以分为 。 A)单目运算一种 B)单目和双目运算符 C)单目、双目和三目运算符 D)单目、双目、三目运算和四目运算符 2. C 语言表达式 2/5*10 的值是 。 A) 0.04 B)4 C)4.0 D)0 3. 已知变量 f 和 i 的类型说明如下: float f=12.34; int i; 则以下符合 C 语言语法的表达式是 。 A) i=(int)f%5 B) i=int(f)%5 C) i=f%5 D) i=(int f)%5 4. 能正确表示数学式 1x5 的 C 语言表达式是 。 A)1 =1) scanf(“x=%d,y=%d“, printf(“x+y=%d“,x+y); (说明:用表示换行符,用表示空格符) A)10 20 B)x=10,y=20 C)10 D)x=10 20 y=20 10. 下面程序的运行结果是 。 main() int a,b; a=32767; b=a+1; printf(“a=%d,b=%dn“,a,b); A)a=32767,b=-32768 B)a=32767,b=32768 C)a=32767,b=1 D)运行出错 11. 在 C 语言中,以下错误的描述是 。 A)break 语句不能用于循环语句和 switch 语句外的任何其它语句 B)在 switch 语句中使用 break 语句或 continue 语句的作用相同 C)在循环语句中使用 continue 语句是为了结束本次循环,而不是终止整个循环 D)在循环语句中使用 break 语句是为了使流程跳出循环体,提前结束循环 12. 在 C 语言中,数组作为函数的形参,函数调用时,若用数组名作为函数的实参, 则实际上传递给形参的是 。 A)数组首地址 B)数组的第一个元素值 C)数组中全部元素的值 D)数组元素的个数 13.C 语言编译系统对宏命令是 。 A)在程序运行时进行替换处理 B)在程序连接时进行处理 C)和源程序中其它 C 语句同时进行编译 D)在对源程序中其它成份正式编译之前进行处理 第 3 页 共 9 页 14. 设 x、y 为整型变量且已赋值,将其中较大的值输出的、正确的 if 语句是 。 A) if ( x y ) printf ( “ %d ” , x ); B) if ( x y ) printf ( “ %d ” , x );printf ( “ %d ” , y ); C) if ( x y ) ; printf ( “ %d ” , x ); else printf ( “ %d ” , y ); D) if ( x y ) printf ( “ %d ” , x ); else printf ( “ %d ” , y ); 15. 对以下程序段描述正确的是 。 x=10; while(x) x=x/4; A) 不执行循环体 B) 循环体执行一次 C) 循环体执行二次 D) 死循环 16. 在 C 语言中,引用数组元素时,对数组下标的数据类型以下说法错误的是 。 A) 数组下标可以用整型常量 B) 数组下标可以用整型变量 C) 数组下标可以用任意类型的表达式 D) 数组下标可以用整型表达式 17. 以下 C 函数的功能是 。 int fun(int x,int y) int z=0; z=xy?x:y; return z; A) 求 x 和 y 二者中的最大值 B) 求 x 和 y 二者中的最小值 C) 返回一个不确定的值 D) 返回函数值为“0” 18. 定义数组:int s10;则数组元素下标的取值 。 A) 最小值为 1,最大值为 10 B) 最小值为 0,最大值为 10 C) 最小值为 0,最大值为 9 D) 最小值为 1,最大值为 9 19. 已知 int i,s45;不能表示数组第 3 行第 3 列元素值的是 。 A) * ( * ( x) )+ 3 B) x 3 3 C) * ( * ( x + 3 ) + 3 ) D) * ( x 3 + 3 ) 20. 以下 C 函数的类型是 。 fun (float f ) printf ( “ %f n ” , f ) ; A) int B) float C) void D) 无法确定 21. 设 char *s1,s2255=“programing” ;以下操作正确的是 。 A) *s1 = “function”; B) s2=“function”;s1=s2; C) s1 = “function”;s2=s1; D) *s2=P;s1 =s2 ; 22. 设有说明语句: struct student int num,age; ; struct student stu3=6001,20,6003,21,6005,19; struct student *p=stu; 则下面的 C 语言表达式中,值为 6003 的是 。 A) +(p-num) B) (p+)-num C) (*p+).num D) (*+p).num 23. 已有定义 int ( * p ) ( ) ; 则指针 p 可以 。 A) 代表函数的返回值 B) 指向函数的入口地址 C) 代表函数的类型 D) 代表函数返回值的类型 24. 若用下列语句输出 26 个大写英文字母: (1)for(a=A;a=A;a-) printf(“%c“,a); (3)for(a=A;a main() int a,b,c,d; unsigned u; a=12;b=-24;u=10; c=a+u;d=b+u; printf(“a+u=%d,b+u=%dn“,c,d); 程序运行结果为: 2. #include main() int a=10,b=0; if (a!=0) a=a+1;b=b+1; else a=a+2;b=b+2; 第 5 页 共 9 页 printf(“%d,%dn“,a,b); 程序运行结果为: 3. #define V(s) s*s*s #include main() int volume; volume=V(1);printf(“%dt“,volume); volume=V(2);printf(“%dt“,volume); volume=V(1+2);printf(“%dn“,volume); 程序运行结果为: 4. #include main() char s=“12345“; void sub_s1(char s,int n) ; void sub_s2(char s ,int n); sub_s1(s,5);sub_s2(s,6); void sub_s1(char s,int n) int i,j; for(i=0;i main() int i,a;int fun(int m); for(i=0;i main() int i,k=0,s10=1,2,3,4,5,6,7,8,9,10; for(i=0;i=0;i-) if(i%5= =0) printf(“%dt”,si); printf(“%dn”,k); 程序运行结果为: 第 7 页 共 9 页 三、 填空题 (每空 2 分,共 20 分) (请在下划线上填入合适的内容,完成程序或程序段所要求的功能) 得分 评阅人 1. 以下程序运行时从键盘输入字符串 ABCDE 按回车键结束输入,要求在下划线上填 入合适的内容,使输入字符串中的A和B转换为字符#输出,其它字符 输出为* 。 # include main ( ) char c ; while( ( c = getchar ( ) ) !=_ ) switch ( c ) case A: case B: putchar(#) ; _; default : putchar( * ) ; 2. 以下程序从键盘输入 20 个整数存入数组,统计输入非负数的个数,并计算输入的 非负整数之和。请填空完成。 # include main ( ) int i , a20,s,n; s=n=0; for ( i = 0 ;i main() _; i=1; do s=s+i; i+; while_; printf(“%dn“,s); 5. 设 fp 为文件型指针变量,ch 为字符变量,以下程序段从键盘输入字符,然后存入 磁盘文件,直到输入一个#为止,请填空完成。(注:#不存入文件中) ch=getchar(); while(_) _; ch=getchar(); fclose(fp); 四、 程序设计题 (第 1 小题 4 分,第 2 小题 8 分,共 12 分) 得分 评阅人 1. 编制一个自定义函数,函数的形参为字符数组 s1 和 s2,函数功能是将字符串 s1 中的所有数字字符取出,存入另一字符数组 s2 中,使 s2 成为一个新的字符串, 并在函数中将字符串 s2 输出。 (请按题目要求只需用自定义函数完成全部功能)

温馨提示

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

评论

0/150

提交评论