第4章 选择结构程序设计 练习题

合集下载

计算机二级c语言第四章选择结构习题与答案

计算机二级c语言第四章选择结构习题与答案

第四章选择结构一、选择题1、当把以下四个表达式用作if语句的控制表达式时,有一个选项与其它三个选项含义不同,这个选项是A)k%2 B)k%2==1 C)(k%2)!=0 D)!k%2==12、设有定义:int k=1,m=2; float f=7;,则以下选项中错误的表达式是A)k=k>=k B)-k++ C)k%int(f) D)k>=f>=m3、设有定义:int a=2,b=3,c=4;,则以下选项中值为0的表达式是A)(!a==1)&&(!b==0) B)(a < b)&& !c||1C)a && b D)a||(b+b)&&(c-a)4、有以下程序main(){ int a,b,d=25;a=d/10%9;b=a&&(-1);printf("%d,%d\n",a,b); }程序运行后的输出结果是A)6,1 B)2,1 C)6,0 D)2,05、有以下程序main(){int i=1,j=2,k=3;if(i++==1&&(++j==3||k++==3))printf("%d %d %d\n",i,j,k); }程序运行后的输出结果是A)1 2 3 B)2 3 4 C)2 2 3 D)2 3 36、有以下程序main(){int a=3,b=4,c=5,d=2;if(a>b)if(b>c)printf("%d",d++ +1);elseprintf("%d",++d +1);printf("%d\n",d); }程序运行后的输出结果是A) 2 B) 3 C) 43 D) 447、下列条件语句中,功能与其他语句不同的是A) if(a) printf("%d\n",x); else printf("%d\n",y);B) if(a==0) printf("%d\n",y); else printf("%d\n",x);C) if (a!=0) printf("%d\n",x); else printf("%d\n",y);D) if(a==0) printf("%d\n",x); else printf("%d\n",y);8、以下4个选项中,不能看作一条语句的是A){;} B)a=0,b=0,c=0;C) if(a>0); D)if(b==0) m=1;n=2;9、以下程序段中与语句k=a>b?(b>c?1:0):0;功能等价的是A)if((a>b) &&(b>c) ) k=1; B)if((a>b) ||(b>c) ) k=1else k=0;C)if(a<=b) k=0; D) if(a>b) k=1;else if(b<=C) k=1; else if(b>c) k=1;else k=0;10、有以下程序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,111、有定义语句:int a=1,b=2,c=3,x; 则以下选项中各程序段执行后,x的值不为3的是A) if (c < a) x=1; B) if(a<3) x=3;else if (b < a) x=2; else if (a < 2) x=2;else x=3; else x=1;C) if (a < 3) x=3; D)if (a< b) x=b;if (a < 2) x=2; if (b< c) x=c;if (a< 1) x=1; if (c< a) x=a;12、有以下程序main(){ int i=1,j=1,k=2;if((j++‖k++)&&i++) printf("%d,%d,%d\n",i,j,k); }执行后输出结果是A)1,1,2 B)2,2,1 C)2,2,2 D)2,2,3 13、有以下程序main(){ int a=5,b=4,c=3,d=2;if(a>b>c) printf("%d\n",d);else if((c-1>=d)==1)printf("%d\n",d+1);else printf("%d\n",d+2) }执行后输出结果是A)2 B)3 C) 4 D)编译时有错,无结果14、已有定义:int x=3,y=4,z=5;,则表达式!(x+y)+z-1 && y+z/2的值是A)6 B)0 C)2 D)115、以下程序的输出结果是main(){int a=5,b=4,c=6,d;printf("%d\n",d=a>b?(a>c?a:c):(b)); }A)5 B) 4 C)6 D)不确定16、以下程序的输出结果是main(){ int a=4,b=5,c=0,d;d=!a&&!b||!c;printf("%d\n",d); }A)1 B)0 C)非0的数 D)-117、设 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) 318、阅读以下程序:main(){int x;scanf("%d",&x);if(x--<5) printf("%d",x);else printf("%d",x++);}程序运行后,如果从键盘上输入5,则输出结果是A)3 B) 4 C) 5 D) 619、设x、y、t均为int型变量,则执行语句:x=y=3;t=++x||++y;后,y的值为A)不定值 B)4 C)3 D)120、若执行以下程序时从键盘上输入9,则输出结果是A) 11 B) 10 C) 9 D) 8main(){int n;scanf("%d",&n);if(n++<10) printf("%d\n",n);else printf("%d\n",n--);}21、有如下程序main(){float x=2.0,y;if(x<0.0) y=0.0;else if(x<10.0) y=1.0/x;else y=1.0;printf("%f\n",y);}该程序的输出结果是A)0.000000 B)0.250000C)0.500000 D)1.00000022、有如下程序main(){int a=2,b=-1,c=2;if(a< b)if(b< 0) c=0;else c++;printf("%d\n",c);}该程序的输出结果是A) 0 B)1 C) 2 D) 323、设 int x=1, y=1; 表达式(!x||y--)的值是A)0 B) 1 C) 2 D) -124、语句:printf("%d",(a=2)&&(b= -2));的输出结果是A)无输出 B)结果不确定 C)-1 D)125、有以下程序段int k=0,a=1,b=2,c=3; k=a< b ? b:a; k=k> c ? c:k;执行该程序段后,k的值是A)3 B)2 C)1 D)026、若整型变量a、b、c、d中的值依次为:1、4、3、2。

C语言-第4章 选择结构程序设计

C语言-第4章 选择结构程序设计

第4章选择结构程序设计注:选择结构的考点,最重要的有两个,一个是逻辑表达式的值,另一个是分支界限。

弄明白这两个知识点,就能够以不变应万变了。

一、单项选择题1. 在C语言中,能代表逻辑值"真"的是。

A) true B)大于0的数C)非0整数D)非0的数2. 表示关系x<=y<=z的c语言表达式为。

A) (x<=y)&&(y<=z) B) (x<=y)AND(y<=z) C) (x<=y<=z) D) (x<=y)&(y<=z)3. 能正确表示逻辑关系:“a≥10或a≤0”的C语言表达式是。

A) a>=10 or a<=0 B) a>=0|a<=10 C) a>=10 &&a<=0 D) a>=10‖a<=04、判断char型变量c1是否为大写字母的表达式为。

A)’A’<=c1<=’Z’ B)(c1>=’A’) & (c1<=’Z’)C)(’A’<=c1)AND (‘Z’>=c1) D)(c1>=’A’)&& (c1<=’’Z’)5. 有定义char c; c=getchar(); 判断字符变量c为大写字母的正确表达式为。

