
第一部分C语言基础知识 1,1填空题 1,要把高级语言编写的源程序转换为目标程序,需要使用 A)编辑程序助票动程序)诊新程序)编译程序 2,若有说明语句:inta,b,G,k:,则能正确从健盘读入三个竖数分别赋给变量a: b、c的语句是 )scanf(f”,表a,kh,d):盼scanf(%nd”,kn,,kd: C)scanf'”,a,b,d0:)scanf(nid”,a,b,d0: 3,以下选项中合法的用户标识符是一。 A)long B)2Test C)3Dmax D)A.dat 4.设a和b均为double型常量,且a5.5.b-25,则表达式(int)ath/b的值是一 A)6.500000B)6C95.500000D)6.000000 5,己知1,人,k为1t型变量,若从健盘输入:1,23(回车>,使1的值为1、J的值 为2、k的值为3,以下选项中正确的输入语句是一 h)scanf2找2d2d°,Mi,&j.Mk): B)scanf(""sd %d sd”,最i,&j,k): C0 scanf(d,d,d°,i.j,k): D)scanf ("id.jd,kd",&i.&j.&k) 8.C语言程序的执行,总是起始于《) A)程序中的第一条可执行语句 助程序中的第一个函数 C)ain函最 )包含文件中的第一个函数 ?,下列说法中正确的是0 )程序节写时,不区分大小写字母 B)C程序书写时,一行只能写一个语句 C)C程序书写时,一个语句可分成几行书写 )C程序书写时每行必须有行号 8.若有说明语句:1nta:f1omtb:,以下输入语句正确的是() A)scanf(fs广,a,h): B助scanf(f售d”,a,b): C)scanf ("sd,f,&a,&b) D)scanf ("v6.2fv6.2f".Aa.&h)
第一部分 C 语言基础知识 1.1 填空题 1.要把高级语言编写的源程序转换为目标程序,需要使用 A) 编辑程序 B) 驱动程序 C) 诊断程序 D) 编译程序 2. 若有说明语句:int a,b,c,*d=&c;,则能正确从键盘读入三个整数分别赋给变量 a、 b、c 的语句是 A) scanf("%d%d%d",&a,&b,d); B) scanf("%d%d%d",&a,&b,&d); C) scanf("%d%d%d",a,b,d); D) scanf("%d%d%d",a,b,*d); 3.以下选项中合法的用户标识符是______。 A) long B) _2Test C) 3Dmax D) A.dat 4.设 a 和 b 均为 double 型常量,且 a=5.5、b=2.5,则表达式(int)a+b/b 的值是______。 A) 6.500000 B) 6 C) 5.500000 D) 6.000000 5.已知 i、j、k 为 int 型变量,若从键盘输入:1,2,3,使 i 的值为 1、j 的值 为 2、k 的值为 3,以下选项中正确的输入语句是______。 A) scanf("%2d%2d%2d",&i,&j,&k); B) scanf(""%d %d %d",&i,&j,&k); C) scanf("%d,%d,%d",&i,&j,&k); D) scanf("i=%d,j=%d,k=%d",&i,&j,&k); 6.C 语言程序的执行,总是起始于()。 A) 程序中的第一条可执行语句 B) 程序中的第一个函数 C) main 函数 D) 包含文件中的第一个函数 7.下列说法中正确的是() A) C 程序书写时,不区分大小写字母 B) C 程序书写时,一行只能写一个语句 C) C 程序书写时,一个语句可分成几行书写 D) C 程序书写时每行必须有行号 8.若有说明语句:int a; float b;,以下输入语句正确的是() A) scanf("%f%f",&a,&b); B) scanf("%f%d",&a,&b); C) scanf("%d,%f",&a,&b); D) scanf("%6.2f%6.2f",&a,&b);

9,以下程序的输出结果是() fn() 【itx=11,y=11: printf(id\n,x-,一y): 011,11B10.10C910.11D)11,10 10,执行下面程序段。给x,y赋值时,不能作为数据分隔符的是() int x.y: scanf(d”,&x,&y》: A)空格卧Tab键C)国车D)延号 11,执行下面程序封,欲将25和25分别赋给a和b,正确的输入方法是【】, int a: float b; scanf (a"sd,bf".&a.Ab): A)2502.5 B助25,2.5 C0a=25,b=45 D)a-25▣b-2.5 12,英文小写字母d的ASC11码为100,英文大写字母D的SC1I码为 A)50B)66C)52D)68 13,以下定义语句中错误的是( A)int a=3,b=5: B)float xl:x2: C)char el,c2,c3: D)double y3,y4出 14.若将整数4和5硫给整型变量a和b,对于语句scanf(飞格”,&a,b):在从健 盘输入数据时,正确的数据输入格式为()。 A)4,5 B)45 C)4:5 0)45 15,若整型变量a和b的值分别为6和8,则下列语句printf(a=d,b-d”,n,b):的 输出结果为( A)6,8 B)68 C)a-6b-8D)a-6.b-8 16.C语言中的字符常量是以( )括起来的一个字符。 A)双引号B)单引号C)1D)中 17.C语言中的转义字符n的作用是(》。 A)回车换行 B)横向洗格 C)银向跳至本列下行 D)将光标移至本行行首
9.以下程序的输出结果是() main( ) { int x=11,y=11; printf("%d%d\\n",x--,--y); } A) 11,11 B) 10,10 C) 10,11 D) 11,10 10.执行下面程序段,给 x、y 赋值时,不能作为数据分隔符的是() int x,y; scanf("%d%d",&x,&y); A) 空格 B) Tab 键 C) 回车 D) 逗号 11.执行下面程序时,欲将 25 和 2.5 分别赋给 a 和 b,正确的输入方法是【 】。 int a; float b; scanf("a=%d,b=%f",&a,&b); A) 25□2.5 B) 25,2.5 C) a=25,b=5.5 D) a=25□b=2.5 12.英文小写字母 d 的 ASCII 码为 100,英文大写字母 D 的 ASCII 码为 A) 50 B) 66 C) 52 D) 68 13.以下定义语句中错误的是( )。 A)int a=3,b=5; B)float x1; x2; C)char c1,c2,c3; D)double y3, y4; 14.若将整数 4 和5赋给整型变量 a 和 b,对于语句 scanf("%d%d" , &a,&b);在从键 盘输入数据时,正确的数据输入格式为( )。 A)4,5 B)4 5 C)4:5 D)4#5 15.若整型变量 a 和 b 的值分别为6和8,则下列语句 printf("a=%d,b=%d",a,b); 的 输出结果为( )。 A)6, 8 B)6 8 C)a=6 b=8 D)a=6, b=8 16.C 语言中的字符常量是以( )括起来的一个字符。 A)双引号 B)单引号 C)\……\ D)*……* 17.C 语言中的转义字符\n 的作用是( )。 A)回车换行 B)横向跳格 C)纵向跳至本列下行 D)将光标移至本行行首

