C语言复习资料答案.doc_第1页
C语言复习资料答案.doc_第2页
C语言复习资料答案.doc_第3页
C语言复习资料答案.doc_第4页
C语言复习资料答案.doc_第5页
已阅读5页,还剩15页未读 继续免费阅读

VIP免费下载

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

文档简介

二、类型及表达式一)合法的标志符:例题:1 是合法的用户自定义标识符的( D )A)ah-spks B)double C) D)_myapple2 以下正确的C语言标识符是( C )A)%x B)a+b C)a123 D)test!3 以下不能定义为用户标识符的是( C ) A) Void B) b_2 C) int D) name 二)合法的整型常量例题:1 以下选项中可作为C语言合法整数的是( D ) A) 11010 B B) 0583 C) x2b2 D) 0xafb 三)合法的实型常量例题:1 以下选项中可作为C语言合法常量的是(A)A)-80. B)-080 C)-8e1.0 D)-80.0e四)合法的字符型常量例题:1 设有说明语句:char a=123;则变量a( A )A)包含1个字符 B)包含2个字符 C)3个字符 D)说明不合法2 C 语言中,“x5d”在内存中占用的字节数是(A ) A) 2 B) 5 C) 4 D) 1 3 字符串“tx42bcdn”的长度是(A )。A)7 B)10 C)12 D)13五)各种基本类型变量所占的字节数例题:1 下列式中,值不为4的表达式是( C)A)sizeof(unsigned long) B)sizeof(long) C)sizeof(unsigned int) D)sizeof(float)六)合法的表达式例题:1 设变量a、b、c已定义并赋值,则下列表达式中符合C语言语法规则的是( BC )A)a=5+ B)a=b=c+ C)a%=2 D)b=a+1=2七)表达式的值例题:1 设整型变量a的值为2,下列表达式值为1的是( C )A)a%3 B)a/3 C)-a D)a+2 下列表达式的值为0的是(A ) A) 7/8 B) 7%8 C) 7/8.0 D) 70|+b;后,b的值为( a )A)0 B)1 C)2 D)不确定5. 设int x,y,z=4;x=y=+z;x=(yz)?x+2:x+;则x的值是( C )A)4 B)5 C)6 D)76. 为表示关系xy=z,则正确的c语言表达方式为( C)。A)(xy=z) B)(xy)and(y=z)C)(y=z) D)(xy)&(y=z)7. 若变量ch为char类型,能正确判断出ch为大写字母的表达式是( D )A)A=CH=A)|(ch=Z)C)(A=ch) D)(ch=A)&(ch=Z)二)if语句例题:1有以下程序main( ) int a=0,b=0,c=0,d=0;if(a=1)b=1;c=2; else d=3;printf(%d,%d,%d,%dn,a,b,c,d);程序输出(D)A)0,1,2,0 B)0,0,0,3 C)1,1,2,0 D)编译有错2以下程序运行后的输出结果是 4599 main() int a=3,b=4,c=5,t=99; if(ba&ac) t=a;a=c;c=t; if(ac&bc) t=b;b=a;a=t; printf(%d%d%dn,a,b,c);三)switch语句(1)switch的执行过程(2)break的用法例题:1#include main() int x=1,y=1,a=0,b=0; switch(x) case 1:switch(y) case 0:a+; case 1:b+; case 2:b+;break; case 2:a+;b+;break; case 3:a+;b+; printf(“a=%d,b=%dn”,a,b);输出结果:a=1,b=32#include输入:3210 main()charc;while(c=getchar()!=n)switch(c-1)case 0:case 1:putchar(c+2);case 2:putchar(c+3);break;case 3:putchar(c+4);default:putchar(c+1);break;printf(“n”); 输出结果:645341四)算法输入出租车里程S,输出应付车费F。S和F的关系如下:#include void main( ) float S,F;scanf(“%f”,&S);if(S + y; x+) 二)三种循环的执行流程例题:1. 设变量y值为3,执行下列循环语句后,变量y的值的是(C )do y+; while(y+4);A)3 B)4 C)5 D)62. 执行语句for(I=1;I+4;); 后变量I的值是( C )A)3 B)4 C)5 D)0三)循环嵌套的执行次数例题:1#include “stdio.h” void main() int I,j;for(I=0;I=3;I+) for(j=0;jI;j+) printf(”%d”,I);printf(“*n”);输出结果:*1*22*333*四)break 和continue的用法例题:1有以下程序void main() int a=1,b; for(b=1;b=8) break; if(a%2=1) a+=5; continue; a-=3; printf(%dn,b);输出结果:42#include void main( ) int I, m=0, n=0, k=0; for(I=5;I=7;I+) switch(i/6) case 0: m+; n+; case 6: n+; break; default: k+; n+; printf(“%d,%d,%dn”, m, n, k);输出结果:1,4,2算法略五、数组一)数组语法1. 数组定义为int a1010;,则数组a有( A )个数组元素。A)100 B)81 C)20 D)1212. 以下一维数组 a的正确定义是(D )A)int a(10); B)int n=10,an;C) int n; D)#define N 10 Scanf(“%d”,&n); int aN; Int an;3. 设有语句”int a=3,4,5,9,8,7;”则表达式a1-a4的值是( C )A)-6 B)6 C)-4 D)24. 以下不能正确定义二维数组的是(D ) A) int a22= 4, 5;B) int a2=4,5,6,7; C) int a22= 4,5,6; D) int a2=4,5,.6,7; 二)字符串例题:1 以下程序的输出结果是( B)#include #includemain() char st20=”20000t”; printf(“%d,%dn”,strlen(st),sizeof(st);A)7,7 B)4,20 C)10,20 D)20,202 要将字符串a连接到字符串b后面,使用下面( D)语句A)strcpy(a,b); B)strcat(a,b); C)strcpy(b,a); D)strcat(b,a)三)算法例题:1 已知字符串char s50=”Iamstudent.”,请编写程序将字符a插入到student之前,结果为“Iamastudent”。程序如下:#include #includevoid main() car s50=”Iamstudent.”; int j,len; len=strlen(s); slen+1=0 for(j=len-1;j=3;j-) sj+1=sj; s3=0 puts(s); 2 有一个34的矩阵,要求编程以求出其中值最大的那个元素,以及它所在的行号和列号。程序如下:#include void main() int i,j,row,col,max; static int a34=3,5,1,8,6,4,11,7,9,3,10,2; max=a00; for(i=0;i_3_;i+) /*$BLANK1$*/ for(j=0;jmax) /*$BLANK2$*/ max=_ aij_; /*$BLANK3$*/ row=i; col=j; printf(max=%d,row=%d,col=%dn,max,row,col); 六、函数一)函数语法例题:1. 在C程序中,若对函数类型未加说明,则函数的隐含类型为( A )A)int B)double C)void D)char2. C语言中的函数( D )A)可以嵌套定义 B)不可以嵌套调用 C)可以嵌套定义,但不能递归调用 D)嵌套调用和递归调用都可以。3. 有以下函数定义: void fun( int n, double x) 下面函数调用正确的是(A ) A) fun( x, n) B) k=fun(10,12.5) C) fun(int x, double y) D) void fun(n, x) 4. 有以下程序#define N 20fun(int a,int n,int m) int i,j; for(i=m;i=n;i-) ai+1=ai;main() int i,aN=1,2,3,4,5,6,7,8,9,10; fun(a,2,9); for(i=0;i5;i+) printf(%d,ai);程序运行后的输出结果是( C )A)10234 B)12344 C)12334 D)122345. 有以下程序 void sum(int a) a0 = a-1+a1; main() int a10=1,2,3,4,5,6,7,8,9,10; sum(&a2); printf(%dn, a2); 程序运行后的输出结果是( A) A)6 B)7 C)5 D)8 6. 以下程序运行后的输出结果是:4 33 44 34 3二)递归函数例题:【程序1】#include”stdio.h” int fun( int n) if(n10) return n; else return (n%10)*fun(n/10);main() printf(“%d”,fun(218); 运行结果:16【程序2】# include long fun( int n) long s; if( n= 1| n=2) s=2; else s=n+ fun(n-1); return s; void main ( ) printf(“n %ld”, fun (5); 运行结果:14三)变量的作用域和存储类型(见课件)例题:1. C语言auto型变量是( A ) A) 存储在动态存储区中 B) 存储在静态存储区中 C) 存储在外存储器中 D) 存储在计算机CPU的寄存器中 【程序1】int w=2; int f(int x) int y=1;static int z=3;y+;z+;return(x+y+z); main() int k; for(k=0;k3;k+) printf(“%4d”,f(w+);运行结果:8 10 12【程序2】以下程序运行后的输出结果是:fun(int a) int b=0;static int c=3; b+; c+; return (a+b+c);main() int i,a=5; for(i=0;ix2 设有定义struct st int x ; float y; time, *t; t=&time;则对于time 中成员x 的正确引用是( C ) A) w.time.x B) t. x C) (*t). x D) time-x 三)共用体例题:1 若定义union exint I;float f;char a10; x;则sizeof(x)的值是( C )A)4 B)6 C)10 D)162 设有下列结构型变量w的定义,则表达式”sizeof(w)”的值是(C )struct long num;char name15;unionfloat y;short z; yz;w;A)19 B)20 C)23 D)25四)typedef例题:1 以下语句中,指针p的data域正确的引用方式为( B )typedef struct node int data;struct node lchile,rchild;Btree;Btree *p;A)p.data B)p-data C)(*p)-data D)pdata2 设有如下说明typedef struct ST long a; int b; char c2; NEW;则下面叙述中正确的是 ( C )A)以上的说明形式非法 B)ST是一个结构体类型C)NEW是一个结构体类型 D)NEW是一个结构体变量3 以下对结构体类型变量td的定义中,错误的是 ( C )A)typedef struct aa B)struct aa int n; int n; float m; float m; AA; ; AA td; struct aa td;C)struct D)struct int n; int n; float m; float m; aa; td; struct aa td; 九、位运算例题:请计算:(题有变) 4&6=4 3|5=7 4=-5 52=1 52=20十、文件例题:1 为了向二进制文件尾部追加内容,打开文件的方式应采用( A ) A) ab B) rb+ C) wb D) wb+ 2 设有下面结构体struct stchar name8; int num; float s4;student50; 若数组student中已有数据,将这些元素写到磁盘文件中,下列不正确的形式是( C)。A)fwrite(student,sizeof(struct st),50,fp); B)fwrite(student,50*sizeof(struct st),1,fp);C)fwrite(student,25*sizeof(struct st),25,fp); D)for(I=0;I50;I+) fwrite(student+i,sizeof(struct st),1,fp);3 当顺利地执行了文件关闭操作时,fclose的返回值是(C )A)-1 B)TURE C)0 D)1模拟试卷1答案一、 选择题(40分)1-5 CBACD6-10 BDCAA11-15 CADDC16-20 ABDBC21-25 CDBDC26-30 ABCCB31-35DCBBD36-40 CCBCA二、 填空题(每空2分,共20分)1F10211.533042536123457ef8169feof(fp)107三、 阅读理解题13523,43228435529四、 编程题1#include void main( ) int i; float s; for(i=1;i=99;i=i+2) s=s+1.0/i; printf(“%10.2f”s);2#include void main( ) int i,j,k; for(i=5;i=1;i-) for(j=1;j=i;j+) printf(“ “); for(k=1;k=i;k+) printf(“%d”,i); printf(“n”); 3#include #include main() char s100; int i; gets(s); i=1; while(si!=0) if(sisi-1) break;i=i+1; if(si= =0) printf(“yes”); else printf(“no”);模拟试卷2答案一、 选择题(40分)1-5 ADCBA6-10 CDACB11-15 CACBA16-20 DADCC21-25 CAABC26-30 BDBBB31-35BADBA36-40 DCBDA二、 填空题(每空2分,共20分)1十六2183int405= =607208Strcat(s1,s2)916101三、 阅读理解题165,A22310455-15 65,A19 3.141590,3.1416四、 编程题1#include void main( ) int i, s=0; for(i=5;i=500;i=i+52) s=s+i; printf(“%d”s);2#include void main( ) int i,j,k; for(i=1;i=i;j-) printf(“ “); for(k=i;k=1;k-) printf(“%d”,k); printf(“n”); 3#include int main() char s100=”Hello 2009, We are ready.”; int n=0; int i=0; while(si!=0) if(si=a) si=si-32;n=n+1; else if(si=A) n=n+1; i+; puts(s); printf(“N=%d”,n);模拟试卷3答案一、 选择题(40分)1-5 AABAC6-10 DBCDC11-15DBACD16-20 BDCBA21-25 BCBCD26-30 ADDAB31-35BDABC36-40 ACABD二、 填空题(每空2分,共20分)165256.831442.05x=1&x=3667Hello889math.h100三、 阅读理解题1a=4,b=5,c=12233A415152624四、 编程题1#include void main( ) int i,s=0; for(i=2009;i=9002;i=i+1) if(i%29=0|i%92=0) s=s+i; printf(“s=%d”,s);2#include void main( ) int i,k,x; for(i=1;i=4;i+) for(k=1;k=A&si=a&siz)si=si+1; if(si=Z)si=A; if(si=z)si=a;i=i+1;模拟试卷4答案一、 选择题(40分)1-5 DACBD6-10 CADCB11-15ACBBD16-20 CDBAB 21-25 DDCCA26-30 CDBAB31-35ABDCC36-40 BACDA二、 填空题(每空2分,共20分)1数字2103114回车(Enter)5!6127long8 69. st.num=20100109;1017三、 阅读理解题1B,b2n=86,grade=B31 1 2 3 5 8 13 21 3.141590,3.14164The string:WORLD CPU 2010! 5s=10四、 编程题1#include void main( ) float S,F;scanf(“%f”,&S);if(S=3) F=8;else F=8+(S-3)*2 printf(“%10.2f”,F);2#include void main( ) int i,k; f

温馨提示

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

评论

0/150

提交评论