A) ‘A’=<c<=’Z’ B)c>=‘A’&& c<=’Z C)A=<c<=Z D) c>=A && c<=Z6. 设有语句“int a=4;b=3,c=-2,d=2;”,则逻辑表达式“a>0&&b&&c<0&&d>0”的值是。

A)1B)0 C)-1 D)出错7. 设a为整型变量,则不能正确表达数学关系10<a<15的C语言表达式是。

第四章选择结构程序设计(A级)

第四章选择结构程序设计(A级)

第四章选择结构程序设计(A级)填空题:1、表达式not true or true and false的值为false。

2、表达式ord(false)+5的值为5。

3、表达式pred(succ(true))的值为true。

4、表达式5 div 2<(5-2)的值为true。

5、"若A-B不小于C,则将B增加1,否则将B减少1“用Pascal 语言可表示为if A-B>=C then B:=B+1 else B:=B-1;。

6、"闰年指年号能被4整除,但不能被100整除,或者年号能被400整除的年"写成Pascal语言表达式为(year mod 4=0) and (year mod 100<>0) or (year mod 400=0)。

7、inc(ord(true))的结果是2。

8、表达式(2<=1) or not(2<10) and (10>4)的结果是false。

9、命题"m,n都是偶数或都是奇数"可表示为(m mod 2=0) and (n mod 2=0) or (m mod 2=1) and (n mod 2=1)。

10、dec(inc(ord(true)))的结果是1。

单项选择题:1、下面的表达式中,布尔值为true的是4+5 mod 2>4。

(4+5) mod 2>4'0'>'a'0>a2、下列选项中,不是布尔表达式的是5 div 3。

not b(x>0) or (y>0)9+4>5+33、下面哪一个是布尔变量的标识符?boolean。

trueintegerreal4、下面条件语句的格式书写不正确的是if 条件then 语句1; else 语句2。

if 条件then 语句1if 条件then 语句1 else 语句25、对于复合语句描述不正确的是begin后面没有符号,中间的语句末尾加";",最后一个语句与end之间必须加";"。

c语言第4章 选择结构练习题

c语言第4章 选择结构练习题

elsey=-1;
D.if(x>=0)
if(x>0)y=1;
elsey=0;
elsey=-1;
15.执行以下语句后,y的值为()。
intx,y,z;
x=y=z=0;
++x||++y&&++z;
A.0
B.1
C.2
16.已知 inta=1,b=2,c=3;以下语句执行后 a,b,c的值是()。
if(a>b)
A.’x’&&’y’
B.x<=y
C.x||y+z&&y-z
D.!((x<y)&&!z||1)
4.为了避免嵌套的 if-else语句的二义性,C语言规定 else总是与()组成配对关系。
A.缩排位置相同的 if
B.在其之前未配对的 if
C.在其之前未配对的最近的 if
D.同一行上的 if
5. 逻辑运算符两侧运算对象的数据类型()。
D.算术运算符<关系运算符<赋值运算符<逻辑与运算符
7. 下列运算符中优先级最高的是()。
A.<
B.&&
C.+
D.!=
8. 选择出合法的 if语句(设 intx,a,b,c;)()。
A.if(a=b)c++;
B.if(a=<b)c++;
C.if(a<>b)c++;
D.if(a=>b)c++;
9. 能正确表示“当 x的取值在[-58,-40]和[40,58]范围内为真,否则为假”的表达式是()。

VB程序设计 习题及答案第4章 选择结构程序设计

VB程序设计 习题及答案第4章 选择结构程序设计

第4章选择结构程序设计4.1 写出数学式|x|<2.5×10-2对应的Visual Basic表达式。

【答案】x<2.5e-2 and x>-2.5e-24.2 逻辑运算符And、Or和Not的优先级最高的是哪一个。

【答案】Not4.3 已知 W=10 X=9 Y=8 Z=7 ,求下列表达式的结果。

(1) W>X And Y<=Z OR X>Y(2) X>Z Or W=Y AND Y<X(3) Not (W>Y And X=Z)(4) Not (Y<>X Or W*3>Z)【答案】(1) True(2) True(3) True(4) False4.4 写出下列十进制整数逻辑运算的结果:(1) X = 23 And 14(2) X = 23 Or 14(3) X = -1 And 19(4) X = -1 Or 10(5) X = Not -1【答案】(1) 6(2) 31(3) 19(4) -1(5) 04.5 已知变量X和Y的值分别为5、6,编写程序,交换变量X和Y的值。

【参考答案】程序代码设计Private Sub Form_Click()x = 5: y = 6t = x: x = y: y = tForm1.Print "x="; x, "y="; yEnd SubPrivate Sub Form_Load()Form1.AutoRedraw = TrueForm1.Print "x = 5", "y = 6"Form1.Print "单击窗体交换x,y的值"图4-1 程序运行结果End Sub程序运行结果如图4-1所示:4.6 从键盘输入一个学生的三科成绩,计算总分,并找出最高分。

【参考答案】(1)用户界面设计(2)控件属性设置(略)(3)程序代码设计Private Sub Command1_Click()g1 = Val(Text1.Text)g2 = Val(Text2.Text)g3 = Val(Text3.Text)Var = (g1 + g2 + g3) / 3g = g1If g < g2 Then g = g2If g < g3 Then g = g3Text4.Text = VarText5.Text = gEnd Sub图4-2 程序运行结果程序运行结果如图4-2所示。

C程序设计(第五版)-第4章选择结构程序设计课后习题答案

C程序设计(第五版)-第4章选择结构程序设计课后习题答案

C程序设计(第五版)-第4章选择结构程序设计课后习题答案1. 什么是算术运算?什么是关系运算?什么是逻辑运算?【答案解析】算熟运算:算术运算即“四则运算”,是加法、减法、乘法、除法、乘⽅、开⽅等⼏种运算的统称。

其中加减为⼀级运算,乘除为⼆级运算,乘⽅、开⽅为三级运算。

在⼀道算式中,如果有多级运算存在,则应先进⾏⾼级运算,再进⾏低⼀级的运算。

C语⾔中的算熟运算符包括:+、-、*、/、++、--、%等种类。

如果只存在同级运算;则从左⾄右的顺序进⾏;如果算式中有括号,则应先算括号⾥边,再按上述规则进⾏计算。

⽰例:$ (1 + 1)^{2} * 4+5 * 3$解析:1. 先进⾏括号内运算1+1,然后进⾏乘⽅运算得到结果4.2. 接下来与4相乘,得到结果163. 因为乘法优先级⼤于加法,因此先进⾏5*3,得到结果154. 最终相加得到结果31结果:31关系运算:关系的基本运算有两类:⼀类是传统的集合运算(并、差、交等),另⼀类是专门的关系运算(选择、投影、连接、除法、外连接等),⽽在C语⾔中,关系运算通常被认为是⽐较运算,将两个数值进⾏⽐较,判断⽐较结果是否符合给定的条件。

