《C语言》期末试题A.doc_第1页
《C语言》期末试题A.doc_第2页
《C语言》期末试题A.doc_第3页
《C语言》期末试题A.doc_第4页
《C语言》期末试题A.doc_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

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

文档简介

特别提示:请诚信应考,考试违纪或作弊将带来严重后果!成都理工大学工程技术学院20082009学年第学期C语言程序设计 计科系 专业期末试卷A注意事项:1. 考前请将密封线内的各项内容填写清楚; 2. 所有答案请直接答在试卷上(或答题纸上); 3考试形式:闭卷; 4. 本试卷共 4 大题,满分100分,考试时间120分钟。题号一二三四五六总分分数阅卷人一、选择题(每题1.5分,共30分) 1C语言中基本的数据类型包括_。 A) 整型、实型、逻辑型 B) 整型、实型、字符型 C) 整型、字符型、逻辑型 D) 整型、实型、逻辑型、字符型 2C语言中,运算对象必须是整型的运算符是_。 A) % B) / C) %和/ D) * 3为表示数学关系xyz,正确的C语言表达式是_。 A) (x=y)&(y=z) B) (x=y)AND(y=z) C) (x=y=z) D) (x=y)&(y=z) 4. 若定义x和y为double类型,则表达式:x=2,y=x+5/2的值是_ A) 4 B) 4.5 C) 4.0 D) 3.0 5. 若变量已正确说明为int类型,要给a,b,c输入数据,以下语句正确的是A) read(a,b,c); B) scanf(“%d%d%d”,a,b,c);C) scanf(“%D%D%D”,&a,%b,%c); D) scanf(“%d%d%d”,&a,&b,&c); 6. 以下程序的输出结果是_void main() int a = 2,b = 5; printf(“a=%d,b=%d”,a,b);A) a=%2,b=%5 B) a=2,b=5C) a=%d,b=%d D) a=%d,b=%d 7. 设int c=5和int a; a=2+(c+=c+,c+8,+c), 则a=_ A) 15 B) 14 C) 13 D) 16 8以下程序的输出结果是_ void main() int x=10,y=10; printf(“%d %dn”,x-,-y); A) 10 10 B) 9 9 C) 9 10 D) 10 9 9. 不合法的八进制数是_ A) 0 B) 028 C) 077 D)0110. 若要表示if( a不等于0 )这一关系式,则能正确表示这一关系的表达式为if (_) A) a0 B) !a C) a=0 D) a11. 在以下运算符中,优先级最高的运算符是_ A) ? : B) + C) & D) +=12. 在C语言中,逻辑值“真”用_表示。A) true B) 大于0的数C) 非0的整数D) 非0的数13. 下面程序的输出是(假设 int 数据是 2 个字节) void main() unsigned a=32768; printf(“a=%dn”,a); A) a=32768 B) a=32767 C) a=-32768 D) a=-114. 在C语言的if语句中,用作判断的表达式为_A) 关系表达式B)逻辑表达式C)算术表达式D)任意表达式15. 执行下面的程序后,a的值为void main() int a,b; for (a=1,b=1;a =20) break; if (b%3 = 1) b += 3; continue; b -= 5; A) 7 B) 8 C) 9 D) 1016. 表达式_是满足:当c的值为1、3、5三个数中任意一个时值为“真”,否则值为“假”的表达式A) (c=1)|(c=3)|(c=5) B) (c!=1)&(c!=3)&(c!=5) C) (c=1)&(c=3)&(c=5) D) (c=1)|(c=3)|(c=5) 17. 若变量已正确说明,则以下程序段输出为_ a=10;b=50;c=30; if (ab) a=b,b=c; c=a; A) a=10 b=50 c=10 B) a=10 b=30 c=10 C) a=50 b=30 c=10 D) a=50 b=30 c=5018. 定义如下变量: int n=10; 则下列循环的输出结果是 while (n7) n-; printf(“%dn”,n); A) 10 B) 9 C) 10 D) 9 9 8 9 8 8 7 8 7 7 619. 在C语言中,while语句中的条件为_时,结束该循环。A) 0 B) 1 C) true D) 非020. 若k为整型,以下while循环_次。 int k=10; while (k=0) k=k-1;A) 10次 B) 无限循环 C) 一次不执行 D) 执行一次二、判对错(对的画,错的画。每题1分,共10分)1. 在C程序中,任何语句后面都要加分号“;”。( )2. 在C程序中所用的变量必须先定义后使用。( )3. C程序中的注释部分可有可无,通常可以省略。( )4. 在C程序中,APH和aph是两个不同的变量。( )5. 在C程序中,无论是整数还是实数,都能准确无误的表示。( )6. 在C程序中,赋值运算符的优先级最低。( )7. 若a和b是同类型变量,在执行了赋值语句a=b;后b中的值将放入a中,b中的值将丢失。( )8. 当输入数值数据时,对于整型变量只能输入整型值;对于实型变量只能输入实型值。( )9. break语句只能用在循环语句中。( )10. continue语句只能用于循环语句中。( )三、填空题(每空2分,共40分) 1. 以下程序可判断输入的一个整数是否能被3或7整除,若能整除,输出“yes”,否则输出“no”。请填空。 #include void main() int k; printf(“Enter a int number:”); scanf(“%d”, _); if_ printf(“yesn”); else printf(“non”); 2. 以下程序从读入的整数数据中,统计大于零的整数个数和小于零的整数个数。用输入零来结束输入,程序中用i统计大于零的个数,用变量j统计小于零的整数。请填空。 void main() int n,i,j; ; printf(“Enter INT numbers,with 0 to endn”);scanf(“%d”,&n); while (_) if (n0) i=_; if (n0) j=_; _; printf(“i=%4d j=%4dn”,i,j); 3. 以下程序用“辗转相除法”来求出两个正整数的最大公约数。请填空。若两个数分别放在m和n中,求最大公约数的算法如下: (1) 将两数中最大的那个放在m中,小的放在n中。 (2) 求出m被n除后的余数r。 (3) 若余数为0则执行步骤(7);否则执行步骤(4)。 (4) 把除数作为新的被除数;把余数作为新的除数。 (5) 求出新的余数r。 (6) 重复步骤(3)到(5)。 (7) 输出n,n即为最大公约数。 void main() int r,m,n; printf(“Enter m,n:”); scanf(“%d%d”,_); printf(“m=%d n=%dn”,m,n); if (mn) _; r= _; while _ m=_;n=_;r=_; printf(“H.C.F=%dn,n); 4.以下程序用枚举法求百鸡问题。公鸡五元一只,母鸡三元一只,小鸡一元三只;一百元要买一百只鸡,且必须包含公鸡、母鸡和小鸡,求可有哪几种方案。请填空,要求以较高效率和合理的数值填入循环终值。 void main() _ ; n=0; for (i=1;_;_) for(j=1;_;_) k=100-i-j; if( _ =100) n+; printf(“n=%d,cock=%d,hen=%d,chick=%dn”,n,i,j,k) 四、编程序(共20分) 1. C语言标题文件math.h中提供了求绝对值的函数fabs(x),其功能是: x x0 fabs(x)= -x x0请自己编一个函数,实现求整数绝对值的功能,并在main函数中调用之,求 -5 的绝对值。(5分) 2编写程序,输出从公元1000年至2000年所有闰年的年号。(5分)判断闰年的条件是: 1)公元年数如能被4整除,而不能被100整除,则是闰年; 2)公元年数能被100整除,也能被400整除也是闰年。将判断年份是否是闰年的功能写成一个函数,并在main函数使用。3定义结构体类型student,包含20个字符长度的学号,12个字符长度的姓名和整型的成绩共3项。从给定的文件“学生信息

温馨提示

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

评论

0/150

提交评论