c语言基础复习题
C语言基础题复习
C语⾔基础题复习基础题复习⼀、选择题1.以下选项中,哪个是合法的C标识符(____)A) b-a B) 5abC) int D) INT2. 以下选项中,哪个是合法的常量(____)A) 0789 B) 0xEFGC) 9.2e2 D) 2e9.23. 设n为16位整数,则n的取值范围是(____)A) -32768⾄32768 B) 0⾄65536C) -32768⾄32767 D) 0⾄655354. 设int n=-1; 则n在内存中的16位编码是(____)A) 1111 1111 1111 1111 B) 1000 0000 0000 0001C) 1111 1111 1111 1110 D) 0000 0000 0000 00005. 设有int n;判断n是⼀个2位正整数的表达式是(____)A) n>10 && n<100 B) n>=10 && n<=99C) !(n<10) || n<100 D) n>=10 || n<=996. 设有定义int a=5,b; 赋值使b为9的语句是(____)A) b=++a+4; B) b=(a++)+3;C) b=8+!(a==5); D) b=(a++==6)?8:9;7. 以下哪条语句输出字符'a'的ASCII编码 (____)A) printf("%d",a); B) printf("%c",'a');C) printf("%d",'a'); D) putchar(a);8. 设有char str[80];则下列输⼊字符串的语句中正确的是(____)A) scanf("%s",&str); B) scanf("%s",str[80]);C) scanf("%s",str); D) scanf("%s",str[0]);9. 在C语⾔中,表⽰结束当前函数的语句是(____)A) return语句 B) break语句C) continue语句 D) exit语句10.以下选项中,合法的函数说明语句是(____)A) void func( char a[], b[]);B) void func( char *a, char b[]);C) void func( char a[]; char *b);D) void func( char *a, *b );11. 在字符串常⽤函数中,⽤于⽐较字符串⼤⼩的函数是(____)A) strlen B) strcpyC) strcat D) strcmp12. 设有定义char a[]="abcDEF",*p=a+3;则puts(p)的输出结果是(____)A) abcDEF B) bcDEFC) cDEF D) DEF13. 以下4个变量定义中,定义p为⼆级指针的是(____)A) int **p; B) int (*p)( );C) int *p[10]; D) int (*p)[10];14. 设有以下结构体定义及初始化,则表达式结果为'i'的是(____) struct node{int num;char name[20];} stu[2]={101,"Wang",102,"Li"},*p=stu+1;A) stu[1].name[1] B) p->name[1]C) stu[0].name[1] D) *p->name[1]15. 设有定义FILE *fp;将整数n以⽂本⽅式写到fp⽂件的语句是(____)A) fp = fopen( "file.txt", "w" );B) fprintf( fp, "%d", n );C) fwrite( &n, sizeof(int), 1, fp );D) fclose(fp);16. 表达式10 & 12和10 ^ 12的计算结果分别是(____)A) 8和14 B) 8和6C) 14和8 D) 6和817. 语句“while(!x)…”等价于(____)。
c语言程序设计基础期中复习题
c语言程序设计基础期中复习题c语言程序设计是计算机科学与技术专业中非常重要的基础课程之一。
它不仅教会我们如何使用计算机语言编写程序,还培养了我们解决问题的逻辑思维能力。
下面是一些c语言程序设计基础的期中复习题,供同学们复习参考。
# 一、选择题1. 以下哪个选项是C语言中的关键字?- A. class- B. int- C. function- D. include2. C语言中,用于定义变量的关键字是:- A. define- B. declare- C. var- D. let3. 以下哪个是合法的C语言标识符?- A. 2variable- B. for- C. variable2- D. int4. 在C语言中,用于表示逻辑“与”的运算符是:- A. &&- B. ||- C. !- D. &5. C语言中,用于实现条件判断的语句是:- A. if- B. switch- C. case- D. default# 二、填空题1. 在C语言中,基本数据类型包括整型(int)、字符型(char)、______(请填写浮点型)等。
2. C语言中,字符常量可以用单引号括起来,例如'A',而字符串常量则需要用双引号括起来,例如"______"。
3. C语言中,一个完整的程序由______和函数组成。
4. 在C语言中,使用______语句可以实现循环控制。
5. C语言中,函数的返回类型是放在函数名之前的,例如int main()表示函数返回类型为______。
# 三、简答题1. 请简述C语言的基本数据类型有哪些,并简要说明它们的特点。
2. 请解释C语言中数组的定义和使用方式。
3. 描述C语言中函数的声明和调用过程。
4. 请说明C语言中指针的概念及其基本操作。
5. 解释C语言中结构体(struct)的作用和定义方式。
# 四、编程题1. 编写一个C语言程序,实现输入两个整数,输出它们的和。
C语言基础部分练习题
C语言基础部分练习题第1单元C语言基础知识一、单项选择题1.是构成C语言程序的基本单位。
A.函数B.过程C.子程序D.子例程2.以下叙述中正确的是______。
A.构成C程序的基本单位是函数B.可以在一个函数中定义另一个函数C.main()函数必须放在其它函数之前D.所有被调用的函数一定要在调用之前进行定义3.下述正确的C语言常量是A.E2B.1.5E2.3C.5.OED.3e-34.下列计算机语言中,CPU能直接识别的是______。
A.自然语言B.高级语言C.汇编语言D.机器语言5.设int某=1,y=1;表达式(!某||y--)的值A.0B.1C.2D.-16.是C语言提供的合法的数据类型关键字。
A.FloatB.ignedC.integerD.Char7.不合法的常量是A.’\\2’B.\‘’D.\8.以下选项中合法的实型常数是______。
A.5E2.0B.E-3C..2E0D.1.3E9.以下选项中合法的用户标识符是______。
A.longB._2TetC.3Dma某D.A.dat10.已知大写字母A的ASCII码是65,小写字母a的ASCII码是97,则用八进制表示的字符常量'\\101'是______。
A.字符AB.字符aC.字符eD.非法的常量11.在C语言中,设int型占2字节,下列不正确的int型常数为A.32768B.0C.037D.0某af12.在通常微机上的C语言中,int类型数据占用(1)个字节存储;unignedint类型数据占用(2)个字节存储;hort类型数据占用(3)个字节存储;long类型数据占用(4)个字节存储。
A.1B.2C.4D.813.在C语言中,合法的字符常数是A.’\\084’B.’\\某42’C.’\\84’D.”\\0”14.下列不正确的转义字符是A.‘\\\\’B.’\\’’C.‘074’D.’\\0’15.下述语句的输出为int某=-1;printf(“%d,%u,%o”,某,某,某);A.-1,-1,-1B.-1,32767,-177777C.-1,32768,177777D.-1,65535,17777716.在C语言中,要求参加运算的数必须是整数的运算符是A./B.!C.%D.==17.下列语句中,符合语法的赋值语句是A.a=7+b+c=a+7;B.a=7+b++=a+7C.a=7+b,b++,a+7D.a=7+b,c=a+718.下述程序的输出结果是#includevoidmain(){inta=2;a%=4-1;printf(“%d,”,a);a+=a某=a-=a某=3;printf(“%d”,a);}A.2,OB.1,OC.-1,12D.2,1219.下述正确的语句是A.int某=y=z=0;B.intz=(某+y)++;C.某=+3==2;D.d%=2.5;20.下述程序的输出是#includevoidmain(){inta=011,b=101;printf(“\\n%某,%o”,++a,b++);}A.12,145B.9,144C.a,145D.a,521.以下非法的赋值语句是______。
(完整word版)C语言基础练习题(含答案)
目录第1-3章C语言基础知识习题 (2)1 选择题 (2)2 填空题 (7)3 答案及部分解析 (9)第4章选择结构习题 (11)1 选择题 (11)2 填空题 (17)3 答案及部分解析 (23)第5章循环结构习题 (26)1 选择题 (26)2 填空题: (32)3 答案及部分解题分析 (39)第6章数组习题 (41)1. 单项选择题 (41)2. 填空题 (44)3. 判断题 (45)4. 程序填空题 (45)5. 阅读程序,分析程序的功能。
(49)第7章函数习题 (55)1. 单项选择题 (55)2. 填空题 (56)3. 判断题 (57)4. 程序填空题 (58)5. 写出下列程序运行结果 (59)第8章指针习题 (67)1 选择题 (67)2 填空题 (69)第1-3章C语言基础知识习题1 选择题1. 以下不是C语言的特点的是()。
A、语言简洁紧凑B、能够编制出功能复杂的程序C、C语言可以直接对硬件操作D、C语言移植性好2.下列字符序列中,不可用作C语言标识符的是()。
A.abc123 B.no.1 C._123_ D._ok3.正确的C语言标识符是()。
A._buy_2 B.2_buy C.?_buy D.buy?4. 请选出可用作C语言用户标识符的一组标识符()。
A.void B.a3_b3 C.For D.2adefine _123 -abc DOWORD IF Case sizeof5. 下列符号中,不属于转义字符的是()。
A.\\ B.\0xAA C.\t D.\06.不属于C语言关键字的是()。
A.int B.break C.while D.character7.是C语言提供的合法关键字的是()。
A.Float B.signed C.integer D.Char8.以下不能定义为用户标示符的是()。
A.scanf B.V oid C._3com_ D.int9.一个C程序是由()。
C语言基础知识综合练习题
一、C语言基本知识和基本语句(一)选择题1.设a,b和c都是int型变量,且a=3,b=4,c=5则下面的表达式中,值为零的表达式是()。
A)‘a’&&’b’ B) a<=bC) a || b+c&&b-c D) ! ((a<b)&&! C|| 1)2.设ch是char型变量,其值为A字符,且有表达式:ch= (ch >= ‘A’ && ch <=‘Z’) ? ( ch + 32):ch,则表达式ch的值是()字符。
A) A B) a C) Z D) z3.若x和y都是int 型变量,x=100,y=200,且有程序段:printf (“%d”,(x,y));则输出结果是()。
A) 200 B)100 C) 100,200 D)输出格式不够,输出不确定的值4.C语言中最简单的数据类型包括()。
A)整型、实型、逻辑型 B) 整型、单精度型、双精度、字符型 C) 整型、字符型、逻辑型 D) 整型、实型、逻辑型、字符型5.C语言中,运算对象必须是整型的运算符是()。
A)% B) / C) % 和 / D) **6.数学关系x≥y≥z ,它对应C语言表达式是()。
A)(x>=y)&& (y>=z ) B) (x>=y) AND (y>=z )C) (x>=y>=z) D) (x>=y) & (y>=z )7.以下说法中正确的是()。
A)C语言程序总是从第一个定义的函数开始执行B) 在C语言程序中,要调用的函数必须在main()函数中定义C) C语言程序总是从main()函数开始执行D) C语言程序中的main()函数必须放在程序的开始部分8.设int x=10,y=3,z;则语句printf (“%d\n”,z=(x%y,x/y));的输出结果是()。
C语言复习题
《C语言》复习题一、选择题(1) 有如下程序main(){ int y=3,x=3,z=1;printf(“%d %d\n”,(++x,y++),z+2);}运行该程序的输出结果是: DA) 3 4 B) 4 2 C) 4 3 D) 3 3(第三章输出语句)(2)当c的值不为0时,在下列选项中能正确将c的值赋给变量a、b的是: CA)c=b=a;B)(a=c)‖(b=c);C)(a=c)&&(b=c);D)a=c=b;(第四章关系表达式)(3)在以下一组运算符中,优先级最高的运算符是: CA)<= B)=C)% D)&&(第四章运算符的优先级)(4) 请选出合法的C语言赋值语句: BA) a=b=58 B) i++;C) a=58,b=58 D) k=int(a+b)(第三章赋值语句)(5)以下说法中正确的是: CA)#define和printf都是C语句B)#define是C语句,而printf不是C)printf是C语句,但#define不是D)#define和printf都不是C语句(第三章语句概述)(6)若有以下定义: Dchar a; int b;float c; double d;则表达式a*b+d-c值的类型为A) float B) int C) char D) double(第二章类型混合运算)(7)若已定义x和y为double类型,则表达式:x=1,y=x+3/2的值是: CA)1 B)2C)2.0 D)2.5(第二章类型混合运算)(8)有以下程序#includemain(){ int a,b,c=246;a=c/100%9;b=(-1)&&(-1);printf("%d,%d\n",a,b);}输出结果是: AA) 2,1 B) 3,2 C) 4,3 D) 2,-1(第四章逻辑运算符)(9) 以下程序运行后,输出结果是: CA) cde B) 字符c的ASCII码值C) 字符c的地址D) 出错main(){ char *s="abcde";s+=2;printf("%ld\n",s);}(第九章指针的概念)(10)若要求在if后一对圆括号中表示a不等于0的关系,则能正确表示这一关系的表达式为:DA)a<>0 B)!aC)a=0 D)a(第4章条件表达式)(11)有如下程序段,其输出结果是什么: Amain( ){int a=1,b=3,c=5;if (c=a+b)printf ("yes\n");else printf("no\n"); }A) yes B) no C) yes\n D) no\n(第4章条件语句)(12) 假设在程序中a,b,c均被定义成整型,并且已赋大于1的值,则下列能正确表1示代数式----- 的表达式是: DabcA) 1/a*b*cB) 1/(a*b*c)C) 1/a/b/(float)cD) 1.0/a/b/c(第二章类型混合运算)(13)若i ,j已定义为int类型,则以下程序段中内循环体的总的执行次数是: Afor (i=5;i;i--)for(j=0;j<4;j++){...}A)20 B)15C)24 D)16(第五章for循环语句)(14)下面哪个程序段不是死循环: C(A) a=0; sum=0;while(a=1){sum=sum+a;a++;}(B) {int I,sum=0;For(i=1;i<=3;sum++)sum+=I;}(C) sum=0;for(i=1;i<10;i++);sum=sum+i;(D) sum=0;for(i=1; ;i++)sum=sum+i;(第五章for循环语句)15、设有以下定义:int a[4][3]={1,2,3,4,5,6,7,8,9,10,11,12};int (*prt)[3]=a,*p=a[0]则下列能够正确表示数组元素a[1][2]的表达式是: DA)*((*prt+1)[2]) B)*(*(p+5))C)(*prt+1)+2 D)*(*(a+1)+2)16、不能把字符串:Hello!赋给数组b的语句是: BA)char b[10]={'H','e','l','l','o','!'};B)char b[10];b="Hello!";C)char b[10];strcpy(b,"Hello!");D)char b[10]="Hello!";17、设有以下定义:int a[4][3]={1,2,3,4,5,6,7,8,9,10,11,12};int (*prt)[3]=a,*p=a[0]则下列能够正确表示数组元素a[1][2]的表达式是: DA)*((*prt+1)[2]) B)*(*(p+5))C)(*prt+1)+2 D)*(*(a+1)+2)18、请选出以下语句的输出结果: Aprintf("%d\n",strlen("\t\"\065\xff\n"));A) 5 B) 14 C) 8 D) 输出项不合法,无正常输出(19)假定所有变量均已正确说明,下列程序段运行后x的值是: Ba=b=c=0;x=35;if(!a)x--;else if(b);if(c)x=3;else x=4;A)34 B)4 C)35 D)3(第四章if语句)(20) 运行以下程序后,如果从键盘上输入china#<回车>,则输出结果为: CA) 2,0 B) 5,0 C) 5,5 D) 2,5#include<stdio,h>main(){ int v1=0,v2=0;char ch;while((ch=getchar())!='#')switch(ch){ case 'a';case 'h';default; v1++;case '0'; v2++;}printf("%d,%d\n",v1,v2);}(第四章switch语句)(21) 执行以下程序段时: AA) 循环体将执行一次B) 循环体将执行两次C) 循环体将执行无限次D) 系统将提示有语法错误x=-1;do {x=x*x; } while(! x);(第五章do_whule语句)(22)执行下面的程序后,a的值为: Bmain(){ int a,b;for (a=1,b=1;a<=100;a++){ if(b>=20)break;if(b%3==1){b+=3;continue;}b-=5;}}A)7 B)8C)9 D)10(第5章break,continue 语句)23) 下面能正确进行字符串赋值操作的语句是: CA) char s[5]={"ABCDE"}; B) char s[5]={'A','B','C','D','E'};C) char *s;s="ABCDEF"; D) char *s; scanf("%s",s);(第6章字符数组的定义;第9章字符串指针)(24)不能把字符串:Hello!赋给数组b的语句是: BA)char b[10]={'H','e','l','l','o','!'};B)char b[10];b="Hello!";C)char b[10];strcpy(b,"Hello!");D)char b[10]="Hello!";(第6章字符数组的使用)(25)函数调用:strcat(strcpy(str1,str2),str3)的功能是: CA)将串str1复制到串str2中后再连接到串str3之后B)将串str1连接到串str2之后再复制到串str3之后C)将串str2复制到串str1中后再将串str3连接到串str1之后D)将串str2连接到串str1之后再将串str1复制到串str3中(第6章字符串处理函数)(26)给出以下定义:char x[ ]="abcdefg";char y[ ]={'a','b','c','d','e','f','g'};则正确的叙述为: CA) 数组X和数组Y等价B) 数组x和数组Y的长度相同C) 数组X的长度大于数组Y的长度D) 数组X的长度小于数组Y的长度(第6章字符数组的定义)(27)以下程序的输出结果是: DA)AfghdEFG B)Abfhd C)Afghd D)Afgd#includemain( ){ char *p1,*p2,str[50]="ABCDEFG";p1="abcd";p2="efgh";strcpy(str+1,p2+1);strcpy(str+3,p1+3);printf("%s",str);}(第6章字符串处理函数;第9章字符串指针)(28)下面哪个程序段编译会出错: DA) max(int x,int y,int *z) B) max(int x, int y){ *z=x>y?x:y;} {return x>y?x:y;}C) max(int x,int y) D) int max(int x, y){ int z; { int zz=x>y?x:y; z=x>y?x:y;return z;} return z;}(29)下列程序执行后输出的结果是: D#include 〈stdio.h〉f(int a){ int b=0;static c=3:a=c+ +,b+ +;returu(a);}main( ){ int a=2,i,k;for(i=0;i<2;i+ +)k=f(a+ +);printf("%d\n",k);}A)3 B)0 C)5 D)4(第7章静态变量)(30)下列程序执行后输出的结果是: Aint d=1;fun (int q){ int d=5;d + =q+ +;printf("%d".d);}main( ){ int a=3;fun(a);d + = a + +;printf("%d\n",d);}A)8 4 B)9 6 C)9 4 D)8 5(第7章函数调用;第3章复合赋值运算符)(31)以下程序的输出结果是: Dmain(){ int x=10,y=10;printf("%d %d\n",x--,--y);}A)10 10 B)9 9C)9 10 D)10 9(第7章函数调用时,参数结合方式:右结合)(32)有以下程序int fun(int x , int y , int *cp , int *dp){ *cp=x+y; *dp=x-y; }main(){ int a, b, c, d;a=30; b=50;fun(a,b,&c,&d);printf("%d,%d\n", c, d);}输出结果是: CA)50,30 B)30,50 C)80,-20 D)80,20(第7章函数调用;第9章指针变量做参数)(33)执行下面的程序后,a的值是: B#define SQR(X) X*Xmain( ){ int a=10,k=2,m=1;a/=SQR(k+m)/SQR(k+m);printf("%d\n",a);}A)10 B)1 C)9 D)0(第8章带参宏定义)(34) 以下有关宏替换的叙述不正确的是: DA) 宏替换不占用运行时间 B)宏名无类型C)宏替换只是字符替换 D)宏名必须用大写字母表示(第8章宏定义)(35)C语言的编译系统对宏命令的处理是: DA) 在程序运行时进行的B) 在程序连接时进行的C) 和C程序中的其它语句同时进行编译的D) 在对源程序中其它成份正式编译之前进行的(第8章宏定义运行特点)(36)若有宏定义如下:#define X 5#define Y X+1#define Z Y * X / 2则执行以下printf语句后,输出结果是: Dint a; a=Y;Printf("%d\n", Z);Printf("%d\n", - - a);A) 7 B) 12 C) 12 D) 76 6 5 5(第7章函数调用;第8章带参宏定义)37、若有以下的定义:int t[3][2];能正确表示t数组元素地址的表达式是: DA) &t[3][2]B) t[3][2] C) t[1][0] D) t[2]+138、若已定义x和y为double类型,则表达式:x=1,y=x+3/2的值是: CA)1 B)2C)2.0 D)2.539、当c的值不为0时,在下列选项中能正确将c的值赋给变量a、b的是: CA)c=b=a;B)(a=c)‖(b=c);C)(a=c)&&(b=c);D)a=c=b;40、C语言的编译系统对宏命令的处理是: DA) 在程序运行时进行的B) 在程序连接时进行的C) 和C程序中的其它语句同时进行编译的D) 在对源程序中其它成份正式编译之前进行的(41)请读程序:#define ADD(x) x+xmain(){int m=1, n=2, k=3;int sum=ADD(m+n) * k;printf("sum=%d", sum);}上面程序的运行结果是: BA) sum=9 B) sum=10 C) sum=12 D) sum=18(第8章带参宏定义)(42)在宏定义 #define PI 3.14159中,用宏名PI代替一个: DA) 常量 B)单精度数 C)双精度数 D)字符串(第8章宏定义)(43)设有以下定义:int a[4][3]={1,2,3,4,5,6,7,8,9,10,11,12};int (*prt)[3]=a,*p=a[0]则下列能够正确表示数组元素a[1][2]的表达式是: DA)*((*prt+1)[2]) B)*(*(p+5))C)(*prt+1)+2 D)*(*(a+1)+2)(第9章数组指针与指向主组的指针)44、能正确表示“当x的取值在[1,10]和[200,210]范围内为真,否则为假“的表达式是___C____。
(完整版)C语言各章节复习题(带答案)
一、C语言概述练习题选择1.一个C程序的执行是从。
A) 本程序的main函数开始,到main函数结束B) 本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C) 本程序文件的第一个函数开始,到本程序main函数结束D) 本程序的main函数开始,到本程序文件的最后一个函数结束2.以下叙述不正确的是。
A) 一个C源程序必须包含一个main函数 B)一个C源程序可由一个或多个函数组成C) C程序的基本组成单位是函数 D) 在C程序中,注释说明只能位于一条语句的后面3.以下叙述正确的是。
A) 在对一个C程序进行编译的过程中,可发现注释中的拼写错误B) 在C程序中,main函数必须位于程序的最前面C) C语言本身没有输入输出语句 D) C程序的每行中只能写一条语句4.一个C语言程序是由。
A)一个主程序和若干个子程序组成 B) 函数组成 C) 若干过程组成 D) 若干子程序组成5.计算机高级语言程序的运行方法有编译执行和解释执行两种,以下叙述中正确的是。
A) C语言程序仅可以编译执行B) C语言程序仅可以解释执行C) C语言程序既可以编译执行又可以解释执行D) 以上说法都不对6.以下叙述中错误的是。
A) C语言的可执行程序是由一系列机器指令构成的B)用C语言编写的源程序不能直接在计算机上运行C)通过编译得到的二进制目标程序需要连接才可以运行D)在没有安装C语言集成开发环境的机器上不能运行C源程序生成的.exe 文件7.以下叙述正确的是。
A) C语言程序是由过程和函数组成的B) C语言函数可以嵌套调用,例如:fun(fun(x))C) C语言函数不可以单独编译 D) C语言中除了main函数,其他函数不可作为单独文件形式存在二、数据类型、运算符与表达式选择.1.若x、i、j、k都是int型变量,则计算下面表达式后,x的值为x=(i=4,j=16,k=32) A) 4 B) 16 C) 32D) 522.下列四组选项中,均不是C语言关键字的选项是。
C语言复习题及参考答案
C语言复习题及参考答案一、单项选择1、以下叙述正确的是:__B__。
A)C语言的源程序不必通过编译就可以直接运行。
B)C语言中的每条可执行语句最终都将被转换成二进制的机器指令。
C)C语言源程序经编译形成的二进制代码可以直接运行。
D)C语言中的函数不可以单独进行编译。
2、以下4个用户定义标识符中,全部合法的一组是__A__。
A)_main enclude sin B)if –max turbo C)txt REAL 3COM D)int k_2 _001 3、以下不能定义为用户标识符的是_D__。
A)scanf B)Void C)_3com D)int4、C语言中用于结构化程序设计的3种基本结构是__A__。
A)顺序结构、选择结构、循环结构B)if、switch、breakC)for、while、do-whileD)if、for、continue5、为解决某一特定问题而设计的指令序列称为__C__。
A)文档B)语言C)程序D)系统6、用高级程序设计语言编写的程序称为__C__。
A)目标程序B)可执行程序C)源程序D)伪代码7、能将高级语言编写的源程序转换成目标程序的是__B__。
A)编辑程序B)编译程序C)驱动程序D)链接程序8、下列叙述中,正确一条是__C__。
A)计算机语言中,只有机器语言属于低级语言。
B)高级语言源程序可以被计算机直接执行。
C)C语言属于高级语言。
D)机器语言是所用机器无关的。
9、以下符合C语言语法的实型常量是__C__。
A)1.2E0.5B)3.14159E C).5E-3D)E1510、下面叙述正确的是__A___。
A)C程序中注释部分可以出现在程序中任何合适的地方。
B)花括号“{”和“}”只能作为函数体的定界符。
C)构成C程序的基本单位是函数,所有函数名都可以由用户命名。
D)分号是C语句之间的分隔符,不是语句的一部分。
11、设有以下定义:int a=0; double b=1.25; char c=’A’;#define d 2则下面语句中,错误是__D__。
(完整版)C语言基础练习题(含答案)
目录第1-3章C语言基础知识习题 (2)1 选择题 (2)2 填空题 (7)3 答案及部分解析 (9)第4章选择结构习题 (11)1 选择题 (11)2 填空题 (17)3 答案及部分解析 (23)第5章循环结构习题 (26)1 选择题 (26)2 填空题: (32)3 答案及部分解题分析 (39)第6章数组习题 (41)1. 单项选择题 (41)2. 填空题 (44)3. 判断题 (45)4. 程序填空题 (45)5. 阅读程序,分析程序的功能。
(49)第7章函数习题 (55)1. 单项选择题 (55)2. 填空题 (56)3. 判断题 (57)4. 程序填空题 (58)5. 写出下列程序运行结果 (59)第8章指针习题 (67)1 选择题 (67)2 填空题 (69)第1-3章C语言基础知识习题1 选择题1. 以下不是C语言的特点的是()。
A、语言简洁紧凑B、能够编制出功能复杂的程序C、C语言可以直接对硬件操作D、C语言移植性好2.下列字符序列中,不可用作C语言标识符的是()。
A.abc123 B.no.1 C._123_ D._ok3.正确的C语言标识符是()。
A._buy_2 B.2_buy C.?_buy D.buy?4. 请选出可用作C语言用户标识符的一组标识符()。
A.void B.a3_b3 C.For D.2adefine _123 -abc DOWORD IF Case sizeof5. 下列符号中,不属于转义字符的是()。
A.\\ B.\0xAA C.\t D.\06.不属于C语言关键字的是()。
A.int B.break C.while D.character7.是C语言提供的合法关键字的是()。
A.Float B.signed C.integer D.Char8.以下不能定义为用户标示符的是()。
A.scanf B.Void C._3com_ D.int9.一个C程序是由()。
C语言复习题(精简)
序号 题目 A B C 定义int a[10]={6,7,8, 9,10};是将这5 个初值依次赋 给a[0]至a[4] 函数的实参和 形参可以是相 同的名字 D 如有定义char a[]="student" ; 则数组a的长 度为7 在main()中定 义的变量都可 以在其它被调 函数中直接使 用 将串str2连接 到串str1中后 再将串str1复 制到串str3中 main函数是由 系统调用的 函数中定义的 局部变量的作 用域在函数内 部 在不同的函数 中可以使用相 同名字的变量 外部变量与局 部变量的作用 范围不同 E 正确 答案 若有定义 double x[3][5]; 则x ABCE 数组中行下标 的下限为0,列 小标的上限为4 外部类型的变 量只能定义一 次,但可在不 BCE 同地方声明多 次 将串str2连接 到串str1中后 ABDE 再将串str3复 制到串str1中 若要通过函数 参数带回多个 返回值,则应 ACDE 使用按地址传 送的参数结合 函数必须有返 回值,否则不 能使用函数 如果形参与实 参的类型顺序 不一致,以实 参顺序为准 在C的函数中, 最好使用全局 变量 ABD
以上都不对
AD
以上都不对 put( )
BCD ABD
数组名实质上 是数组的首地 以下关于数组的描述中,正确 15 址,是一个常 的有: 量,不能对其 赋值
一个一维数 组,它的每一 个元素也是类 型相同的一维 数组时,便构 一个一维数 若有说 如有定义int 组,它的每一 明:static int 以下关于数组的描述中,错误 a[2][3];则数 16 个元素也是类 a[3][3]; 那么 的有: 组a的最后一个 型相同的一维 数组a中每个元 元素为a[1][2] 数组时,便构 素初值为0 因为二维数组a 中初值的个数 不能被第二维 若有说明:int 数组a的每个元 二维数组a的第 大小的值整 17 a[][4]={0,0};,则下面正确 素都可得到初 一维大小为1 除,则第一维 的叙述有: 值0 的大小等于所 得商数再加1, 故数组a的行数 有定义char 若有定义char a[3]; 则定义 以下关于数组的描述中,正确 a[]="hello"; 18 了a[1]、a[2] 的有: ,则数组a的长 、a[3]三个数 度为6 组元素 若有定义char 在C语言中,允 a[20];,则可 以下关于数组的描述中,正确 许用字符串来 19 以通过a="I am 的有: 直接初始化字 a boy";给a赋 符数组 值 若有char 字符数组的输 a[10]={1,2,3} 以下关于数组的描述中,错误 20 出不能一次性 ;,则是将3个 的有: 的整体输出 初值依次赋给 a[0]至a[2] char char str[]={'h','e 21 下列语句中,正确的有: str[5]="hello ','l','l','o' "; ,'\0'}; 定义了一维int型数组a[10] 22 a[0]=1; a[10]=2; 后,下面正确的引用有: 数组名实质上 在定义数组 是数组的首地 以下关于数组的描述中,正确 时,有时可以 23 址,是一个变 的有: 将该数组的维 量地址,可对 数省略 其进行赋值 设有以下说明语句 struct stu struct 是结构 struct stu 是 { int a;float b; 24 体类型的关键 用户定义的结 }stutype; 字 构体类型 则以下叙述正确的是: 多选题 构成字符数组 的各个元素必 须是字符类型 的数据 若有char a[10]={1,2,3} ;,则是将3个 初值依次赋给 a[1]至a[3] 构成字符数组 的各个元素可 以是不同数据 类型的元素
c语言程序基础练习题500道(附答案)
1.下列四组选项中,均不是C语言关健字的选项是( A )。
A) define B) gect C) include D) whileIF char scanf gotype printf case pow2.下面四个选项中,均是合法整型常量的选项是( A )。
A)160 B)-0xcdf C) -01 D)-0x48a-0xffff 01a 986,012 2e5011 0xe 0668 0x3.下面四个选项中,均是不合法的转义符的选项是( B )。
A) '\"' B) '\1011' C) '\011' D) '\abc''\\' '\' '\f' '\101''xf' '\A' '\}' 'x1f'4.下面不正确的字符串常量是( A )。
A)'abc' B)"12'12" C)"0" D)" "5.以下选项中不合法的用户标识符是( A )。
A)abc.c B)file C)Main D)PRINT6.C语言提供的合法关键字是( D )。
A) swithB) cherC) CaseD)default7.下列标识符组中,合法的用户标识符为 AA)_0123与ssipedB)del-word与signedC)list与*jerD) keep%与wind8.在C语言中,逻辑值"真"的表示是用( C )。
A) true B) 整型值0 C)非另整型值D) T9若有以下定义char s='\092';则该语句( b )A)使s的值包含一个字符B)定义不合法,s的值不确定C)使s的值包含4个字符D)使s的值包含3个字符10设C语言中,int类型数据占2个字节,则float类型数据占(D )个字节。
c语言基础习题、复习题(含答案)
c语言基础习题、复习题(含答案)《C语言设计》复习题一选择题1、以下说法中正确的是(C )。
C语言程序总是从main()函数开始执行2、若已定义x和y为double类型,则表达式:x=1,y=x+3/2的值是___C___.C. 2.03、以下叙述正确的是(D )。
D. 用do…while语句构成循环时,在while后的表达式为零时结束循环4、C程序是( B)B. 从Main函数开始5、设x、y、z和k都是int型变量,则执行表达式:x=(y=4,z=16,k=32)后,x的值为__C____。
C. 326、设int b=2;表达式b/(b*2)的值是___A_____.A. 07、表示关系X<=Y<=Z的C语言表达式为__A___.A. (X < =Y)&&(Y < =Z)8、已知int x=10,y=20,z=30;以下语句执行后x,y,z的值是BB. x=20,y=30,z=309、设A=3,B=4,执行printf("%d,%d",(A,B),(B,A));的输出是___B___.B. 4,310、下面判断正确的是CC. char *s="china";等价于char *s;s="china";11、若有说明:int a[10];,则对a数组元素的正确引用是(D )。
D. a[10-10]12、在C语言中,int、char和short三种类型数据在内存中所占用的字节数DD. 由所用机器的机器字长决定13、C语言规定,函数返回值的类型是由DD. 在定义该函数时所指定的函数类型所决定14、与y=(x > 0?1:x < 0?-1:0);的功能相同的if语句是AA. if(x > 0) y=1; else if(x < 0) y=-1; else y=015、执行语句:for(i=1;i++ < 4;)后;变量i的值是(C )C. 516、语句while(!E);中的表达式!E等价于_____A__A. E==017、假定a和b为int型变量,则执行以下语句后b的值为DD. -418、对以下说明语句的正确理解是____B____int a[10]={6,7,8,9,10};B. 将5个初值依次赋给a[0]至a[4]19、以下不能对二维数组a进行正确初始化的语句是CC. int a[2][3]={{1,2},{3,4},{5,6}}; 20、在C语言中,一维数组的定义方式为:类型说明符数组名___D______D. [整型常量]21、下列说法中正确的是_D___。
C语言复习题及答案
复习A:一、单项选择题1、如果要把常量327存入变量a中,a不能定义的类型是哪一个?()A)int B)char C)long D)float2、若x 为unsigned int 型变量,则执行下列语句后x值为()x = 65535;printf(“%d\n”,x);A)65535 B)1 C)无定值D)-13、有以下程序main(){int a=1,b=2,m=0,n=0,k;k=(n=b>a)||(m=a<b);printf(″%d,%d\n″,k,m);}程序运行后的输出结果是()A)0,0 B) 0,1 C)1,0 D)1,14、在C语言中,如果下面的变量都是int类型,则输出的结果是()。
sum=pad=5; pAd=sum + + ,pAd + +, + + pAd;printf("%d\n",pad);A) 7 B) 6 C) 5 D) 45、以下程序的输出结果是()。
main(){ int a=4,b=5,c=0,d;d=!a&&!b||!c;printf("%d\n",d);}A)1 B)0 C)非0的数D)-16、当执行以下程序段时()。
x=-1;do{x=x*x;}while(!x);A)循环体将执行一次B)循环体将执行两次C)循环体将执行无限次D)系统将提示有语法错误7、全局变量的存储类型可以定义为()。
A)auto或static B)extern或registerC)auto或extern D)extern或static8、定义全局变量时,若变量的的存储类别缺省,则默认的存储类型是()。
A)auto B)registerC)extern D)static9、已知:int a, x; 则正确的赋值语句是()。
A)a=(a[1]+a{2})/2; B)a*=*a+1;C)a=(x=1, x++, x+2); D)a="good";10、已知:int a, *p=&a; 则下列函数调用中错误的是()。
C语言基础知识习题答案——第一章
第一章C语言基础知识一,选择题1 答案是AA正确B {}可以作为复合语句的标志C main 函数不是用户命名的D 分号是语句结束的标志,肯定是语句的一部分做这个题目需要对书上的概念透彻的理解2 答案是AA 错误用户标识符:命名时,标识符的选择由用户自定,但是不能与关键字相同,所以A选项错误。
这个题目考察用户标识符3 答案是B用户标识符是标识符,所以可以是有下划线,但是中划线不属于字母,数字,下划线其中一种。
这个题目考察用户标识符的概念。
4 答案是Bdefine 是预定义标识符,而预定义标识符可以是用户标识符,所以define可以是用户标识,if 是关键字,而关键字不能是用户标识符,所以if不可以是用户标识符5 答案是Dlong 是关键字,参照附录二注:6--13 考察用户标识符概念6 答案是DD答案以数字2开头了,不符合标识符定义7 答案是CC答案以数字开头了8 答案是Dint 是关键字9 答案是B答案A 是关键字,答案C是以数字开头了,不符合概念,答案D出现了小数点10 答案是A答案A出现了小数点11 答案是C答案C 以数字开头了12 答案是AB答案中float 是关键字,C答案中3c以数字3开头了,D答案中-5d 中- 不属于字母,数字,下划线中一种13 答案是AB答案中-max中-错误,C答案中3COM以字母3开头了,D答案中int 是关键字,不是用户标识符14 答案是BA答案中15. 后面不应该有点,C答案中出现了逗号,D中字母B有问题15 答案是DVisual C++6.0中int类型的变量占的字节数为4。
16 答案是BB中出现了8,而八进制只能有0到7组成17 答案是D答案D中开头是0不是o18 答案是C答案A中E后面是整数,0.5是小数答案B 中E后面不能为空答案D中E前面不能为空本题目考察指数的表示形式19 答案是C答案A中2.0有问题,不能为小数形式答案B中E前面不能为空答案D中E后面不能为空本题目考察指数的表示形式20 答案是AB中八进制中不能出现数字8,C中e后面不能是小数,D中e后面不能为空21 答案是BB中0.4是小数,不正确22 答案是CC中0.5是小数,不正确23 答案是D3.6-5/2+1.2+5%2=3.6-2+1.2+1=3.8本题目考察算术运算符,需要注意整数除以整数结果只能是整数24 答案是D%不能用于实型的计算25 答案是DD答案中$不属于字母,数字,下划线26 答案是AA答案是逗号表达式,B答案中x+1=y是赋值表达式,左边只能是变量,而这里是x+1, 同理答案C中x+10也是错误的,在D答案中,考察的是强制类型转换,正确的是(double)x/1027 答案是A本题考察的是注释需要注意的地方,具体解答见课本第2页中间部分28 答案是B答案A中n2没有定义,答案C中在定义f之前不能使用它,答案D 中E后面必须是整数29 答案是C考察的是强制类型转换,正确的是k%(int)f30 答案是D本题目类似与第七课时的例一,解题方法是要抓住++m,--n,--m,表达式的值是变量变化之后的值,而n--表达式的值是变量n变化之前的值31 答案是B本题目考察的是负整数与无符号正整数在计算机中存放的格式的一样的,但表示的不同的两个数32 答案是CA答案中%运算对象不能为实型,26.8错误,B答案中考察的赋值运算符,赋值运算符左边必须是变量,所以赋值运算符左边1+2错误,同理答案D错误33 答案是C本题目考察的是课本第15页的关于自加与自减运算符的第一点说明,即增量运算符的运算对象只能是变量,而在C答案中++(i+1)中,i+1是表达式34 答案是B本题目考察的是整数除以整数结果是整数,在B答案中1/2结果是0,导致整个表达式的值是0,明显是错误的35 答案是D对于++、--单目运算符来说,其运算对象可以是char型、int型和float 型变量36 答案是A本题目主要考察n++表达式的值是n变化之前的值,然后使n的值增加137 答案是Bc=a/b+0.4 c=8/5+0.4 c=1+0.4 c=1.4 因为c 是int 型的,所以c的值是1 ,做此题目需要仔细阅读题目38 答案是D(int)a+b/b=(int)5.5+2.5/2.5=5+1.000000=b=6.000000同样a,b的类型是double型的39 答案是Dlong 和short不能相互修饰40 答案是C标识符中不能有$41答案是CA选项中,在变量赋值时不能赋给表达式,而y*5是表达式;选项B 中进行强制类型转换时,类型标识符要加上括号,所以错误;选项D 中,%(求余运算符)运算对象只能是整形数。
C语言考试复习专用三套题附答案
C语言考试复习专用三套题附答案《C语言程序设计》习题集习题一一、语言基础(共20分,每题2分)(一)设某为一数字字符,则其所对应的十进制数值为A)某B)某-‘0’C)某某D)&某(二)说明语句char=‘\\t’,使包含了几个字符?A)1B)2C)3D)说明有错(三)设a=6,b=4,则表达式b某=a+3的值为A)3B)18C)27D)36(四)若给定表达式(m)?a++:a--,则其中表达式m和等价。
A)m==0B)m!=0C)m=0D)m=1(五)设有说明语句inta[10],则数组a包括了个数组元素。
A)1B)9C)10D)20(六)以下函数tet返回值类型为tet(int某){printf(“%f\\n”,(float)某);}A)intB)floatC)voidD)不确定或错误(七)C语言规定,main函数的参数A)只能有0个B)只能有0个或一个C)只能有0个或2个D)可有任意个(八)设某为整型变量,p基类型为整型的指针变量,则正确的赋值表达式是A)p=&某B)p=某C)某p=&某D)某p=某某(九)TurboC中,int型数据在存储器中占二个字节,则以下类型数据在存储器中占的字节数为:tructtet{int某;floaty;charz;};A)2B)3C)6D)7(十)rewind()函数的作用是A)重新打开文件B)使文件位置指针重新回到文件的开始C)使文件位置指针重新回到文件的末D)返回文件长度值二、阅读下列程序,写出运行结果(共18分,每题3分)[程序1]#includevoidmain(){inta=1,b=4,c=2;运行结果:1a=(a+b)/c;printf(“%d\\n”,--a);}[程序2]voidmain(){charc1=67;/某‘A’的ASCII码值为65某/if(‘A’<=c1&&c1<=’Z’)运行结果:67,Dprintf(“%d,%c”,c1,c1+1);eleprintf(“%c”,c1);}[程序3]viodmain(){inta=0,n=5;运行结果:1,5,4,3,2,0for(;;){a++;n--;printf(“%d,”,a);a=n;if(n==0)break;}printf(“%d”,a);}[程序4]main(){inti,j;运行结果:1,2,4,8,16,32,64,128,256,512taticinta[10]={1,1,1,1,1,1,1,1,1,1};for(i=0;i<10;i++)for(j=0; jprintf(“%d,”,a[i]);}[程序5]intk=2;f(intm)运行结果:6,8{m+=k;k+=m;5,9printf(“%d,%d\\n”,m,k++);}main(){inti=4;for(i++);printf(“%d,%d\\n”,i,k);}[程序6]voidmain(){taticinta[10],i;运行结果:13579for(i=0;i<10;i++)a[i]=i+1;for(i=0;i<10;i=i+2)printf(“%d”,某(a+i));}三、阅读分析下列程序,在处填上适当的内容使程序(或函数)完整(共21分,每空3分)(一)以下程序输出所有大写字母和其对应的ASCII码值。
C语言基础复习题
一、选择题1、若有以下程序段(n所赋的是八进制数)int m=32767,n=032767;printf("%d,%o\n",m,n);执行后输出结果是()。
A.32767,32767B.32767,032767C.32767,77777D.32767,0777772、有以下程序段int m=0,n=0;char c='a';scanf("%d%c%d",&m,&c,&n);printf("%d,%c,%d\n",m,c,n);若从键盘上输入:10A10<回车>,则输出结果是:()。
A.10,A,10 B.10,a,10 C.10,a,0 D.10,A,03、有以下程序main(){int i=10,j=1;printf("%d,%d\n",i--,++j);}执行后输出的结果是()。
A.9,2B.10,2C.9,1D.10,14、以下选项中可作为C语言合法整数的是()。
A.10110BB.0386C.0xffaD.x2a25、以下不能定义为用户标识符的是()。
A.scanfB.VoidC._3com_D.int6、有以下程序main(){int a; char c=10;float f=100.0;double x;a=f/=c*=(x=6.5);printf("%d%d%3.1f%3.1f\n",a,c,f,x);}程序运行后的输出结果是()。
A.16516.5B.1651.56.5C.1651.06.5D.2651.56.57、以下选项中非法的表达式是()。
A.0<=x<100B.i=j==0C.(char)(65+3)D.x+1=x+18、有以下程序main(){int a=1,b=2,m=0,n=0,k;k=(n=b>a)||(m=a<b);printf("%d,%d\n",k,m);}程序运行后的输出结果是()。
C语言基础知识综合练习题
一、 C语言基本知识和基本语句(一)选择题1.设a,b和c都是int型变量,且a=3,b=4,c=5则下面的表达式中,值为零的表达式是()。
A)‘a’&&’b’ B) a<=bC) a || b+c&&b-c D) ! ((a<b)&&! C|| 1)2.设ch是char型变量,其值为A字符,且有表达式:ch= (ch >= ‘A’ && ch <=‘Z’) ? ( ch + 32):ch,则表达式ch的值是()字符。
A)A B) a C) Z D) z3.若x和y都是int 型变量,x=100,y=200,且有程序段:printf(“%d”,(x,y));则输出结果是()。
A) 200 B)100 C) 100,200 D)输出格式不够,输出不确定的值4.C语言中最简单的数据类型包括()。
A)整型、实型、逻辑型 B) 整型、单精度型、双精度、字符型C) 整型、字符型、逻辑型 D) 整型、实型、逻辑型、字符型5.C语言中,运算对象必须是整型的运算符是()。
A)% B) / C) % 和/ D) **6.数学关系x≥y≥z ,它对应C语言表达式是()。
A)(x>=y)&& (y>=z ) B) (x>=y) AND (y>=z )C) (x>=y>=z) D) (x>=y) & (y>=z )7.以下说法中正确的是()。
A)C语言程序总是从第一个定义的函数开始执行B) 在C语言程序中,要调用的函数必须在main()函数中定义C) C语言程序总是从main()函数开始执行D) C语言程序中的main()函数必须放在程序的开始部分8.设int x=10,y=3,z;则语句printf (“%d\n”,z=(x%y,x/y));的输出结果是()。
c语言复习试题及答案
c语言复习试题及答案C语言复习试题及答案一、选择题1. C语言中,一个整型变量的取值范围是:A. -128 到 127B. -32768 到 32767C. -2147483648 到 2147483647D. 取决于编译器答案:D2. 下列哪个关键字用于定义C语言的结构体?A. structB. defineC. unionD. enum答案:A3. C语言中,字符串在内存中是以什么方式存储的?A. 字符串名B. 字符串长度C. 字符串本身D. 字符串结束标志 '\0'答案:D4. 在C语言中,函数返回值的类型由什么决定?A. return 语句B. 函数名C. 函数定义时指定的类型D. 函数参数的类型答案:C5. 下列哪个操作符不能用于位操作?A. &B. |C. ^D. ++答案:D二、填空题6. C语言中,预处理器指令 `#include` 的作用是_______。
答案:引入其他文件7. `int main()` 函数中的 `void` 表示该函数_______。
答案:不返回任何值8. 在C语言中,数组的索引是从_______开始的。
答案:09. `printf` 函数的返回类型是_______。
答案:int10. 表达式 `3.0 / 0` 在C语言中会导致_______。
答案:运行时错误三、简答题11. 请简述C语言中指针的概念及其用途。
答案:指针是一种变量,它存储的是另一个变量的内存地址。
指针在C语言中用于直接访问内存、动态内存分配、数组操作、函数参数传递等。
12. 解释C语言中数组和指针之间的关系。
答案:在C语言中,数组名可以作为指针使用,它指向数组的第一个元素的地址。
通过指针可以遍历数组,也可以通过指针修改数组元素的值。
四、编程题13. 编写一个C语言程序,实现对整数数组的排序。
```c#include <stdio.h>void sort(int arr[], int n) {int i, j, temp, min_idx;for (i = 0; i < n - 1; i++) {min_idx = i;for (j = i + 1; j < n; j++) {if (arr[j] < arr[min_idx]) {min_idx = j;}}if (min_idx != i) {temp = arr[i];arr[i] = arr[min_idx];arr[min_idx] = temp;}}}int main() {int arr[] = {64, 34, 25, 12, 22, 11, 90}; int n = sizeof(arr) / sizeof(arr[0]);sort(arr, n);printf("Sorted array: \n");for (int i = 0; i < n; i++) {printf("%d ", arr[i]);}printf("\n");return 0;}```14. 编写一个C语言程序,实现字符串的反转。
C语言考试复习专用三套题附答案(1)
《C语言程序设计》习题集习题一一、语言基础(共20分,每题2分)(二)说明语句char s=‘\t’,使s包含了几个字符?。
A)1 B)2 C)3 D)说明有错(三)设a=6,b=4,则表达式b*=a+3A)3 B)18 C)(四)若给定表达式(m)?a++:a--和等价。
A)m==0 B)m!=0 C)m=0 D)m=1(五)设有说明语句int a[10],则数组a包括了个数组元素。
A)1 B)9 C)10 D)20(六)以下函数test返回值类型为。
test(int x){ printf(“%f\n”,(float)x);}A)int B)float C)void D)不确定或错误二、阅读下列程序,写出运行结果(共18分,每题3分)[程序1]#include <stdio.h>void main( ){ int a=1,b=4,c=2; 运行结果: 1a=(a+b)/c;printf(“%d \n”,--a);}[程序2]void main ( ){ char c1=67; /*‘A’的ASCII码值为65 */if (‘A’ <=c1 && c1<=’Z’) 运行结果: 67,Dprintf(“%d,%c”,c1,c1+1);else printf(“%c”,c1); }[程序3]viod main ( ){ int a=0, n=5; 运行结果: 1,5,4,3,2,0for ( ; ; ){ a++; n--;printf(“%d,”,a);a=n;if (n==0) break;}printf(“%d”,a);}[程序4]main ( ){ int i, j; 运行结果: 1,2,4,8,16,32,64,128,256,512 static int a[10]={1,1,1,1,1,1,1,1,1,1};for (i=0;i<10;i++)for (j=0;j<i;j++)a[i]=a[i]+a[j];for (i=0;i<10;i++)printf(“%d,”,a[i]);}[程序5]int k=2;f (int m) 运行结果: 6,8{ m+=k;k+=m; 5,9printf(“%d,%d \n”,m,k++);}main ( ){ int i=4;for (i++);printf(“%d,%d \n”,i,k); }[程序6]void main ( ){ static int a[10],i; 运行结果: 1 3 5 7 9for (i=0;i<10;i++)a[i]=i+1;for (i=0;i<10;i=i+2)printf(“%d”,*(a+i));}三、阅读分析下列程序,在处填上适当的内容使程序(或函数)完整(共21分,每空3分)(一)以下程序输出所有大写字母和其对应的ASCII码值。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
三、编写程序
1、编写一个C程序,输入a、b、c 3个数,输出其中最大的数。
2、求1—50的之和。
3、从键盘输入一个大写字母,要求改用小写字母输出。
4、利用while语句,计算1+1/2+1/4+…+1/100的值,并显示出来。
6、在C语言中,用关键字______定义单精度实型变量。
7、表达式S=12应当读做“______”。
8、C语言源程序的基本单位是______。
9、设int x=9,y=8;表达式x-=y+1的结果是______。
10、若a为整型变量,a=12,则表达式:a * =2+3的值______。
11、调用C语言对输入输出处理的库函数时,在# include命令行中应包含的头文件是______。
12、表达式9%5的结果是______。
13、若a为整型变量,a=12,则表达式:a+=4的值______。
14、 在C语言中,要求运算数必须是整型的运算符是______。
15、在C语言中,用______表示逻辑“真”值。
16、7、表达式10/3的结果是______。
17、通常一个字节包含______个二进制位。
18、 假设所有变量均为整型,a=2,b=5,b++则表达式a+b的值是______。
19、在C语言中,最基本的数据类型只有四种,它们分别是:______、______、______和double。
20、一个C程序有且仅有一个______函数。
21、若a为整型变量,a=12,则表达式:a-=2的值______。
1、一个C语言程序的语句至少应包含一个______。
2、C语言源程序文件的扩展名是______,经过编译、连接后,生成文件的扩展名是______。
3、结构化程序由顺Байду номын сангаас结构、______和______三种基本结构组成。
4、C语言的执行是从______开始执行的。
5、C源程序的语句分隔符是______。
{int a=2,b=-1,c=2;
if(a<b)
if(b<0) c=0;
else c+=1;
printf(“%d\n”,c);
}
2、
#include <stdio.h>
main()
{ char c=’A’+10;
printf(“c=%c\n”,c);
22、在C语言中,有三种逻辑运算符,它们分别是:______、______、______。
23、在C语言中,字符输入函数和字符输出函数分别是:______和______。
24、C程序开发的四个步骤是______、______、______和执行。
25、C程序的结构分别是:顺序结构、______、______。
}
3、#include <stdio.h>
main()
{char c=’a’;
int I=97;
printf(“%c,%d\n”,c,c);
}
4、#include <stdio.h>
main()
{ int a=5,b=8;
if(a==b) printf("A=B\n");
26、if语句中的表达式可以是关系表达式、______、______。
27、______是C语言中惟一一个三元运算符。
28、C语言提供的预处理命令主要包括如下三种:宏定义、______、______。
二、阅读程序,写出下列程序运行结果。
1、#include <stdio.h>
main()
5、输入两个整数,输出其中的大数。
6、利用while语句,计算1+1/3+1/5+…+1/99的值,并显示出来