常见的关系运算符包括:<、<=、>、>=、==、!=等种类。

其中,前4种关系运算符(<、<=、>、>= )的优先级别相同,后2种(==、!=)也相同。

⽽前4种⾼于后2种。

例如, >优先于==。

⽽>与<优先级相同。

并且,关系运算符的优先级低于算术运算符,关系运算符的优先级⾼于赋值运算符(=)。

逻辑运算:在逻辑代数中,有与、或、⾮三种基本逻辑运算。

表⽰逻辑运算的⽅法有多种,如语句描述、逻辑代数式、真值表、卡诺图等。

⽽在C语⾔中,逻辑运算通常⽤于使⽤逻辑运算符将关系表达式或其它逻辑量连接起来组成逻辑表达式⽤来测试真假值。

常见的逻辑运算符包括:&&、||、!等种类&&:与是双⽬运算符,要求有两个运算对象,表⽰两个运算对象都成⽴,则结果为真,否则结果为假。

C语言选择结构程序设计练习题

C语言选择结构程序设计练习题

C语⾔选择结构程序设计练习题第四章选择结构程序设计⼀、填空1.在C语⾔中,表⽰逻辑“真”值⽤_________。

2.得到整型变量a的⼗位数字的表达式为_________。

3.表达式:(6>5>4)+(float)(3/2)的值是_________。

4.表达式:a=3,a-1‖--a,2*a的值是_________。

(a是整型变量)5.表达式:(a=2.5-2.0)+(int)2.0/3的值是_________。

(a是整型变量)6.C语⾔编译系统在给出逻辑运算结果时,以数值_________代表“真”,以_________代表“假”;但在判断⼀个量是否为“真”时,以_________代表“假”,以_________代表真。

7.当m=2,n=1,a=1,b=2,c=3时,执⾏完d=(m=a!=b)&&(n=b>c)后,n的值为_________,m的值为_________。

8.若有int x,y,z;且x=3,y=-4,z=5,则表达式:!(x>y)+(y!=z)||(x+y)&&(y-z)的值为_________。

⼆、编程:1.企业发放的奖⾦根据利润提成。

利润(i)低于或等于10万元时,奖⾦可提10%;利润⾼于10万元,低于20万元时,低于10万元的部分按10%提成,⾼于10万元的部分,可提成7.5%;20万到40万之间时,⾼于20万元的部分,可提成5%;40万到60万之间时⾼于40万元的部分,可提成3%;60万到100万之间时,⾼于60万元的部分,可提成1.5%,⾼于100万元时,超过100万元的部分按1%提成,从键盘输⼊当⽉利润i,求应发放奖⾦总数?2.输⼊三个整数x,y,z,请把这三个数由⼩到⼤输出。

3.输⼊某年某⽉某⽇,判断这⼀天是这⼀年的第⼏天?4.本程序演⽰从键盘输⼊x的值,计算并打印下列分段函数的值。

y=0(x<60)y=1(60<=x<70)y=2(70<=x<80)y=3(80<=x<90)y=4(x>=90)5.在显⽰器上显⽰⼀个菜单程序的模型。

C语言习题四选择结构程序设计

C语言习题四选择结构程序设计

习题四选择结构程序设计1. 设变量x和y均已正确定义并赋值。

以下if语句中,在编译时将产生错误信息的是______。

A、if(x++);B、if(x>y && y!=0);C、if(x>0) x--D、if(y<0) {;}else y++; else x++;解析:本题考查的是if语句。

if后表达式两侧的圆括号不可少,最后是一条语句或是用花括号括起来的一组语句。

选项A和B是在表达式后跟了一条空语句,选项D是在表达式后跟了一组空语句,选项C中x--是表达式而不是语句,所以在编译时会出现错误信息。

故本题答案选C。

2. 有以下程序main(){ int i;for(i=1;i<=40;i++){ if(i++%5==0)if(++i%8==0) printf ("%d",i);}printf("\n"); }执行后的输出结果是______。

A、5B、24C、32D、40解析:本题考查的是if语句的应用。

在满足for 语句条件下,第一个if语句的条件是指i先对5取余后,再自行加1;第二个if语句的条件是指:i=i+1后,再对8取余。

故本题答案选C。

3. 在嵌套使用if语句时,C语言规定else总是______。

A、和之前与其具有相同缩进位置的if配对B、和之前与其最近的if配对C、和之前与其最近的且不带else的if配对D、和之前的第一个if配对解析:本题考查的是if语句的使用规则。

在嵌套使用if语句时,C语言规定else总是和之前与其最近的且不带else的if配对。

故本题答案为C。

4. 有以下程序main(){ int i=1,j=2,k=3;if(i++==1&&(++j==3||k++==3))printf("%d %d %d\n",i,j,k); }程序运行后的输出结果是______。

C语言 选择结构程序设计参考答案

C语言 选择结构程序设计参考答案

第四章选择结构程序设计一.选择题1.逻辑运算符两侧运算对象的数据类型。

A)只能是0或1 B)只能是0或非0正数C)只能是整型或字符型数据D)可以是任何类型的数据2.下列表达式中,不满足“当x的值为偶数时值为真,为奇数时值为假”的要求。

A)x%2==0 B)!x%2!=0 C)(x/2*2-x)==0 D)!(x%2)3.以下程序片段。

int x=2,y=3;printf( );A)什么都不输出B)输出为:***x=2C)输出为:###y=2 D)输出为:###y=34.能正确表示“当x的取值在[1,10]和[200,210]范围内为真,否则为假”的表达式是。

A)(x>=1) && (x<=10) && (x>=200) && (x<=210)B)(x>=1) | | (x<=10) | | (x>=200) | | (x<=210)C)(x>=1) && (x<=10) | | (x>=200) && (x<=210)D)(x>=1) | | (x<=10) && (x>=200) | | (x<=210)5.C语言对嵌套if语句的规定是:else总是与。

A)其之前最近的if配对B)第一个if配对C)缩进位置相同的if配对D)其之前最近的且尚未配对的if配对6.设:int a=1,b=2,c=3,d=4,m=2,n=2;执行(m=a>b) && (n=c>d)后n的值为0。

A)1 B)2 C)3 D)47.下面是错误的if语句(设int x,a,b;)A)if (a=b) x++; B)if (a=<b) x++;C)if (a-b) x++; D)if ( x ) x++;8.以下程序片段。

C程序设计第4章选择结构复习题及答案

C程序设计第4章选择结构复习题及答案

