1、三、上机改错题24.请指出以下C程序的错误所在:#include stdio.h;main(); /*main function */float r,s; /*/*r is radius */,/* s is area of circular */*/r=5.0;s=3.14159*r*r;printf(“%fn”,s)25. 请指出以下C程序的错误所在:main /*main function */float a,b,c,v; /*a,b,c are sides,v is volume of cube */a=2.0;b=3.0;c=4.0v=a*b*c;printf(“%fn”,v)第三章
2、 顺序结构1.若a、b、c、d都是int型变量且初值为0,以下选项中不正确的赋值语句是( )。A.a=b=c=100; B.d+; C.c+b; D.d=(c=32)-(b+);2.下列选项中不是C语句的是( )。A.int i;i+;printf(“%dn”,i); B.;C.a=5,c=10 D.;3.合法的C语言赋值语句是( )。A.a=b=58 B.k=int(a+b); C.a=58,b=58 D.-i;4.有以下程序:#include main()int x=10,y=3;printf(“%dn”,y=x/y);执行后的输出结果是( )。A.0 B.1 C.3 D.不确定的值5.若
3、变量已正确定义为int型,要给a、b、c输入数据,正确的输入语句是( )。A.read(a,b,c); B.scanf(“%d%d%d”,a,b,c);C. scanf(“%D%D%D”,&a,%b,%c); D. scanf(“%d%d%d”,&a,&b,&c);6.若变量已正确定义为float型,要通过输入语句:scanf(“%f %f %f”,&给a赋值11.0,b赋值22.0,c赋值33.0,不正确的输入形式是( )。A.11回车22回车33 B.11.0,22.0,33.0C.11.0回车22.0 33.0 D.11 22回车337.若变量a、b、t已正确定义,要将a和b值的数进行交
4、换,以下选项中不正确的语句组是( )。A.a=a+b,b=a-b,a=a-b; B.t=a,a=b,b=t;C.a=t;t=b;b=a; D.t=b;a=t;8.若有正确定义语句:double x=5.16894;语句printf(“%fn”,(int)(x*1000+0.5)/(double)1000);的输出结果是( )。A.输出格式说明与输出项不匹配,输出无定值 B.5.170000C.5.168000 D.5.1690009.若有以下程序段:int c1=1,c2=2,c3;c3=c1/c2;printf(“%dn”,c3);A.0 B.1/2 C.0.5 D.110.若有以下程序段:
5、int a=0,b=0,c=0;c=(a-=a-5),(a=b,b+3);printf(“%d,%d,%dn”,a,b,c);A.3,0,-10 B.0,0,5 C.-10,3,-10 D.3,0,311.若有以下定义,请写出以下程序段中输出语句执行后的输出结果_。int i=-200,j=2500;printf(“(1)%d,%d”,i,j);printf(“(2)i=%d,j=%dn”,i,j);printf(“(3)i=%dnj=%dn”,i,j);12.变量i、j、k已定义为int型并均有初值0,用以下语句进行输入时:scanf(“%d”,&i); scanf(“%d”,&j);k);
6、从键盘输入:12.3回车 则变量i、j、k的值分别是_、_、_。13.复合语句在语法上被认为是_。空语句的形式是_。14.C语句的最后用_结束。15.以下程序段要求通过scanf语句给变量赋值,然后输出变量的值。写出运行时给k输入100,给a输入15.81,给x输入1.89234时的三种可能的输入形式_、_、_。int k;float a;double x;scanf(“%d%f%lf”,&k,&x);printf(“k=%d,a=%f,x=%lfn”,k,a,x);三、编程题和改错题16.以下程序多处有错。若指定必须按下面的形式输入数据,并且必须按下面指定的形式输出数据,请对该程序做相应的修
7、改。maindouble a,b,c,s,v;printf(input a,b,c:n);scanf(“%d %d %d”,a,b,c);s=a*b;printf(“%d %d %d”,a,b,c);printf(“s=%fn”,s,”v=%dn”,v);当程序执行时,屏幕的显示和要求输入形式如下:input a,b,c:2.0 2.0 3.0a=2.000000,b=2.000000,c=3.000000s=4.000000,v=12.00000017.编写程序,把560分钟换算成用小时和分钟表示,然后进行输出。18.编写程序,输入两个数:1500和350,求出它们的商和余数并进行输出。19
8、.编写程序,读入三个双精度数,求它们的平均值并保留此平均值小数点后一位数,对小数点后第二位数进行四舍五入,最后输出结果。20.编写程序,读入三个整数给a、b、c,然后交换它们中的数,把a中原来的值给b,把b中原来的值给c,把c中原来的值给a,然后输出a、b、c。第四章 选择结构1.下列运算符中优先级最高的运算符是( )。A. ! B.% C.-= D.&2.下列运算符中优先级最低的运算符是( )。A.| B.!= C.=y)&(y=z) B.(x=y)AND(y=x)C.(x=y=z) D.(x=z)4.设a、b和c都是int型变量,且a=3,b=4,c=5,则以下表达式中值为0的表达式是(
9、)。A.a&b B.a=b C.a|b+c&b-c D.!(ab)&!c|1)5.有以下程序:int a=2,b=-1,c=2; if(ab) if(b0) c=0; else c+=1;printf(“%dn”,c);程序的输出结果是( )。A.0 B.1 C.2 D.36.有以下程序:int w=4,x=3,y=2,z=1; printf(“%dn”,(wx?w:zy?z:x);7.有以下程序:int a,b,s;scanf(“%d %d”,&b);s=a;if(a0) y=1;else y=0;其能正确表示的数学函数关系是( )。A. B. C. D. 9.有以下程序:int k=-3;
10、if(k=0) printf(“*n”)else printf(“&n”);A.输出# B.输出& C.输出#& D.有语法错不能通过编译10.若a和b均是正整型变量,正确的switch语句是( )。switch(pow(a,2)+pow(b,2)case 1:case 3:y=a+b;break;case 0:case 5:y=a-b;B.switch(a*a+b*b);case 3:case 1:brek;y=b-a;C.switch adefault :x=a+b; case 10: case 11:x=a*d;D.switch(a+b)case10 :case11 :1.C语言中用_表
11、示逻辑值“真”,用_表示逻辑值“假”。2.C语言中的关系运算符“!=”的优先级比“=”_。3.C语言中的逻辑运算符“&”比“|”的优先级_。4.C语言中的关系运算符“=”比逻辑运算符“&”的优先级_。5.C语言中逻辑运算符_的优先级高于算术运算符。6.将下列数学式改写成C语言的关系表达式或逻辑表达式:A)_B)_。A)a=b或a47.请写出以下程序的输出结果_。int a=100;if(a100) printf(“%dn”,a100);else printf(“%dn”,a0) B)!9.当a=1,b=2,c=3时,以下if语句执行后,a、b、c中的值分别为_、_、_。c) b=a;a=c;c
12、=b;10.若变量已正确定义,以下语句段的输出结果是_。x=0;y=2;z=3;switch(x)case 0:switch(y=2) case 1:printf(“*”); case 2:printf(“%”); case 1:switch(z)printf(“$”); default:printf(“#”);三、编程题1.若a的值小于100,请将以下选择结构改写成由switch语句构成的选择结构。30) m=1;else if(a40) m=2;50) m=3; else if(a60) m=4; else m=5;2.编写程序,输入一个整数,打印出它是奇数还是偶数。3.编写程序,输入a、
13、b、c三个数,打印出最大者。4.对于以下函数:编写程序,要求输入x的值,输出对应y的值。第五章 循环结构1.有以下程序段:int k,j,s;for(k=2;k6;k+,k+)s=1; for(j=k;jj+) s+=j;程序段的输出结果是( )。A.9 B.1 C.11 D.102.有以下程序段:int i,j,m=0;for(i=1;i7)n-;printf(“%dn”,n);A.10 B.9 C.10 D.99 8 9 88 7 8 7 7 64.有以下程序段:int x=3;doprintf(“%3d”,x-=2);while(!(-x);A.1 B.3 0 C.1 -2 D.死循环i
14、nt i,sum; for(i=1;i+) sum+=sum;printf(“%dn”,sum);A.15 B.14 C.不确定 D.0int y=10; for(;y0;y-) if(y%3=0) printf(“%d”,-y); continue;A.741 B.852 C.963 D.8754217.有以下程序段:int x;for(x=3;xb;+b) i+;while(a+c) j+;do k+; while(ad+);2.以下程序段的输出结果是_。int k,n,m;n=10;m=1;k=1;while(k+=n) m*=2;3.以下程序的输出结果是_。int x=2; while
15、(x-) ; printf(“%dn”,x);4.以下程序段的输出结果是_。int i=0,sum=1;dosum+=i+;while(iamax) amax=x; if(_) amin=x;printf(“namax=%fnamin=%fn”,amax,amin);1.编写程序,求1-3+5-7+-99+101的值2.编写程序,求e的值, 用fo r循环计算前50项。用while循环,计算直到某一项的值小于10-6为止。3.编写程序,打印以下图形: * * *第六章 字符型数据1.C语言中的简单数据类型有( )。A.整型、实型、逻辑型 B.整型、实型、字符型C.整型、实型、逻辑型 D.整型、
16、实型、逻辑型、字符型2.C语言中,字符(char)型数据在微机内存中的存储形式是( )。A.反码 B.补码 C.EBCDIC码 D.ASCII码3.设有定义语句:char a=72;,则变量a( )。A.包含1个字符 B.包含2个字符 C.包含3个字符 D.定义不合法4.C语言中,下列不合法的字符常量是( )。A.xff B.65 C.& D.0285. C语言中,下列不合法的字符串常量是( )。A.”121” B.y= C.”nn” D.”ABCDx6d”6.判断char型变量c是否为大写字母的最简单且正确的表达式是( )。A.A=c=A”)|(c=Z)C.(A=c) D. (c=A”)&(c=A&=Z)?(x+32):x; printf(“%cn”,x);A.A B.a C.Z D.zchar ch;ch=A+5-3;printf(“%d,%cn”,ch,ch);
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1