已阅读5页,还剩3页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
2008 2009 学年 第 1 学期 C语言程序设计 课程试卷(A卷) 专业: 年级: 考试方式:闭卷 学分:3.5 考试时间:120 分钟 标准答案 一、选择题(每小题2分,共26分)1. 可用作C语言用户标识的一组标识符( B )。A viod B a3_b3 C For D 2a define _123 -abc DO WORD IF Case sizeof2. 设a,b和c都是整型变量,且a=3,b=4,c=5;则以下表达式中,值为0的表达式是( D )。 A a&b B a=b C a|b+c&b-c D !(a0?1:x0) y=1; B if(x)else if(x0) y=1; else y=0; else if(x=0) if(x0) y=1; if(x0) y=1; else if(x=0)y=0; else y=-1; else y=-1;5. 下列程序输出的结果是( A )。 main() int a=0,i; for(i=1;i5;i+) switch(i) case 0: case 3: a+=2; case 1: case 2: a+=3; default: a+=5; printf(“%dn”,a);A 31 B 13 C 10 D 20 6下列程序中,while循环次数是( D )。 main() int i=0; while(i10) if(i1)continue; if(i=5)break; i+;A 1 B 10 C 6 D 死循环,不能确定次数7. 以下描述中不正确的是( B )。 A 数组是一批类型相同的若干个元素的集合B 数组的各个元素的类型可以不同C 数组在内存中占用一块连续的存储空间D 数组是一种构造类型8设有:int10,i=5;,以下对数组元素引用不正确的是( D )。A a9 B A0 C ai D ai+59. 以下说法中正确的是( C )。A C语言程序总是从第一个函数开始执行B 在C语言程序中,要调用的函数必须在main()函数中定义 C C语言程序总是从main()函数开始执行D C语言程序中的main()函数必须放在程序的开始部分10. C语言规定,调用一个函数时,实参变量和形参变量之间的数据传递方式是( B )。A 地址传递 B 值传递 C 由用户指定传递方式D 由实参传给形参,并由形参传回来给实参11. 下列程序的输出结果是( A )#include #define MIN(x,y) (x)(y)?(x):(y)main() int i,j,k; i=10;j=15;k=10*MIN(i,j);printf(“%dn”,k); A 15 B 100 C 10 D 15012. 若有定义:int i,j,*p=&i,则与i=j等价的语句是( B )。 A i=*p; B *p=*&j; C i=&j; D i=*p;13. 设有语句:int a10=0,1,2,3,4,5,6,7,8,9,*p=a;以下对数组a中的数组元素的不正确引用是( D )。A ap-a B *(&ai) C pi D *(&(a+i) 二、填空题(每小题2分,共24分) 1C语言中,变量是指在程序运行过程中其值可在一定范围内变化的量。2. 如果不指定精度,格式字符e,E和f默认输出小数点后_6_位小数。3设a,b,c,d,m,n均为int型变量,且a=5,b=6,c=7,d=8,m=2,n=2, 逻辑表达式(m=ab)&(n=cd)运算后,m,n的值分别为_1 1_。4. 有下列程序段: s=1.0; for(k=1;k=10;k+) s=s+1.0/(k*(k+1); printf(“%fn”,s);试填空,使下列的程序段的功能完全与之等同。 s=0.0; _k=0_; d=0.0; do s=s+d; _k=k+1;_; d=1.0/(k*(k+1);while ( _k=10_); printf(“%fn”,s);5. 下列程序的输出结果是( ACFGH )。 #include main() char b30; strcpy(&b0,”AB”); strcpy(&b1,”CDE”); strcpy(&b2,”FGH”); printf(“%sn”,b);6. 当函数的返回值的类型与函数定义的类型不一致时,系统自动将其转换为函数定义时的类。 n7. 下列程序的功能是计算s=k!,请填空。 k=0long f(int n) int i;long s; s=1; for(i=1;_i=n_;i+)s *=i; return_s_;main() long s; int k,n; scanf(“%d”,&n);s=_0_; for(k=0;k=n;k+)s +=_f(k)_; printf(“%ldn”,s);8. 变量的作用域是指变量的有效范围,在作用域内可以引用该变量。按作用域来说,变量可以分为_局部_变量和_全局_变量。9. 下列程序由两个文件组成,其运行结果是_5_。 /* 文件1 */ /* 文件2 */ int x; static int x=5; sub( ) main( ) x=8; sub( ) printf(“x=%dn”,x); 10. 下列程序的输出结果是_800, 2_。#define N 20#define s(x) x*x#define f(x) (x*x)main() int i1,i2; i1=800/s(N); i2=800/f(N);printf(“%d %dn”,i1,i2);11. 指针变量是把内存中另一个数据的_首地址_作为其值的变量。12. 如果程序中已有定义:int k;通过指针变量,将数值10赋值给k的语句是_*p=10;_。三、阅读题(每小题5分,共20分)1. 写出下列程序的运行结果( 1 )。 main() int a=100; if(a=50)printf(“%dn”,a50) printf(“%dn”,a50);2. 写出下列程序的运行结果( 3 )。 #include main() int i,s=0; for(i=1;i2); printf(“%dn”,j); 4. 写出下列程序的输出结果( good )。 main() int n=b; switch(n) default : printf(“errorn”);break; case a:case b printf(“goodn”);break; case c : printf(“passn”);break; case d : printf(“warnn”);break;四、编程题(每小题4分,共20分)1. 设a为整型变量且其值大于零,请将以下if语句改写成switch语句。 if ( a60) m=1; else if(a70) m=2; else if(a80) m=3; else if(a90) m=4; else m=5;程序如下:#include stdio.hmain()int a,m; scanf(%d,&a); switch(a/10) case 0:case 1:case 2:case 3: case 4:case 5:m=1;break; case 6:m=2;break; case 7:m=3;break; case 8:m=4;break; default:m=5;break; printf(m=%dn,m);2. 编写程序,打印出所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字的立方之和等于该数本身。例如,407是一个“水仙花数”,因为:407=43+03+73。(注:若将题意改为打印出最大的或最小的“水仙花数”,则应将循环语句作如何调整?)。程序如下:#include stdio.hmain()int a,b,c,k;for(k=100;k=100;k- - )a=k/100;b=k/10%10;c=k%10;if(k=a*a*a+b*b*b+c*c*c) printf(%5d,k); /求最大或最小“水仙花数”时增加一个语句:break; printf(n);3. 定义一个有20个元素的整型数组,分别求出下标为奇数和偶数的元素的平均值。#include stdio.h#include math.hmain()int i,s0=0,s1=0,a20; for(i=0;i20;i+) ai=rand()%100; for(i=0;i20;i+=2)printf(%3d,ai); s0=s0+ai; printf( sum is:%d ave=%fn,s0,s0/10.0); for(i=1;i20;i+=2)printf(%3d,ai); s1=s1+ai; printf( sum is:%d ave=%fn,s1,s1/10.0); 4. 编写计算三角形面积的程序,将计算面积定义成函数。三角形面积公式为:A= 式中s=(a+b+c)/2其中A为三角形面积,a、b、c为三角形的三条边的长度。#include #include float fun(float a,float b,float c)float f,s; s=(a+b+c)/2; if(s=a)|(s=b)|(sc&(a+c)b&(b+c)a f=0; else f=sqrt(s*(s-a)*(s-b)*(s-c);return f;main() float a,b,c; scanf(%f%f%f,&a,&b,&c); printf(area is:%fn,fun(a,b,c);5. 编写程序读A.dat数据文件.A.data b c1 2 34 5 67 8 9End程序如下“main() int i,j,x33; char a,b,c,d; FILE *fp; if(fp=fopen(a.txt,r)=NULL) printf(Cannot open filen); exit(0); fscanf(fp,%c%c%c,&a,&b,&c); for(i=0;i3;i+) for(j=0;j3;j+) fscanf(fp,%d,&xij); fscanf(fp,%s,&d); fclose(fp); 五、简述C语言的特点?(5分)C语言有八个特点:1. 语言简洁、紧凑,使用方便、灵活;2.运算符丰富;3.数据类型多(整型、实型、字符型、数组 型、
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 乡镇安全监管考核制度
- 先民主后编制考核制度
- 红十字救援队考核制度
- 垃圾清运检查考核制度
- 医院宣传 考核制度
- 炼钢厂冒黄烟考核制度
- 幼师师德师风考核制度
- 公司财务百分考核制度
- 汽车配件仓库考核制度
- 市除四害工作考核制度
- 腺垂体功能减退 教案
- 2025春节后复工安全生产专题培训第一课附近期事故案例
- 工厂废品承包的合同范本
- 高考英语必背800高频词汇素材
- GB/T 9799-2024金属及其他无机覆盖层钢铁上经过处理的锌电镀层
- 混龄教育及带班技巧培训
- 幼儿园食堂从业人员安全知识培训
- 开实体店步骤及流程图
- 绝缘子串分布电压耐受测试
- 2024年山西新华书店集团有限公司招聘笔试参考题库含答案解析
- 双重预防机制制度
评论
0/150
提交评论