选择结构程序设计复习题一.选择题1.已有定义语句:int x=3,y=4,z=5;,则值为0的表达式是:(A)a) x>y++ b) x<=++y c) x !=y+z>y-z d) y%z>=y-z3. x为奇数时值为“真”,x为偶数时值为“假”的表达式是:(C)a) !(x%2==1) b) x%2==0 c) x%2 d) !(x%2)6. 已有定义语句:int x=6,y=4,z=5;,执行以下语句后,能正确表示x,y,z值的选项是:(C )if(x<y) z=x;x=y;y=z;a) x=4,y=5,z=6b) x=4,y=6,z=6c) x=4,y=5,z=5d) x=5,y=6,z=47. 以下程序的运行结果是:(D)main(){ int i=0;if(i==0) printf(“**”);else printf(“$”); printf(“*\n”);}a) * b) $* c) ** d) ***8. 若变量a,b,c都为整型,且a=1、b=15、c=0,则表达式a==b>c的值是(D)a) 0 b) 非零c) “真”d) 19. a为0时,值为“真”的表达式是(D )a) a b) !(++a) c) a=0 d) a==012. 有以下程序:main(){ int a=2,b=1,c=2;if(b<a)if(b<0) c=0,c++;b++;printf(“b=%d,c=%d\n”,b,c);}程序的输出结果是:(C )a) b=1,c=2 b) b=1,c=0c) b=2,c=2 d) b=1,c=113. 有以下程序:main(){ int n;scanf(“%d”,&n);if(n++<5) printf(“%X\n”,n);else printf(“%X\n”,n--);}若执行程序时从键盘上输入9,则输出结果是:(B )a) 11 b) A c) 9 d) 814. 有以下程序:main(){ int m=5;if(++m>5)if(m++>5) printf(“%d\n”,m+5);else printf(“%d\n”,m--);else printf(“%d\n”,--m);}程序的输出结果是:(D)a) 8 b) 5 c) 10 d) 1217. 当a=1、b=3、c=5、d=4时,执行下面一段程序:if(a<b)if(c<d) x=1;elseif(a<c)if(b<d) x=2;else x=3;else x=6;else x=7;以上程序段运行后,x的值是:(B)a) 1 b) 2 c) 3 d) 619. 以下程序的输出结果是:(C)main(){ int a=5,b=4,c=6,d;printf(“%d\n”,d=a>b ?(a>c ? a:c) : (b));}a) 5 b) 4 c) 6 d) 不确定20. 若有定义语句:int x=3,y=2,z=1; 则以下表达式的值是:(C )z*=(x>y ? ++x :y++)a) 0 b) 1 c) 4 d) 321. 有以下程序:main(){ int a=15,b=21,m=0;switch(a%3){ case 0: m++;break;case 1: m++;switch(b%2){ default: m++;case 0: m++;break;}}printf(“%d\n”,m);}程序的输出结果是:(A)a) 1 b) 2 c) 3 d) 4二.填空题1.设y是int型变量,请写出当y是奇数时值为1的关系表达式_ y%2 或y%2==0 或y%2!=0_.2. 表示“整数x的绝对值大于5”时值为“真”的C语言表达式是__ x>5||x<-5__.3. 若x为int类型,请以最简单的形式写出与!x等价的C语言表达式___ x==0__.6. 以下程序的运行结果是__0___.main(){ int a=0,b=0,c;if(a>b) c=1;else if(a=b) c=0;else c=-1;printf(“%d\n”,c);}8.若从键盘上输入3和4,执行以下程序后的输出结果是__36___.main(){ int a=0,b=0,s=0;scanf(“%d%d”,&a,&b);if(a<b) s=b*a,s*=a;printf(“%d\n”,s);}}9.以下程序的运行结果是__!__.main(){ int a=0,b=4,c=5;switch(a==0){case 1: switch(b<0){case 1: printf(“@”); break;case 0: printf(“!”); break;}case 0: switch(c==5){case 0: printf(“*”); break;case 1: printf(“#”); break;default: printf(“%”);} break;default: printf(“&”);}}。

C语言全国计算机二级等级考试教程第四章选择结构(章节带习题)

C语言全国计算机二级等级考试教程第四章选择结构(章节带习题)

2
a a
2 1
b 1
b
1
4.2 if语句和用if语句构成的选择结构
4.2.1 if语句
C语言的if语言有两种形式: if(表达式) 语句 关键字 不满足 单分支if语句 不含else子句 关键字 if(表达式) 语句1 else 语句2 不满足 双分支if语句 含else子句
表达式 满足 语句
表达式 满足 语句1
表达式2
表达式1


表达式3


表达式4

语句1 语句2 语句3

语句n

语句4
4.2 if语句和用if语句构成的选择结构
4.2.2 嵌套的if语句
例4.5 编写程序,根据输入的学生成绩给出相应的等级,大于或等于90分以上 的等级为A,60分以下的等级为E,其余每10分为一个等级。 Enter g:72<CR> 成绩(g)大于等于90分以上(g>=90):A g=72:C 成绩(g)大于等于80分以上(g>=80):B 程序的意思为: 成绩(g)大于等于70分以上(g>=70):C Enter g:55<CR> 成绩(g)大于等于60分以上(g>=60):D g=55:E 成绩(g)不及格(g<60):E #include <stdio.h> 假 g>=90 main() {int g; 真 g>=80 假 printf("Enter g:");scanf("%d",&g) 真 printf("g=%d:",g); g>=70 假 if(g>=90) printf("A\n"); 真 假 g>=60 else if(g>=80) printf("B\n"); else if(g>=70) printf("C\n"); 真 else if(g>=60) printf("D\n"); 输出A 输出B 输出C 输出D 输出E else printf("E\n"); }

第4章 选择结构程序习题解答

第4章 选择结构程序习题解答

第4章选择结构程序设计习题解答1.设x、t均为int型变量,则执行语句“x=10;t=x&&x>10;”后,t的值为 0 。

2.假定所有变量均已正确定义,则程序段:int a=0,y=10;if(a=0) //条件式为0y--;else if(a>0)y++;elsey+=y;运行后y的值是 20 。

3.能表述20<x<30或x<-100的C语言表达式是 x>20 && x<30 || x<-100 。

4.若有定义语句“int a=25,b=14,c=19;”,则以下语句执行结果是 ***a=25,b=14,c=19*** 。

if(a<=25 && b<=2 && c)printf("***a+b=%d,a-b=%d***\n",a+b,a-b);elseprintf("***a=%d,b=%d,c=%d***\n",a,b,c);5.假定i和j为int型变量,则执行以下语句后i的值是 37 。

#include<stdio.h>void main(){int i=1,j;switch(i){case 1:for(j=0;j<9;j++)i+=j;break;case 2:for(j=1;j<10;j++)i+=j;break;case 3:i++;}}6.以下两条if语句:可合并成一条if语句,即。

if(a<=b)x=1;y=2;if(a>b)printf("***y=%d\n",y);elseprintf("***x=%d\n",x);可合并成一条if语句,即:if(a<=b){x=1;printf("***x=%d\n",x);}else{y=2;printf("***y=%d\n",y);}7.输入两个字符,若这两个字符的序号(ASCII码)之差为偶数,则输出它们的后继字符,否则输出它们的前驱字符。

C语言程序设计各章练习题

C语言程序设计各章练习题

《C 语言程序设计》各章练习题2016年12月汇编第1—3章 C 语言基础、编程规范、顺序结构程序设计编程题1:设a 和b 均为int 型变量,编写一个程序,通过键盘读入a ,b 的值,然后交换a,b 的值。

要求屏幕显示“输入2个整数,用空格隔开”的提示语句,并且输出交换前a,b 的值,交换后a ,b 的值。

附加要求:(1)允许定义第3个变量,实现交换; (2)不允许定义第3个变量,实现交换。

第4章选择结构程序设计编程题2:根据下列函数关系写程序,要求提示输入x 的值,输出y 的值。

⎪⎪⎩⎪⎪⎨⎧>=<+-=0020212x x x x x y 编程题2:根据下列函数关系写程序,要求提示输入x 的值,输出y 的值。

⎪⎩⎪⎨⎧>≤≤--<=002222x x x x x y 编程题3:求 ax 2+bx+c=0方程的解.(只输出b 2-4ac 〉=0的求解结果,小于0,输出“不予求解!”)第5章 循环结构程序设计编程题4:编程计算∑=ni i 1。

要求提示键盘输入n ,如n 为负数,不予计算,直接返回。

编程题5:编程序计算n !,要求n 从键盘输入,如n 小于0,不予计算。

编程题6:从键盘输入一个数n,判断n 是否是素数。

编程题6:编写程序输出1~100之间的偶数,要求屏幕显示时5个偶数一行,每个数占5位,右对齐。

编程题7:编程计算100到1000之间有多少个数其各位数字之和是5,并将其输出。

编程题8:求满足下列条件的三位数n ,它除以11(整数相除)所得到的商等于n 的各位数字的平方和,且其中至少有二位数字相同的数。

编程题9:有一些十进制整数对ab 和cd 具有如下特性:ab×cd=ba×dc ,其中a≠b 且c≠d 。

如:12×42=21×24.请编程找出30~50之间满足上述等式所有m,n 值,并按上述等式的格式输出。

(×用*表示)编程题10:从键盘上输入一个整数,然后把这个整数的各位逆序输出.例如,输入123456,输出654321.第6章数组编程题11:有一个已排好序的数组int a[11]={-5,—3,0,6,8,12,16,28,66,88};,要求输入一个数后,按原来排序的规律将它插入数组中。

c语言第4章练习题--选择结构程序设计

c语言第4章练习题--选择结构程序设计

c语言第4章练习题--选择结构程序设计1、两次运行下面的程序,如果从键盘上分别输入6和5,则输出结果是:main(A){ int x;scanf("%d", &x);if(x + + >5) printf("%d", x);else printf("%d\n",x - -);}A) 7和6 B) 6和4 C) 7和5 D) 6和52、若执行下面的程序时从键盘上输入3和4,则输出是: main(B){ int a, b, s;scanf("%d %d", &a, &b);s=a;if(as=s*s;printf("%d\n", s);}A) 14 B) 16 C) 18 D) 203、下面的程序main(B){ int x=3, y=2, z=0;if(x=y+z) printf("* * * *");else printf("# # # #");}A) 有语法错误不能通过编译B) 输出* * * *。