18,若有定:1nt=8,b=5,ct,执行语句c=a/b+0,4:后。c的值为 A01.4 助1 C02.0 D) 19.如果要肥常量327存入变量a中,a可以定义成哪些类型?(多选) A int B char C.long D.float 20,下面厚个表达式的值为4.(单选) A11/3 B.1L.0/3 C.(f1oat)11/3 D.(int)(1l.0/3+0.5 #include #include main() (int a=1.b=d,c=2: f10at1=5.5,-9.0.2: =(a+b)/c+sgrt ((double)y]*1.2/c+x: printf(sf\n",z) A0.9,800000 B盼.9,300000 C0.8.500000 0.8.000000 21.main( {intx=10,了”3: printf("sd'in',y=x/y) A0.0 B盼.1 0.3 )。不确定的植 22.ain() (int a: printf(d\n°:a-35,a*4,a5): A).65 0.20 C0.15 D).10 23.已如小写字母a的ASCI1码为97,大写字母A的ASCI1码为65。以下程序 nain() unsigned int a=32.b=66: printf("sc\n",a+b):
18.若有定义:int a=8,b=5,c;,执行语句 c=a/b+0.4;后,c 的值为 A) 1.4 B) 1 C) 2.0 D) 2 19.如果要把常量 327 存入变量 a 中,a 可以定义成哪些类型?(多选) A. int B. char C. long D. float 20.下面哪个表达式的值为 4.(单选) A. 11/3 B. 11.0/3 C. (float)11/3 D. (int)(11.0/3+0.5) #include #include main( ) {int a=1,b=4,c=2; float x=5.5,y=9.0,z; z=(a+b)/c+sqrt((double)y)*1.2/c+x; printf("%f\n",z); } A).9.800000 B).9.300000 C).8.500000 D).8.000000 21.main( ) {int x = 10, y = 3; printf("%d\n",y=x/y); } A).0 B).1 C).3 D). 不确定的值 22.main( ) {int a; printf("%d\n";(a=3*5,a*4,a+5)); } A).65 B).20 C).15 D).10 23.已知小写字母 a 的 ASCII 码为 97,大写字母 A 的 ASCII 码为 65。以下程序 main() { unsigned int a=32, b=66; printf("%c\n", a+b);

