《C语言总复习资料-绝对经典ppt课件.ppt》由会员分享,可在线阅读,更多相关《C语言总复习资料-绝对经典ppt课件.ppt(37页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、采用PP管及配件:根据给水设计图配置好PP管及配件,用管件在管材垂直角切断管材,边剪边旋转,以保证切口面的圆度,保持熔接部位干净无污物2005年C语言复习课采用PP管及配件:根据给水设计图配置好PP管及配件,用管件在管材垂直角切断管材,边剪边旋转,以保证切口面的圆度,保持熔接部位干净无污物 1.下列四个叙述中,错误的是下列四个叙述中,错误的是( )。 A C语言中的关键字必须小写语言中的关键字必须小写 B 变量的存储类型决定了变量的存储位置及其生存期变量的存储类型决定了变量的存储位置及其生存期 C 宏定义必须以宏定义必须以#define 开头,行末必须加分号开头,行末必须加分号 D C语言中的
2、注释行可以出现在程序的任何位置语言中的注释行可以出现在程序的任何位置 2.下列四个叙述中,错误的是下列四个叙述中,错误的是( )。 A 一个一个C源程序必须有且只能有一个主函数源程序必须有且只能有一个主函数 B 一个一个C源程序可以含一个或多个子函数源程序可以含一个或多个子函数 C 在在C源程序中注释说明必须位于语句之后源程序中注释说明必须位于语句之后 D C源程序的基本结构是函数源程序的基本结构是函数cc采用PP管及配件:根据给水设计图配置好PP管及配件,用管件在管材垂直角切断管材,边剪边旋转,以保证切口面的圆度,保持熔接部位干净无污物 3.对两个静态变量对两个静态变量k1,k2进行初始化进
3、行初始化: static char k1=A; static char k2=A; 则下列叙述正确的是则下列叙述正确的是_A.上述语句有错误上述语句有错误B. K1=K2=AC. K1是字符串是字符串,K2是字符是字符D. K1是字符是字符,K2是字符串是字符串4. C语言提供的合法的数据类型关键字是语言提供的合法的数据类型关键字是_ A. Double B. short C. integer D. CharAB采用PP管及配件:根据给水设计图配置好PP管及配件,用管件在管材垂直角切断管材,边剪边旋转,以保证切口面的圆度,保持熔接部位干净无污物 5.设设x为为int型变量型变量,则执行语句则执
4、行语句x=10; x+=x-=x-x; 后后, x的值为的值为( )。 A 10 B 20 C 40 D 30 6.以下程序的输出结果是以下程序的输出结果是_ #include #include main() int a=1,b=4,c=2; float x=10.5,y=4.0,z;z=(a+b)/c+sqrt(double)y)*1.2/c+x;printf(“%fn”,z);A. 14.000000 B. 15.400000C. 13.700000 D. 14.900000B C采用PP管及配件:根据给水设计图配置好PP管及配件,用管件在管材垂直角切断管材,边剪边旋转,以保证切口面的圆度
5、,保持熔接部位干净无污物7.设设r,s,t为实型变量,代数式为实型变量,代数式rs/10t在程序中的正在程序中的正确写法是确写法是_。 A.rs/10t B.r*s/10t C.r*s/10/t D.r*s/10*t8.为表示关系为表示关系y在闭区间【在闭区间【x,z】内】内,应使用的应使用的C语言语言表达式是表达式是( )。 A (x=y)&(y=z) B(x=y)AND(y=z) C x=y=z D(x=y)&(y=z)CA采用PP管及配件:根据给水设计图配置好PP管及配件,用管件在管材垂直角切断管材,边剪边旋转,以保证切口面的圆度,保持熔接部位干净无污物 9.下列叙述中,正确的是下列叙述
6、中,正确的是( )。 A 输入项可以是一个实型常量输入项可以是一个实型常量, 如如: scanf(%f,3.5); B 只有格式控制只有格式控制,没有输入项没有输入项,也能正确输入数也能正确输入数据到内存,如据到内存,如:scanf(a=%d, b=%d); C 当输入一个实型数据时当输入一个实型数据时,格式控制部分可以格式控制部分可以规定小数点后的位数,如规定小数点后的位数,如:scanf(%4.2f,&f); D 当输入数据时当输入数据时,必须指明变量地址必须指明变量地址 如如: scanf(%f,&f);D采用PP管及配件:根据给水设计图配置好PP管及配件,用管件在管材垂直角切断管材,边
7、剪边旋转,以保证切口面的圆度,保持熔接部位干净无污物 10.printf函数中用到格式符函数中用到格式符“%5s”,如果输出的字如果输出的字符串长度大于符串长度大于5, 则输出方式是则输出方式是( )。 A 从左起输出该字符串从左起输出该字符串,右补空格右补空格 B 按原字符串长从左向右全部输出按原字符串长从左向右全部输出 C 右对齐输出该字符串右对齐输出该字符串, 左补空格左补空格 D 输出错误信息输出错误信息12.若定义若定义int x; float y; 且执行且执行scanf(%3d,%f,&x,&y); 语句时语句时,从第一列开始输从第一列开始输入数据入数据 12345,678,则,
8、则x的值为的值为( )。 A 12345 B 123 C 45 D 345BB采用PP管及配件:根据给水设计图配置好PP管及配件,用管件在管材垂直角切断管材,边剪边旋转,以保证切口面的圆度,保持熔接部位干净无污物13.设设 char c1=a,c2=A;则表达式则表达式 c1=c2+32?c1:(c1=c2+32)的值为的值为( )。 A 1 B 0 C a D A14.运行以下程序段的运行结果是运行以下程序段的运行结果是( )。 int x=1,y=2,z=3,a=-1; if(x y) a=1; printf(%d%d%d%d n,x,y,z,a); A 1 2 3 1 B 1 2 3 0
9、 C 1 2 3 -1 D 编译时报语法错误,不能编译时报语法错误,不能执行执行CB采用PP管及配件:根据给水设计图配置好PP管及配件,用管件在管材垂直角切断管材,边剪边旋转,以保证切口面的圆度,保持熔接部位干净无污物15.设设 int a=1,b=2,c=3,d=4,z;则表达式则表达式(ab)?(z=c):(z=d)的值为的值为( )。 A 4 B 2 C 1 D 3 16.在在C语言中,语言中,switch语句后一对圆括号中语句后一对圆括号中表达式的类型表达式的类型( )。 A 可以是任何基本类型可以是任何基本类型 B 只能为只能为int类型类型 C 只能是整型或字符型只能是整型或字符型
10、 D 只能是整型或实型只能是整型或实型AA采用PP管及配件:根据给水设计图配置好PP管及配件,用管件在管材垂直角切断管材,边剪边旋转,以保证切口面的圆度,保持熔接部位干净无污物17.下面的程序下面的程序( )main()int x=3; do printf(“%dn”,x-=2);while(!(-x);A输出的是输出的是1 B输出的是输出的是1和和-2C输出的是输出的是3和和0 D是死循环是死循环18. C语句中下列语句中下列( )语句可实现循环结构设计语句可实现循环结构设计A.continueB.switchC.for D.break采用PP管及配件:根据给水设计图配置好PP管及配件,用管
11、件在管材垂直角切断管材,边剪边旋转,以保证切口面的圆度,保持熔接部位干净无污物19.运行下面程序段的输出结果是运行下面程序段的输出结果是( )。 int n,a,s=0,p=1,i; n=2;a=2; for(i=1;i=n;+i) p=p*a;s+=p; printf(“ns(%d,%d)=%d,a,i,s); A s(2,2)=6 B s(2,3)=6 C s(1,2)=6 D s(2,2)=5B采用PP管及配件:根据给水设计图配置好PP管及配件,用管件在管材垂直角切断管材,边剪边旋转,以保证切口面的圆度,保持熔接部位干净无污物20.下列各程序段中,不能实现下列各程序段中,不能实现1+2+
12、3+.+10求和的求和的是是( )。 A int i=0,s=0; while(i=10) s+=i,i+; B int i,s; for(s=0,i=1;i11;i+) s+=i; C int i=0,s=0; do s+=i;,+i; while(i=10); D int i,s; for(s=0,i=1;i=10;) s+=i;D采用PP管及配件:根据给水设计图配置好PP管及配件,用管件在管材垂直角切断管材,边剪边旋转,以保证切口面的圆度,保持熔接部位干净无污物21.运行下面程序段的输出结果是运行下面程序段的输出结果是( )。 static int a7=1,3,5 ; printf(%
13、dn,a3 ); A 0 B 5 C 3 D 不确定数不确定数22.若有说明若有说明 char c=China; 则对该数组则对该数组元素的正确引用是元素的正确引用是( )。 A c3+4 B c(2) C c1*3 D c5 AC采用PP管及配件:根据给水设计图配置好PP管及配件,用管件在管材垂直角切断管材,边剪边旋转,以保证切口面的圆度,保持熔接部位干净无污物23.若要用下面的程序片段使指针变量若要用下面的程序片段使指针变量p,指,指向一个存储整型变量的动态存储单元:向一个存储整型变量的动态存储单元:int *p;即即p= malloc(sizeof(int);则应填则应填入入Aint B
14、int * C(*int) D(int*)24.若定义若定义 int b=8,*p=&b; 则下面均表示则下面均表示b的的地址的一组选项为地址的一组选项为( )。 A *p,*&b B *p,&*b C p,*&b,&*p D &*p,p,&b DD采用PP管及配件:根据给水设计图配置好PP管及配件,用管件在管材垂直角切断管材,边剪边旋转,以保证切口面的圆度,保持熔接部位干净无污物25.下列关于函数的叙述不正确的是下列关于函数的叙述不正确的是_ A.一个函数可以没有返回值一个函数可以没有返回值 B.一个函数可以用一个函数可以用return语句返回两个以上的值语句返回两个以上的值 C.用外部变量
15、可以在函数间传递数据用外部变量可以在函数间传递数据 D.函数无法返回值时,类型为函数无法返回值时,类型为void26.若函数实参是数组名时,则以下叙述中,正确的是若函数实参是数组名时,则以下叙述中,正确的是 ( )。 A 必须在调用函数中说明此数组的大小必须在调用函数中说明此数组的大小 B 实数组类型与形参数组类型可以不相同实数组类型与形参数组类型可以不相同 C 在被调用函数中,形参数组必须与实参数组大小相等在被调用函数中,形参数组必须与实参数组大小相等 D 实数组名与形参数组名必须一致实数组名与形参数组名必须一致BA采用PP管及配件:根据给水设计图配置好PP管及配件,用管件在管材垂直角切断管
16、材,边剪边旋转,以保证切口面的圆度,保持熔接部位干净无污物27.定义联合数据类型定义联合数据类型 union int a; int b; int c; int d; x;执行语句执行语句 x.a=2;x.b=3;x.c=4;x.d=5;后,后,x.b的值为的值为( )。 A 2 B 3 C 4 D 5D采用PP管及配件:根据给水设计图配置好PP管及配件,用管件在管材垂直角切断管材,边剪边旋转,以保证切口面的圆度,保持熔接部位干净无污物28.定义以下结构体类型定义以下结构体类型 struct s int a; float f; ;语句语句printf(%d,sizeof(struct s)的输出
17、结的输出结果为果为( )。 A 2 B 3 C 4 D 6D采用PP管及配件:根据给水设计图配置好PP管及配件,用管件在管材垂直角切断管材,边剪边旋转,以保证切口面的圆度,保持熔接部位干净无污物29.C语言中,宏定义有效范围从定义处开始,到本语言中,宏定义有效范围从定义处开始,到本源文件结束处终止。但可以用源文件结束处终止。但可以用_来提前解除来提前解除宏定义的作用。宏定义的作用。 A.#ifndef B.#endif C.#undefine D.#undef30.程序中定义以下宏程序中定义以下宏 #define w 2 #define L 4+w若定义若定义int val; 且令且令val=
18、L*L,则变量,则变量val的值为的值为( )。 A12 B 14 C 20 D 36DB采用PP管及配件:根据给水设计图配置好PP管及配件,用管件在管材垂直角切断管材,边剪边旋转,以保证切口面的圆度,保持熔接部位干净无污物31.当当a=5,b=4,c=9时,语句时,语句a+=5&b-=2&c+ ? printf(*a=%d b=%d c=%dn,a,b,c) : printf(#a=%d b=%d c=%dn,a,b,c);的执行结果是的执行结果是( )。 A #a=6 b=3 c=9 B*a=6 b=3 c=9 C #a=6 b=3 c=10 D*a=6 b=3 c=10A采用PP管及配件
19、:根据给水设计图配置好PP管及配件,用管件在管材垂直角切断管材,边剪边旋转,以保证切口面的圆度,保持熔接部位干净无污物 32. 有以下程序:#includemain ()int c;while(c=gether()!=n)switch(c-2) case 0: case 1:putchar(c+4); case 2:putchar(c+4);break; case 3:putchar(c+3); default:putchar(c+2);break printf(“n”);从第一列开始输入以下数据,代表一个回车符.2473程序的输出结果是_A.668977 B.668966 C.6677877
20、7 D.6688766 A采用PP管及配件:根据给水设计图配置好PP管及配件,用管件在管材垂直角切断管材,边剪边旋转,以保证切口面的圆度,保持熔接部位干净无污物33.下面程序的输出是下面程序的输出是_main()int y=9; for(;y0;y-) if(y%3=0) printf(“%d”,-y);continue; A741 B852 C963 D875421B采用PP管及配件:根据给水设计图配置好PP管及配件,用管件在管材垂直角切断管材,边剪边旋转,以保证切口面的圆度,保持熔接部位干净无污物 34.下面程序的输出是 #include main() char *a=abcdefgh;
21、fun(a); puts(a); fun(char *s) int x=0,y;char c; for (y=strlen(s)-1;xy;x+,y-) c=sx;sx=sy;sy=c; Aabcdefgh Bhgfdecba Cdcbahgfe Dhgfedcba D采用PP管及配件:根据给水设计图配置好PP管及配件,用管件在管材垂直角切断管材,边剪边旋转,以保证切口面的圆度,保持熔接部位干净无污物35.请选出以下程序的输出结果是请选出以下程序的输出结果是_# includemain()int a=1,2,3,4,i;int x=0;for(i=0;i4;i+)sub(a,x);printf
22、(“%d”,x);printf(“n”);sub(s,y)int *s,y;static int t=3;y=st;t-;A1234 B4321 C0000 D4444C采用PP管及配件:根据给水设计图配置好PP管及配件,用管件在管材垂直角切断管材,边剪边旋转,以保证切口面的圆度,保持熔接部位干净无污物37【程序】【程序】 #include main() int x=1, i=1; for(; x10) break; if(x%2!=0)x+=3;continue; x-=1; printf(%dn, x); 输出为输出为 【37】 printf(%dn, i); 输出为输出为 【38】 【3
23、7】A.10 B.12 C.11 D.14 【38】A.8 B.9 C.10 D.7BC采用PP管及配件:根据给水设计图配置好PP管及配件,用管件在管材垂直角切断管材,边剪边旋转,以保证切口面的圆度,保持熔接部位干净无污物 38.下面程序从一个二进制文件中读入结构体数据,并把结构体数据显下面程序从一个二进制文件中读入结构体数据,并把结构体数据显示在终端屏幕上,请选择正确的答案填入程序空白处。示在终端屏幕上,请选择正确的答案填入程序空白处。 #include main( ) struct datarec char s; int a; float c; r; FILE *fp; if(fp=fop
24、en(file.dat,rb) = NULL) printf(Cant open input filen);exit(0); while( 【39】 ) 【40】 ; printf(%c,%d,%fn,r.s,r.a,r.c); fclose(fp); 【39】 A feof(fp)!=0 B !feof(fp) C feof(fp) D feof(fp)!= NULL 【40】 A fread(&r,1,sizeof(struct datarec),fp) B fread(r,sizeof(struct datarec),1,fp) C fread(r,1,sizeof(struct dat
25、arec),fp) D fread(&r,sizeof(struct datarec),1,fp)BD采用PP管及配件:根据给水设计图配置好PP管及配件,用管件在管材垂直角切断管材,边剪边旋转,以保证切口面的圆度,保持熔接部位干净无污物39.【程序】 extern int a; main() int i; for (i=1;i4;i+) +a;printf(%d, a);s(); int a=9; int s() int a=100; static int b=10; +a; printf(%d,%dn, a,b); b+=10; 程序输出第一行为 【41】;程序输出第二行为 【42】;程序输
26、出第三行为 【43】。【41】A.1,10,10 B.10,101,10 C.10,11,10 D.1,101,10【42】A.11,101,20 B.102,101,10 C.11,101,10 D.101,11,20【43】A.102,101,10 B.12,102,30 C.102,101,30 D.12,101,30BAD采用PP管及配件:根据给水设计图配置好PP管及配件,用管件在管材垂直角切断管材,边剪边旋转,以保证切口面的圆度,保持熔接部位干净无污物1、阅读下面程序,写出结果、阅读下面程序,写出结果f(a)int a; auto int b=0; static int c=6; b
27、+=1;c+=1; return (a+b+c);main() int a=2,i; for(i=0;i3;i+) printf(“%3d”,f(a);101112采用PP管及配件:根据给水设计图配置好PP管及配件,用管件在管材垂直角切断管材,边剪边旋转,以保证切口面的圆度,保持熔接部位干净无污物2、阅读下面程序,写出结果、阅读下面程序,写出结果swap(int *a,int *b) int *t; t=a,a=b,b=t; printf(“%d,%dn”,*a,*b);main() int a=3,b=5; swap(&a,&b); printf(“%d,%dn”,a,b); 5335采用P
28、P管及配件:根据给水设计图配置好PP管及配件,用管件在管材垂直角切断管材,边剪边旋转,以保证切口面的圆度,保持熔接部位干净无污物3、阅读下面程序,写出结果void inv(int *x,int n) int *p,m,t,*i,*j; m=(n-1)/2; i=x;j=x+n-1;p=x+m; for(;i=p;i+,j-) t=*i;*i=*j;*j=t; return;main() static int a10=3,7,9,11,0,6,7,5,4,2; int i,*p; p=a;inv(p,10); for(p=a;pmax 真 假max=aij输出max采用PP管及配件:根据给水设计
29、图配置好PP管及配件,用管件在管材垂直角切断管材,边剪边旋转,以保证切口面的圆度,保持熔接部位干净无污物2、求sum=1+2+3+100sum=0,i=1sum=sum+Ii=i+1 当i=100采用PP管及配件:根据给水设计图配置好PP管及配件,用管件在管材垂直角切断管材,边剪边旋转,以保证切口面的圆度,保持熔接部位干净无污物四、编写程序四、编写程序1.编写程序,从键盘输入两个正整数,判断第一个编写程序,从键盘输入两个正整数,判断第一个数能否被第二个数整除,并显示相应的信息。数能否被第二个数整除,并显示相应的信息。main() int x,y; printf(Please input X,Y
30、:); scanf(%d,%d,&x,&y); if(x%y=0) printf(X can be divied by Yn); else printf(X can not be divied by Yn); 采用PP管及配件:根据给水设计图配置好PP管及配件,用管件在管材垂直角切断管材,边剪边旋转,以保证切口面的圆度,保持熔接部位干净无污物2、 编写程序,使用编写程序,使用for循环,从键盘输入一循环,从键盘输入一个正整数个正整数n,然后显示,然后显示n行行hello。 main() int n,i; printf(Please input N:); scanf(%d,&n); for(i=
31、1;i=n;i+) printf(hellon); 采用PP管及配件:根据给水设计图配置好PP管及配件,用管件在管材垂直角切断管材,边剪边旋转,以保证切口面的圆度,保持熔接部位干净无污物3、编写程序,从键盘输入一个正整数、编写程序,从键盘输入一个正整数n,计,计算算n的阶乘并显示结果。的阶乘并显示结果。main() int n,i; long s=1; printf(Please input N:); scanf(%d,&n); for(i=1;i=n;i+) s=s*i; printf(N!=%ldn,s);采用PP管及配件:根据给水设计图配置好PP管及配件,用管件在管材垂直角切断管材,边剪边旋转,以保证切口面的圆度,保持熔接部位干净无污物4、编写程序,从键盘输入一个正整数、编写程序,从键盘输入一个正整数n,计,计算该数的各位数字之和,并显示结果。算该数的各位数字之和,并显示结果。main() long x,a6; int i=0,s=0; printf(Please input X:); scanf(%ld,&x); while(x) ai=x%10; printf(%4d,ai); x=x/10; s=s+ai; i+; printf(nsum=%dn,s);