2011年C语言程序设计(4)-C卷.doc_第1页
2011年C语言程序设计(4)-C卷.doc_第2页
2011年C语言程序设计(4)-C卷.doc_第3页
2011年C语言程序设计(4)-C卷.doc_第4页
2011年C语言程序设计(4)-C卷.doc_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

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

文档简介

辽宁科技学院试卷学生姓名十位学号课程名称 C语言程序设计 系别试题名称C语言程序设计(4) (C)卷班级适用班级机电BG081、082 冶金BG081、082 测控BG081、082电气BG081、082 自BG081、082考试时间2009年07月日题号一二三四五六七八九十满分满分25102010827100实得分满 分:25实得分:一、选择题(25分)1、以下叙述中正确的是:A) C程序是由主函数组成的 B) C程序是由函数组成的 C) C程序是由函数和过程组成的 D) C语言程序总是从第一个函数开始执行2、C语言程序的三种基本结构是:A) 顺序、循环、子程序 B) 选择、 递归、 循环 C) 顺序、选择、循环 D)嵌套、选择、循环3、Turbo C中,int类型变量所占字节数是:A)1 B) 2 C)3 D)44、若有定义:int a=8,b=5,c;执行语句c=a/b+0.4;后,c的值为:A) 1.4 B)1 C)2 D)2.05、若有语句:int a=5,b;b=a+;此时变量b的值是:A) 7 B)6 C)5 D)46、若有定义:int a=12;则执行完a*=2+3;后,a的值是:A)60 B) 27 C) 38 D)177、C语句中复合语句用一对 括起来A)方括号 B) 小括号 C) 大括号 D)尖括号8、为表示关系xyz,应使用C语言表达式:A) (x=y)&(y=z) B) (x=y)and(y=z) C) x=y =z D) (x=y)&(y=z)9、以下不正确的if语句是A) if(a0)t=a; C) if(a=b)t=a; D)if(ab)&(bc)t=b;10、以下运算符中优先级最高的是:A) & B) ! C) % D) 11、运行下列程序段后,x,y的值是:int x=1,y=1;if(x=2)y=3;else y=4;A) 1,1 B) 1,4 C) 2,3 D) 2,412、语句for(表达式1 ; ;表达式3)等价于A) for(表达式1 ;0 ;表达式3) B) for(表达式1 ;表达式1;表达式3) C) for(表达式1 ; 1 ;表达式3) D) for(表达式1 ;表达式3;表达式3)13、执行语句:for(i=10;i0;i-); 后,变量i的值是:A)0 B)10 C) -1 D)114、以下数组声明语句中正确的是:A)int a,an; B) int a ; C) int a23=1,2,3; D) int a 3=1,2,3;15、对于下面程序段,执行的结果是:char c5=a,b,0,c,0;printf(%s,c);A) ab B) ab C) ab c D) a,b16、C语言数组中第一个元素的下标是:A) 1 B) 0 C) 根据说明语句而定 D)无固定17、以下所列的各函数首部中,正确的是:A) int play(var:Integer,var b:Integer)B) int play(int a,b)C) int play(int a,int b)D) int play(a as integer,b as integer)18、以下正确的说法是:A)函数必须有参数 B) 函数必须有返回值 C) 函数可以有多个return语句,但只有一个起作用 D) 函数不可以嵌套调用19、以下程序的输出结果是:#include #define M(x) x*(x-1)main() int a=1,b=2;printf(“%dn”,M(1+a+b);A) 6 B) 8 C) 10 D) 1220、若有语句:int a=4, *p=&a;,下面均代表地址的一组选项是:A) a, p, &*a B) *&a, &a, *p C) &a, p, &*p D) *&p,*p,&a21、已知定义:int b=1,2,3,4,y,*p=&b1;执行y=*p+后,y的值为。A) 1 B) 2 C)3 D)422、当说明一个结构体变量时,系统分配给它的内存是:A) 各成员所需内存量的总和。B) 结构体中第一个成员所需内存量C) 成员中占内存量最大者所需的容量D)结构体中最后一个成员所需内存量23、在说明一个共用体变量时,系统分配给它的存储空间是:A) 该共用体中第一个成员所需存储空间。B)该共用体中占用最大存储空间的成员所需存储空间。C) 该共用体中最后一个成员所需存储空间。D)该共用体中所有成员所需存储空间的总和。24、设int b=2;表达式(b1)的值为:A) 0 B) 2 C) 4 D) 825、在调用fopen函数时,不需要的信息是:A) 需要打开的文件名称 B)制定文件的指针 C) 文件的使用方式 D)文件的大小满 分:10实得分:二、判断题(10分)1. _55a是合法的标识符。2. C语言中字符型、整型、实型都能用八进制表示3. switch语句中,每一个case的冒号后面都允许跟有多条语句。4. 函数不能调用本身。5. 若一个函数的返回类型为void,则表示其没有返回值6. 数组元素可以像普通变量一样使用。7. c语言中,允许用字符串来直接初始化字符数组。8. 指针变量的三要素:变量名、变量类型、变量的值9. 一个变量的指针即该变量的地址,专门存放地址的变量,称为指针变量。10. 有int a=2,*p; p=&a; 假设变量a的地址为1000,执行 p=p+3以后,p的值为1003。满 分:20实得分:三、判断程序运行结果(20分 每题2分)2、main()int m=85,x,y;x=m%10;y=m/10;m=10*x+y;printf(“%dn”,m);运行结果: 1、main()int i,j,m,n;i=8;j=10;m=+i;n=j+;printf(“%d,%d,%d,%dn”,i,j,m,n);运行结果: 4、#includemain() int i,sum=0;for(i=1;i=3;i+) sum+=i;printf(“%dn”,sum);运行结果: 3、#includemain()int m=5;if(m+5)printf(“%dn”,m);else printf(“%dn”, -m);运行结果: 6、#includemain() int i,a10;for(i=0;i=0;i-)printf(“%d ”,ai);运行结果: 5、#includemain()int i,j;for(i=1;i=5;i+) for(j=1;j=i;j+)printf(“*”);printf(“n”);运行结果: 8.f(int a)auto int b=0; static int c=3; b=b+1; c=c+1; return(a+b+c);#includemain( )int a=2,i; for(i=0;i3;i+) printf(%d,f(a); 运行结果: 7#includevoid swap(int *x,int *y) int z;z=*x;*x=*y;*y=z;main( ) int a,b; a=10; b=20; swap(&a,&b); printf(na=%d,b=%dn,a,b);运行结果: 9.# a=3,b=5;int max(int a,int b)int c; c=ab?a:b; return c;void main()int a=8; printf(“%dn”,max(a,b); 运行结果: main() int a = 1,2,3,4,5,6; int x,y,*p; p=&a0; x=*(p+2); y=*(p+5); printf(*p=%d,x=%d,y=%dn,*p,x,y);运行结果: 满 分:10实得分:四、程序填空(10分 每题2分)2、用数组处理Fibonacci数列问题#include stdio.hmain()int i,f20=1,1;for(i=2;i20;i+) for(i=0;i20;i+)if(i%5=0)printf(“n”);printf(“%12d”,fi);1、判断m是否为素数#include stdio.h#include main()int m,i,k; scanf(%d,&m); k=sqrt(m); for(i=2;i=k+1) printf(%d is a prime number.n,m); else printf(%d is not a prime number.n,m);4、输出数组中的十个元素#include main() int *p,i,a10; p=a; for(i=0;i10;i+) scanf(“%d”,p+); ; for(i=0;i10;p+) printf(%d, *p);3、把100200之间的不能被3整除的数输出#include stdio.hmain()int i; for(i=100;i=200;i+) if(i%3=0) printf(%4d,i); 5、有一个34的矩阵,要求编程求出其中值最大的那个元素的值,以及其所在的行号和列号#include main() int i,j,row=0,colum=0,max;int a34=1,2,3,4,5,6,7,8,10,-10,15,2;max=a00;for(i=0;i=2;i+) for(j=0;j=3;j+) if( ) max=aij;row=i;colum=j;printf(max=%d,row=%d,colum=%dn, max,row,colum);满 分:8实得分:五、程序改错(8分 每题2分)2、求:#include main() int i=0,sum=0; while(i=100); sum=sum+i; i+; printf(%dn,sum);错误: 改正: 1、键盘输入一个年值year,判断是否为闰年#include main()int year;scanf(“%d”,year);if(year%4=0&year%100!=0|year%400=0)printf(“yes!”);elseprintf(“No!”);错误: 改正: 4、利用函数完成两个数的互换#includevoid swap(int *x,int *y)int *z;*z=*x;*x=*y;*y=*z;void main() int a,b;sacnf(“%d%d”,&a,&b);swap(&a,&b);printf(“a=%dnb=%d”,a

温馨提示

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

评论

0/150

提交评论