1 的结果为: A).66 助.98 C).b 0.B 24.设有如下定义 int x=10,y=3,2: 则语句 printf("d八n°,=(ax,x/y): 的输出结果是 A0.1 盼.0 0.4 D0.3 25.define S0服(X)X*X main() int a=10,k-2,ml: a/-Sqgk+a/qR(k+n): printf("%d\n",a) A).10 間.1 C0.9 D).0 26.#define MAX(x.y)(x)>(y)?(x)(y) main() int a=l.b=2,c=3,d-2.t; t=(a+h,c+d)*100: printr("sd\n",t) 1 的运行结果为: A0.500 B助.5 C0.3 00.300 27,以下程序的输出结果是 main() int x*10,y=10;
} 的结果为: A).66 B).98 C).b D).B 24.设有如下定义 int x=10,y=3,z; 则语句 printf("%d\n",z=(x%y,x/y)); 的输出结果是 A).1 B).0 C).4 D).3 25.#define SQR(X) X*X main() { 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 26.#define MAX(x, y) (x)>(y)?(x):(y) main() { int a=1, b=2, c=3, d=2, t; t=MAX(a+b, c+d)*100; printf("%d\n",t); } 的运行结果为: A).500 B).5 C).3 D).300 27.以下程序的输出结果是 main() { int x=10,y=10;

printf(八n°,一,-y): A0.10 10 B).99 0.0 10 D).109 28,语句:r1ntf(%d°,(a=2)级=-2):的输出结果是 ).无输出 ).结果不确 定 C0.-1 ).1 33、当c的值不为0时, 虎止确将c的值赋哈变量a、b A).c=b=a: B助.ac)lIb-e) C).(=c)接0=cj D).a=c=b 29.能正确表示a和b月时为正或同时为负的逻辑表达式是 A).(a>-0lIb)-0)&a-0& &h>=0》&k(a《04Ab0)k(a+-0 D).a*b>0 30,下面合法的赋值语句是 A01+y=2000: B)ch="greem": C)x=(a+b)+: D)x=y=0316: 31.下面爆个表达式的值为4.(单选) A.11/3 A11.0/3 C.(f1aat)11/3 (int)11.0/3+0.5) 32,己知。为整型变量,那么与表达式a=0真醒值情况相同的表达式有爆些?(多选》 A.axlao B.a C.1a==0 D.!a 33,以下法的赋值语句是 0(1=2,+1): 盼+: c +(i+): D)j》0: 34.若有以下程序: main() (int k=2.i=2,n; n(kt-i-k):printf ("d.Sd\n",m,i) 执行后的输出结果是一
printf("%d %d\n",x--,--y); } A).10 10 B).9 9 C).0 10 D).10 9 28.语句:printf("%d",(a=2)&&(b= -2));的输出结果是 A). 无输出 B). 结果不确 定 C).-1 D).1 33、当 c 的值不为 0 时, 能正确将 c 的值赋给变量 a、b A).c=b=a; B).(a=c)||(b=c) C).(a=c)&&(b=c) D).a=c=b 29.能正确表示 a 和 b 同时为正或同时为负的逻辑表达式是 A).(a>=0||b>=0)&&(a=0& &b>=0)&&(a0)&&(a+b0 30.下面合法的赋值语句是 A) x+y=2002; B) ch="green"; C) x=(a+b)++; D) x=y=0316; 31.下面哪个表达式的值为 4.(单选) A. 11/3 B. 11.0/3 C. (float)11/3 D. (int)(11.0/3+0.5) 32.已知 a 为整型变量,那么与表达式 a!=0 真假值情况相同的表达式有哪些?(多选) A. a>0||a0; 34.若有以下程序: main() {int k=2,i=2,m; m=(k+=i*=k); printf("%d,%d\n",m,i); } 执行后的输出结果是______