C) 可以通过编译,但是不能通过连接,因而不能运行。

D) 输出# # # #。

4、有int i=5 , j=8 ;则执行完以下语句后j的值为(B) switch(i){case 4: j++ ;case 5: j-- ;case 6:case 7: j++;default: j-=2;}A. 3B. 6C. 7D. 85、下列程序段的输出结果是__passwam____________ 。

int n='c';switch(n++){ default: printf("error");break;case 'a':case 'A':case 'b':case 'B':printf("good");break; case 'c':case 'C':printf("pass");case 'd':case 'D':printf("warn");}6、若要求在if后一对圆括号中表示a不等于0的关系,则能正确表示这一关系的表达式为(D)A) a<>0 B) !a C) a=0D) a7、有如下程序void main(){ float x=2.0,y;if(x<0.0) y=0.0;else if(x<10.0) y=1.0/x;else y=1.0;printf("%f\n",y);}该程序的输出结果是(C)A) 0.000000 B) 0.250000 C) 0.500000 D) 1.0000008、如下程序的输出结果是(C)void main(){ int a=2,b=-1,c=2;if(a<b)< p="">if(b<0) c=0;else c++;printf("%d\n",c);}A) 0 B) 1 C) 2 D) 39、执行后输出结果是(B)void main(){ int a=5,b=4,c=3,d=2;if(a>b>c)printf("%d\n",d);else if((c-1>=d)==1)printf("%d\n",d+1);elseprintf("%d\n",d+2)}A) 2 B) 3 C) 4 D) 编译时有错,无结果10、已知int x=10,y=20,z=30;以下语句执行后x,y,z的值是(B)if(x>y)z=x;x=y;y=z;A) x=10,y=20,z=30 B) x=20,y=30,z=30 C) x=20,y=30,z=10 D) x=20,y=30,z=2011、当a=1,b=3,c=5,d=4时,执行完下面一段程序后x 的值是(B)if(a<b)< p="">if(celseif(a<c)< p="">if(belse x=3;else x=6;else x=7;A) 1 B) 2 C) 3 D) 612、以下程序的输出结果是(C)void main(){int a=100,x=10,y=20,ok1=5,ok2=0;if(x<y)< p="">if(y!=10)if(!ok1)a=1;elseif(ok2) a=10;a=-1;printf("%d\n",a);A) 1 B) 10 C) -1 D) 10013、若有以下程序void main(){ int a=4,b=3,c=5,t=0;if(a>b) {a=b;b=t;}if(aprintf("%d %d %d\n",a,b,c);}执行后输出结果是__5 0 3____________ 。

第四章 选择结构程序设计习题解答

第四章 选择结构程序设计习题解答

开始
10 解:
输入年、 输入年、月 判断是否为闰年 用一整型变量标识, 表示是 表示是, 表示否 用一整型变量标识,1表示是,0表示否
Month==1、 3、 5、 、 、 、 7、8、10、12? 、 、 、 ?
N Month==2 N
N
Month== 4、6、9、11? 、 、 、 ?
N
Month==其它值 其它值
if-else 择条件语句
选择结构的一种最常用形式: 选择结构的一种最常用形式: if (表达式) (表达式 表达式) 语句1; 语句1; else 语句2; 语句2; 语句3 语句3 执行过程: 执行过程: 当括号内表达式成立时,即表达式的值是非 是非0 当括号内表达式成立时,即表达式的值是非0时, 执行语句1 然后语句3 执行语句1,然后语句3; 当表达式不成立时, 等于0 执行语句2 当表达式不成立时,值等于0时,执行语句2,然 部分也可以没有。 后语句3 上面else部分也可以没有。 部分也可以没有 后语句3,上面
开关语句--switch
功能 格式 说明
switch ((表达式)) 表达式) switch (表达式 (表达式 表达式) 表达式 开关语句就像多路开关一样, 开关语句就像多路开关一样,程序可根据 执行时,先求表达式的值,然后自上而下依次测 先求表达式的值, ⑵由于每个{case 常量1 :: 语句系列1;break; 执行时,case语句后的常量只起语句标号的作用, {case语句后的常量只起语句标号的作用, 常量1 语句系列1;break; 常量1 语句系列1 常量1 语句系列1 ⑶由于每个case语句后的常量只起语句标号的作用 switch后括号内表达式的值只能是整形 后括号内表达式的值只能是整形、 ⑴switch后括号内表达式的值只能是整形、字符型 一个表达式可能产生的不同结果值, 一个表达式可能产生的不同结果值, 独立分支时每个常量2 语句系列2;break; 时每个case语句和default语句的出现的 case语句和 ⑷独立分支时每个常量2 :: 语句系列 2选择其中 试每一个常量,若与常量I相匹配, 2;break; 试每一个常量,若与常量I相匹配,则从其后的语 case 常量 语句和default语句的出现的 case 常量2 2 语句系列 语句系列2 所以它们的值必须互不相同, 所以它们的值必须互不相同,否则会出现互相矛盾 或枚举类型, 或枚举类型,每个常量的类型和表达式的类型应相 一个——独立分支结构 独立分支结构, 一个——独立分支结构,或几个分支 前后次序发生改变时,不影响运行结果, 前后次序发生改变时,不影响运行结果, 句序列i开始执行每个语句序列,若没有常量与之 i开始执行每个语句序列, 句序列(C语言系统不允许,编译出错)。 但在一般 …… …… 的现象(C语言系统不允许 编译出错) 语言系统不允许, 的现象 ——非独立分支结构去执行。 每个语句序列可以是零个或若干个语句。 同,每个语句序列可以是零个或若干个语句。 的语句——非独立分支结构去执行 m;break; 非独立分支结构去执行。 的语句 情况下,常量出现频率较高的放在前面。 情况下,常量出现频率较高的放在前面 匹配,则执行default后面的语句序列——非独立分 后面的语句序列—— 匹配,则执行default后面的语句序列m 。非独立分 case 常量m 语句系列m;break; 常量m 语句系列m 常量m 语句系列 case 1: case 常量m :: 语句系列 case 1: 3: case 。 default :: 语句系列m+1; case 1: 支结构。 default 语句系列m+1; 支结构1: 语句系列m+1 语句系列m+1 case case 4: printf(“%d”, case 2: d1); break; default: } 若只执行语句系列I 则在语句系列I 若只执行语句系列I,则在语句系列I后加 case 3: } default: case 2: case break语句 break语句——独立分支结构3: 语句——独立分支结构。 独立分支结构。 case 3: deault:

c语言第4章 选择结构程序设计习题答案

c语言第4章 选择结构程序设计习题答案

c语言第4章选择结构程序设计习题答案-CAL-FENGHAI-(2020YEAR-YICAI)_JINGBIAN第4章选择结构程序设计习题(P111)C语言中如何表示“真”和“假”系统如何判断一个量的“真”和“假”答:C语言中用1表示真,0表示假;系统按照“非0为真,0为假”判断一个逻辑量的真假。

写出下面各逻辑表达式的值。

设a=3,b=4,c=5。

(1)a+b>c&&b==c (2)a||b+c&&b-c (3)!(a>b)&&!c||1(4)!(x=a)&&(y=b)&&0 (5)!(a+b)+c-1&&b+c/2解:该题在求解过程中注意:一、优先级。

逻辑运算符(&&和||)低于算术运算符和关系运算符而高于赋值运算符,在逻辑运算符中,逻辑非最高,逻辑与其次,逻辑或最低;二、逻辑表达式的求值规则。

(P94)所以得以上表达式的值分别为:(1)0 (2)1 (3)1 (4)0 (5)1有3个整数a、b、c,由键盘输入,输出其中最大的数。

分析:这是一个规模较小的求最值的算法,习题用函数的方法实现。

该题不用函数调用实果。

法二:先假设第一个数是最值,再依次和第二、第三个数比较得结果。

其中都要用到单分支或双分支选择结构语句。

参考程序如下:main(){ int a,b,c,max; /*定义4个整型变量,其中a,b,c存原始数据,max存最值*/printf("\ninput the value of a,b,c:"); /*提示输入*/scanf("%d%d%d",&a,&b,&c); /*格式符之间无分隔符,输入时可以以空格、回车、跳格分隔*/if(a>b) max=a;else max=b;if(max<c) max=c;printf("\nmax=%d\n",max);}法二:main(){ int a,b,c,max;printf("\ninput the value of a,b,c:");scanf("%d%d%d",&a,&b,&c);max=a;if(max<b) max=b;if(max<c) max=c;printf("\nmax=%d\n",max);}有一个函数:写一段程序,输入x,输出y的值。

C语言 第四章 选择结构程序设计期末测试习题与答案

C语言 第四章 选择结构程序设计期末测试习题与答案
C.其之后最近的if
D.其之前最近的没有else配对的if
参考答案:D
12、在下面的条件语句中,只有一个在功能上与其它三个语句不等价,它是( )。
A.if (a)语句1 else语句2
B.if (a!=0)语句1 else语句2
C.if (a==0)语句2 else语句1
D.if (a==0)语句1 else语句2
printf(“a=%d,b=%d\n”,aa=2,b=2
C.a=1,b=0
D.a=1,b=1
参考答案:B
16、假定所有变量均已正确说明,以下程序段运行后的输出结果是( )。
int a=1,b=5,c=3;
if(a>b)
a=b;
b=c;
c=a;
printf("a=%d b=%d c=%d\n",a,b,c);
D.if(a==0) printf("%d\n",x); else printf("%d\n",y);
参考答案:D
2、假定所有变量均已正确说明,下列程序段运行后x的值是( )。
a=b=c=0;x=12; if(!a)x--; else x=5; if(c) x=3; else x=4;
A.3
B.4
C.12
int a=1,b=3,c=5; if(c=a+b) printf("yes\n"); else printf("no\n");
A.3
B.5
C.1
D.2
参考答案:A
5、当把以下4个表达式用作if语句的控制表达式时,有一个选项与其他3个选项含义不同,这个选项是( )。
A.k%2==1

第4章 选择结构程序设计(实验4) - 参考答案

第4章 选择结构程序设计(实验4)  - 参考答案

实验四选择结构程序设计应用班级:学号:姓名:成绩:一.实验目的1、掌握使用关系表达式、逻辑表达式表示条件的方法。

2、熟练掌握使用if语句实现选择结构。

3、熟练掌握使用switch语句实现选择结构。

二.使用的设备和仪器计算机+Windows XP +Visual C++6.0三.实验内容及要求1、习题6。

参考答案:#include<stdio.h>void main(){int score;char grade;printf("请输入成绩=");scanf("%d",&score);if(score>=0&&score<=100){switch(score/10){case 10:case 9:grade='A';break;case 8:grade='B';break;case 7:grade='C';break;case 6:grade='D';break;case 5:case 4:case 3:case 2:case 1:case 0:grade='E';break;}printf("你的成绩等级为%c\n",grade);}else{printf("成绩输入错误!\n");}}2、习题7。

参考答案:#include<stdio.h>void main(){int num,place,a,b,c,d,e;printf("请输入正整数=");scanf("%d",&num);if(num>0&&num<100000){if(num>9999)place=5;else if(num>999)place=4;else if(num>99)place=3;else if(num>9)place=2;elseplace=1;printf("该数字为%d位数\n",place);a=num%10; //个位数字b=num%100/10; //十位数字c=num%1000/100; //百位数字d=num%10000/1000; //千位数字e=num/10000; //万位数字switch(place){case 5:printf("%d%d%d%d%d\n",e,d,c,b,a);printf("逆序输出为:\n");printf("%d%d%d%d%d\n",a,b,c,d,e);break;case 4:printf("%d%d%d%d\n",d,c,b,a);printf("逆序输出为:\n");printf("%d%d%d%d\n",a,b,c,d);break;case 3:printf("%d%d%d\n",c,b,a);printf("逆序输出为:\n");printf("%d%d%d\n",a,b,c);break;case 2:printf("%d%d\n",b,a);printf("逆序输出为:\n");printf("%d%d\n",a,b);break;case 1:printf("%d\n",a);printf("逆序输出为:\n");printf("%d\n",a);break;}}else{printf("数据输入错误!\n");}}3、习题9。

C程序设计第4章选择结构复习题及答案

C程序设计第4章选择结构复习题及答案
3.若x为int类型,请以最简单的形式写岀与!x等价的C语言表达式_x==0__.
6.以下程序的运行结果是__0_.
main()
{ int a=O,b=O,c;
if(a>b) c=1;
else if(a=b) c=0;
else c=-1;
printf( %d\n”,c);
}
8.若从键盘上输入3和4,执行以下程序后的输出结果是_36_.
{case 1: printf( @”);break;
case 0: printf( break;
}
case 0: switch(c==5)
{case 0: printf( *"); break;
case 1: printf( #"); break;
default: printf(%”;
} break;
6. 已有定义语句:int x=6,y=4,z=5;,执行以下语句后,能正确表示x,y,z值的选项是:(C)
z=x;x=y;y=z;
a)x=4,y=5,z=6
b)x=4,y=6,z=6
c)x=4,y=5,z=5
d)x=5,y=6,z=4
7.以下程序的运行结果是:(D)
main()
{ int i=0;
a)ab) !(++a) c) a=0 d) a==0
12.有以下程序:
main()
{ int a=2,b=1,c=2;
if(b<a)
if(b<0) c=0,
c++;b++;
printf( b=%d,c=%d\n”,b,c);
}
程序的输岀结果是:(C)