A)8.6 08,3 9 6.4 D07.4 35,己有定义:ntx=3,=4,=5:,则表达式0+y)+2-1ky+2/2的值是 A)6 盼0 c) D)1 36.以下程序的输出结果是 main() ( int a-3; printf(八n',(a+-a一a*a)): A)-6 助12 0 0 D)-12 37.设a,b、c,d、m,n均为int型变量,且a=5、b=6、c=7、d8、-2、n=2,则 逻辑表达式(一a沁)接(n=心))运算后,n的植为 A) 0 B) 1 C02 D)3 38,假定、x、y、、■均为t型变量,有如下程序段: =1:x=2:=3:2P4出 r((x)?:x: (m(y)?n:y: (m(z)?m 则该程序运行后,■的值是 A)4 3 c) D)1 1,2填空题 1.下而程序段的输出结果是【 】 int k=10: 1oata=35,b=67,c: c-a+3*(int)(ab)2/4: 2.表达式5路(-3)的值是【 】,表达式-5路(-3)的值 是【 】 3,已知:nta=5:则执行a二-=a材:语句后,a的值
A) 8,6 B) 8,3 C) 6,4 D) 7,4 35.已有定义:int x=3,y=4,z=5;,则表达式!(x+y)+z-1&&y+z/2 的值是______。 A) 6 B) 0 C) 2 D) 1 36.以下程序的输出结果是 main() { int a=3; printf("%d\n",(a+=a-=a*a) ); } A) -6 B)12 C) 0 D) –12 37.设 a、b、c、d、m、n 均为 int 型变量,且 a=5、b=6、c=7、d=8、m=2、n=2,则 逻辑表达式(m=a>b)&&(n=c>d)运算后,n 的值为 A) 0 B) 1 C)2 D) 3 38.假定 w、x、y、z、m 均为 int 型变量,有如下程序段: w=1; x=2; y=3; z=4; m=(w<x)?w: x; m=(m<y)?m:y; m=(m<z)?m: z; 则该程序运行后,m 的值是 A) 4 B) 3 C) 2 D) 1 1.2 填空题 1.下面程序段的输出结果是【 】。 int k=10; float a=3.5,b=6.7,c; c=a+k%3*(int)(a+b)%2/4; 2.表达式 5%(-3)的值是【 】,表达式-5%(-3)的值 是【 】。 3.已知:int a=5;则执行 a+=a-=a*a;语句后,a 的值为【 】

4·下面程序的运行结果是”【 】,y 】 min() float x=4.9:int y: y=(int)x: printf('f,4°,x,y):} 5.若有定义:int8,b5,c:,执行语句ca/h+0.:后,c的值为 】 6。以下程序的输出结果是【 】 main() (inta-5,b-4,c-6,d出 printf("sd\n",d-a>b?(a)c?a:c):(b)) 7,以下程序的输出结果是【 】 main( {inta-4,b-5.c-0,d: d=!ak!bIc: printf("sd\n",d) 8,当a=3,=4.c=5时,写出下列各式的植。 a化的值为=b的值为一 a℃的值为a!c的值为 a盛出的值为一!凸的值为一 ale的值为,alle的值为一 a+b>Wb=e的值为_ 9.整型变量a的值是5,表达式a/a+a:的值【 】. 10。已知a=3。b=4,c=5,逻铜表达式al |b+ckab-e的值 】 11,己知a=3。b=4·c=5,应辑表达式!(ab)e11的值 】 1.3程序设计题 1,编写程序,在屏幕上显示一句话hello neusoft!”。 2.编写程序在屏移上输出如下图型:
4 .下面程序的运行结果是 x= 【 】 ,y= 【 】。 main( ) { float x=4.9;int y; y=(int)x; printf ("x=%f , y=%d", x ,y); } 5 . 若 有 定 义 : int a=8 , b=5 , c ; , 执 行 语 句 c=a/b+0.4; 后 , c 的 值 为 【 】。 6.以下程序的输出结果是【 】。 main() { int a=5,b=4,c=6,d; printf("%d\n",d=a>b?(a>c?a:c):(b)); } 7.以下程序的输出结果是【 】。 main() { int a=4,b=5,c=0,d; d=!a&&!b||!c; printf("%d\n",d); } 8.当 a=3,b=4,c=5 时,写出下列各式的值。 ac&&b==c 的值为___。 9.整型变量 a 的值是 5,表达式 a/=a+a;的值【 】。 10 . 已 知 a=3 , b = 4 , c = 5 , 逻 辑 表 达 式 a||b+c&&b-c 的 值 【 】 11 .已知 a=3 , b = 4 , c = 5 , 逻 辑 表 达 式 !(a>b)&&!c||1 的 值 【 】 1.3 程序设计题 1.编写程序:在屏幕上显示一句话“hello neusoft!”。 2.编写程序在屏幕上输出如下图型: *

科 球 种 3.己知圆的半径是5.6,求其直径、周长,面积并输出。 4,从健盘输入圆的半径,求其直径,周长、面积并输出。 5,编写程序求任意圆的体积 6。求任意一元二次方程度两个实根
*** ***** ******* 3.已知圆的半径是 5.6,求其直径、周长、面积并输出。 4.从键盘输入圆的半径,求其直径、周长、面积并输出。 5.编写程序求任意圆的体积 6.求任意一元二次方程度两个实根