第四章 选择结构程序设计

第四章  选择结构程序设计

第四章选择结构程序设计一、选择题1.下列运算符中优先级最高的是。

(0级)A)> B)+ C)&& D)!=2.以下关于运算符优先级的描述中,正确的是。

(0级)A)!(逻辑非)>算术运算>关系运算>&&(逻辑与)>||(逻辑或)>赋值运算B)&&(逻辑与)>算术运算>关系运算>赋值运算C)关系运算>算术运算>&&(逻辑与)>||(逻辑或)>赋值运算D)赋值运算>算术运算>关系运算>&&(逻辑与)>||(逻辑或)3.逻辑运算符的运算对象的数据类型。

(0级)A)只能是0或1 B)只能是.T.或.F.C)只能是整型或字符型D)任何类型的数据4.能正确表示x的取值范围在[0,100]和[-10,-5]内的表达式是。

(1级) A)(x<=-10)||(x>=-5)&&(x<=0)||(x>=100)B)(x>=-10)&&(x<=-5)||(x>=0)&&(x<=100)C)(x>=-10)&&(x<=-5)&&(x>=0)&&(x<=100)D)(x<=-10)||(x>=-5)&&(x<=0)||(x>=100)5.以下程序的运行结果是。

(1级)main( ){int c,x,y;x=1;y=1;c=0;c=x++||y++;printf(“\n%d%d%d\n”,x,y,c);}A)110 B)211 C)011 D)0016.以下程序的运行结果是。

(1级)main( ){int c,x,y;x=0;y=0;c=0;c=x++&&y++;printf(“\n%d%d%d\n”,x,y,c);}A)100 B)211 C)011 D)0017.判断字符型变量ch为大写字母的表达式是。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第4章选择结构程序设计注:选择结构的考点,最重要的有两个,一个是逻辑表达式的值,另一个是分支界限。

弄明白这两个知识点,就能够以不变应万变了。

一、单项选择题1. 在C语言中,能代表逻辑值"真"的是。

A) true B)大于0的数C)非0整数D)非0的数2. 表示关系x<=y<=z的c语言表达式为。

A) (x<=y)&&(y<=z) B) (x<=y)AND(y<=z) C) (x<=y<=z) D) (x<=y)&(y<=z)3. 能正确表示逻辑关系:“a≥10或a≤0”的C语言表达式是。

A) a>=10 or a<=0 B) a>=0|a<=10 C) a>=10 &&a<=0 D) a>=10‖a<=04、判断char型变量c1是否为大写字母的表达式为。

A)’A’<=c1<=’Z’ B)(c1>=’A’) & (c1<=’Z’)C)(’A’<=c1)AND (‘Z’>=c1) D)(c1>=’A’)&& (c1<=’’Z’)5. 有定义char c; c=getchar(); 判断字符变量c为大写字母的正确表达式为。

A) ‘A’=<c<=’Z’ B)c>=‘A’&& c<=’Z C)A=<c<=Z D) c>=A && c<=Z6. 设有语句“int a=4;b=3,c=-2,d=2;”,则逻辑表达式“a>0&&b&&c<0&&d>0”的值是。

A)1B)0 C)-1 D)出错7. 设a为整型变量,则不能正确表达数学关系10<a<15的C语言表达式是。

A)10<a<15 B)a==11||a==12||a==13||a==14C) a>10&&a<15 D)!(a<=10)&&!(a>=15)8. 为表示逻辑表达式79<X<90,应使用的C语言表达式是。

A)( X>79 )&&( X<90 ) B) ( X>79 )!=( X<90 ) C) 79<X<90 D) (X>79 )||( X<90 )9. 在下面的条件语句中(其中s1和s2表示是C语言的语句),只有一个在功能上与其它三个语句不等价,它是。

A)if (a) s1 ; else s2;B)if (a= =0) s2; else s1;C)if (a!=0) s1; else s2; D)if (a= =0) s1; else s2;10. 假定所有变量均已正确定义,则下列程序段运行后y的值是。

int a=0,y=10;if(a=0) y--;else if(a>0) y++;else y+=y;A)20 B)11C)9 D)0解析:此类题目可以自行编写下述测试程序进行调试验证。

#include <stdio.h>void main(){......printf("y=%d\n",y) ;}11. 假定所有变量均已正确定义,则下列程序段运行后x的值是。

a=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)312. C语言对嵌套if语句的规定是:else语句总是与配对。

A) 其之前最近的if B) 第一个ifC) 缩进位置相同的if D) 其之前最近的且尚未配对的if13. 在C语言语句中,用来决定分支流程的表达式是。

A)可用任意表达式B)只能用逻辑表达式或关系表达式C)只能用逻辑表达式D)只能用关系表达式14. C语言中用表示逻辑“真”。

A) true B) 整数值1 C)非零整数值D) false15. 若k是int型变量,且有下面的程序段, 输出结果是。

int k; k= -3;if (k<=0) printf(“####”) ;else printf(“&&&&”);A)####B)&&&& C)####&&&& D)有语法错误,无输出结果16. main(){ int x=0,a=0,b=0;switch(x){case 0: b++;case 1: a++;case 2: a++;b++;}printf(“a=%d,b=%d\n”,a,b);}该程序的输出结果是。

A) a=2,b=1 B) a=1,b=1 C) a=1,b=0 D) a=2,b=217. 以下程序的输出结果是:()main(){ int x=-10,y= 1,z=1;if(x<y)if(y<0) z=0;else z=z+1;printf(“%d\n”,z);}A) 0 B) 1 C) 2 D) 318. 以下程序段的输出结果是。

int a=10,b=50,c=30 ;if(a>b)a=b ;b=c ;c=a ;printf("a=%2d b=%2d c=%2d\n",a,b,c) ;A) a=10 b=50 c=10 B) a=10 b=30 c=10 C) a=50 b=30 c=10 D) a=50 b=30 c=5019. 若int i=10; 执行下列程序后,变量i的正确结果是。

switch ( i ) { case 9: i+=1;case 10: i+=1;case 11: i+=1;default : i+=1;}A)13B)12C)11 D)10二、阅读程序,写出运行结果1.#include <stdio.h> main(){ int a=1,b=3,c=5; if (c==a+b)printf("yes\n"); elseprintf("no\n"); }运行结果为:no 2.#include <stdio.h>main(){ int a=12, b= -34, c=56, min; min=a;if(min>b) min=b;if(min>c) min=c;printf("min=%d", min);}运行结果为:min=-343.#include <stdio.h> main(){ int x=2,y= -1,z=5;if(x<y)if(y<0)z=0;elsez=z+1;printf(“%d\n”,z); }运行结果为:54.#include <stdio.h>main(){int a=10,b=50,c=30;if(a>b)a=b;b=c;c=a;printf("a=%d b=%d c=%d\n",a,b,c); }运行结果为:a=10 b=30 c=105.#include <stdio.h>main(){ float a,b,c,t;a=3;b=7;c=1;if(a>b) {t=a;a=b;b=t;}if(a>c) {t=a;a=c;c=t;}if(b>c) {t=b;b=c;c=t;}printf("%5.2f,%5.2f,%5.2f",a,b,c); }运行结果为:1.00,3.00,7.00 6.#include <stdio.h>main(){int a=2;float num=3.12,x;if(num<4)x=2*num*a;printf("result is %f\n",x); }运行结果为:result is 12.4800007.#include<stdio.h>main( ){ char c=’A’;if ((‘0’<=c ) &&(c<=’9’))printf(“YES”); elseprintf(“NO”);}运行结果为:NO 8.#include <stdio.h> main ( ){ float c=3.0 , d=4.0; if ( c>d )c=5.0;elseif ( c==d )c=6.0;elsec=7.0;printf ( “%.1f\n”,c ) ; }运行结果为:7.09.#include <stdio.h> main(){ int a=0,b=1,c=0,d=20; if(a)d=d-10;elseif(!b)if(!c)d=15;else d=25;printf("d=%d\n",d); }运行结果为:d=20 10.#include <stdio.h> main(){ int a=2,b=3,c=1; if (a>b)if (a>c)printf (“%d\n”,a); elseprintf (“%d\n”,c); printf (“over!\n”); }运行结果为:over!11.#include <stdio.h>main(){ int m;scanf("%d", &m);if (m >= 0){ if (m%2 == 0)printf("%d is a positive even\n", m);elseprintf("%d is a positive odd\n", m);}else{ if (m % 2 == 0)printf("%d is a negative even\n", m);elseprintf("%d is a negative odd\n", m);}}若键入-9,则运行结果为:-9 is a negative odd12.#include<stdio.h>main( ){ char ch;ch=getchar( );switch(ch){ case ‘A’ : printf(“%c”,’A’);case ‘B’ : printf(“%c”,’B’);break;default: printf(“%s\n”,”other”);}}当从键盘输入字母A时,运行结果为:AB 13.#include <stdio.h>main( ){ int a=1,b=0;scanf(“%d”,&a);switch(a){ case 1: b=1;break;case 2: b=2;break;default : b=10;}printf("%d", b);}若键盘输入5,运行结果为:1014.#include <stdio.h>main ( ){ int i=0,j=0,k=6;if((++i>0)||(++j>0))k++;printf("%d,%d,%d\n",i,j,k); }运行的结果为:1,0,7三、编程题1、输入两个数,输出较大的数。

相关文档
最新文档