逻辑运算和判断
更新时间:2023-11-11 22:44:01 阅读量: 教育文库 文档下载
第四章 逻辑运算和判断选取控制
4.1 选择题
(题4.1)逻辑运算符两侧运算对象的数据类型———. A)只能是0或1
B)只能是0或非0正数 C)只能是整型或字符型数据 D)可以是任何类型的数据
(题4.2)以下关于运算符优先顺序的描述中正确的是———.
A)关系运算符<算术运算符<赋值运算符<逻辑运算符 B)逻辑运算符<关系运算符<算术运算符<赋值运算符 C)赋值运算符<逻辑运算符<关系运算符<算术运算符 D)算术运算符<关系运算符<赋值运算符<逻辑运算符 (题4.3)下列运算符中优先级最高的是———.
A) < B) + C)&& D)! = (题4.4)能正确表示”当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)
(题4.5)表示图中坐标轴上阴影部分的正确表达式是———. / / / / / | / / / / / / | / / / / / | / / / / / / |
———————————————————————→X
A)(x<=a)&&(x>=b)&&(x<=c) B)(x<=a)||(b<=x<=c)
C)(x<=a)||(x>=b)&&(x<=c) D)(x<=a)&&(b<=x,=c)
(题4.6)判断char型变量ch是否为大写字母的正确表达式是————.
A)?A?<=ch<=?Z? B)(ch>=?A?)&(ch<=?Z?) B)(ch>=?A?)&&(ch<=?Z?) D)(?A?<=ch)AND(?Z?>=ch)
(题4.7)设x、yz是int型变量,且x=3,y=4,z=5,则下面表达式中值为0的是———.
A)?x?&&?y? B)x<=y
C)x||y+z&&y-z D)!((x (题4.8)已知x=43,ch=?A?,y=0;则表达式(x>=y&&ch A)0 B)语法错 C)1 D)”假” (题4.9)若希望当A的值为奇数时,表达式的值为”真”,A的值为偶数时,表达式的值为”假”.则 以下不能满足要求的表达式是———. A) A%2=-1 B)!(A%= =2) C)!(A%2) D)A%2 (题4.10)设有:int a=1,b=2,c=3,d=4,m=2,n=2;执行(m=a>b)&&(n=c>d)后n的值为——. A)1 B)2 C)3 D)4 (题4.11)判断char型变量c1是否为小写字母的正确表达式为————. A)?a?<=c1<=?z? B)(c1>=a)&&(c1<=z) 1 C)(?a?>=c1)||(?z<=c1?) D)(c1>=?a?)&&(c1<=?z?) (题4.12)以下程序的运行结果是———. #include “stdio.h” main() { int a,b,d=241; a=d/100%9; b=(-1)&&(-1); printf(“%d,%d”,a,b); } A)6,1 B)2,1 C)6,0 D)2,0 (题4.13)执行以下语句后的a值为【1】,b的值为【2】 int a,b,c; a=b=c=1; + + a | | + + b & & + + c ; 【1】A)错误 B)0 C)2 D)1. 【2】A)1 B)2 C)错误 D)0 (题4.14)执行以下语句后a的值为【1】,b的值为【2】. int a=5,b=6,w=1,x=2,y=3,z=4; (a=w>x)&&(b=y>z); 【1】A)5 B)0 C)2 D)1 【2】A)6 B)0 C)1 D)4 (题4.15) 以下不正确的if语句形式是———. A) if(x>y&&x!=y); B) if(x= =y) x+=y; C) if(x!=y)scanf(“%d”,&x) else scanf(“%d”,&y); D) if(x (题4.16)下列运算符中优先级最低的是【1】,优先级最高的是【2】. A)? : B)&& C)+ D)! = (题4.17)已知int x=10,y=20,z=30;以下语句执行后x,y,z的值是———. 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=20 (题4.18)以下if语句语法正确的是———. A) if(x>0) print(“%f”,x) else printf(“%f”,-x); B) if(x>0) {x=x+y;printf(“%f”,x);} else pritnf(“%f”,-x); C) if(x>0) {x=x+y;printf(“%f”,x);}; else printf(“%f”,-x); 2 D) if(x>0) {x=x+y;printf(“%f”,x)} else printf(“%f”,-x); (题4.19)请阅读以下程序: main() {int a=5,b=0,c=0; if(a=b+c) printf(“* * * \\n”); else printf(“$ $ $ \\n”); } 以上程序———. A)有语法错不能通过编译 B)可以通过编译但不能通过连接C)输出* * * D)输出$ $ $ (题4.20)以下程序的运行结果是————. main() {int m=5; if(m++>5)printf(“%d\\n”,m); else printf(“%d\\n”,m--); } A)4 B)5 C)6 D)7 (题4.21)当a=1,b=3,c=5,d=4时,执行完下面一段程序后x的值是————. If(a if(b A)1 B)2 C)3 D)6 (题4.22)有一函数关系见下表:: x y= x<0 x-1 x=0 x x>0 x+1 下面程序段中能正确表示上面关系的是————. A)y=x+1; B)y=x-1; if(x>=0) if(x! =0) if(x= =0) y=x; if(x>0) y=x+1; else y=x-1; else y=x; C)if(x<=0) D)y=x; 3 if(x<0) y=x-1; if(x<=0) else y=x; if(ifx<0) y=x-1; else y=x+1; else y=x+1; (题4.23)以下程序的输出结果是————. main() {int a=100,x=10,y=20,okl=5,ok2=0; if(x if(! Ok !) a=1; else if(ok2) a=10; a=-1; printf(“%d\\n”,a); } A)1 B)0 C)-1 D)值不确定 (题4.24)以下程序的输出结果是———. main() { int x=2,y=-1,z=2; if(x if(y=0) z=0; else z+=1; printf(“%d\\n”,.z); } A)3 B)2 C)1 D)0 (题4.25) 为了避免在嵌套的条件语句if-else中产生二义性,C语言规定,else子句总是与—— 配对. A)缩排位置相同的if B)其之前最近的if C)其之后最近的if D)同一行上的if (题4.26)以下不正确的语句为———. A)if(x B)if(x=y)&&(x!=0) x+=y; C)if(x!=y)scanf(“%d”,&x);else scanf(“%d”,&y); D)if(x (题4.27)请阅读以下程序: #include scnaf(“%f”,&a); if(a<0.0) b=0.0; else if((a<0.5)&&(a! =2.0)) b=1.0/(a+2.0); else if(a<10.0) b=1.0/x; else b=10.0; printf(“%f\\n”,y); } 4 若运行时输入2.0<回车>,则上面程序的输出结果是———. A)0.000000 B)0.500000 C)1.000000 D)0.250000 (题4.28)若有条件表达式 (exp) ? a++:b - -,则以下表达式中能完全等价二表达式(exp)的是— ——. A) (exp= =0) B) (exp! =0) C) (exp= =1) D) (exp! =1) (题4.29)若运行时给变量x输入12,则以下程序的运行结果是———. main() { int x,y; scanf(“%d”,&x); y=x>12 ? x+10 :x-12; printf(“%d\\n”,y); } A) 0 B) 22 C) 12 D) 10 (题4.30)以下程序的运行结果是———. main() { int k=4,a=3,b=2,c=1; printf(“\\n%d\\n”,k A) 4 B) 3 C) 2 D) 1 (题4.31)执行以下程序段后,变量a,b,.c的值分别是————. int x=10,y=9; int a,b,c;] a=(––x= =y + +)? ––x;+ +y; b=x+ +; c=y; A) a=9,b=9,c=9 B) a=8,b=8,c=10 C) a=9,b=10,c=9 D) a=1,b=11,c=10 (题4.32)若w、x、y、z、m均为int型变量,则执行下面语句的m值是————. w=1; x=2; y=3; z=4; m=(w A) 1 B) 2 C) 3 D) 4 (题4.33)若w=1,x=2,y=3,z=4,则条件表达式w int w=3,z=7,x=10; printf(“%d\\n”,x>10? x+1000: x-10); printf(“%d\\n”,w++||z++); printf(“%d\\n”,! w>z); printf(“%d\\n”,w&&z); A) 0 B) 1 C) 0 D) 0 1 1 1 1 5 1 1 0 0 1 1 1 0 4.2 填 空 题 (题4.35)当a=3,b=2,c=1时,表达式f=a>b>c 的值是【 】. (题4.36)当ia=5,b=4,c=2时,表达式a>b! =c 的值是【 】. (题4.37)以下程序的运行结果是————. #include printf(“%d\\t”,x); x* =y=z=5; printf(“%d\\t”,x); x=y= =z; printf(“%d\\n”,x); } (题4.38)在C语言中,表示逻辑”真”值用【 】. (题4.39)设y为int型变量,请写出描述”y是奇数”的表达式【 】 . (题4.40)C语言提供的三种逻辑运算符是【1】,【2】,【3】. (题4.41)设x,y,z均为int型变量,请写出描述”x或y中有一个小于z”的表达式【 】. (题4.42)设x,y,z均为int型变量,请写出描述”x,y和z中有两个为负数”的表达式【 】. (题4.43)已知A=7.5,B=2,C=3.6,表达式A>B&&C>A||AB的值是【 】. (题4.44)若a=6,b=4,c=2,则表达式 ! (a-b)+c-1&& b+c\\2的值是【 】. (题4.45)若a=2,b=4,则表达式 ! (x=-a)||(y=b)&&0的值是【 】. (题4.46)若a=1,b=4,c=3,则表达式 ! (a (题4.47)若a=6,b=4,c=3,则表达式a&&b+c| | b - c的值是【 】. (题4.48)若a=5,b=2,c=1,则表达式a-b (题4.49)设a=3,b=4,c=5,,则表达式a | | b+c&&b= =c的值是【 】. (题4.50)条件”2 (题4.51)当m=2,n=1,a=1,b=2,c=3时,执行完d=(m=a ! =b)&&(n=b>c)后,n的值为【1】, m的值为【2】. 6 (题4.52)以下程序的运行结果是———。 main() { int x,y,z; x=1;y=2;z=3; x=y- - < = x | | x+y != z; printf(“%d,%d”,x,y); } (题4.53) 以下程序的运行结果是———。 main() { int a1,a2,b1,b2; int I=5,j=7,d=0; 1= ! k ; a2= i ! =j ; printf(“a1=%d\\ta2=%d\\n”,a1,a2); b1=k&&j; b2=k | | j; printf(“b1=%d\\tb2=%d\\n”,b1,b2); } (题4.54) 以下程序的运行结果是———。 main() { int x,y,z; x=1;y=1;z=0; x=x | | y&&z; printf(“%d,%d”,x,x&&! y | | z); } (题4.55)有int x,y,z;且x=3,y=-4,z=5,则表达式(x&&y)= =(x | | z)的值为【 】. (题4.56)有int x,y,x;且x=3,y=-4,z=5,则以下表达式的值为【 】. ! (x>y)+(y ! =z) | | (x+y)&&(y-z) (题4.57)有int x,y,z;且x=3,y=-4,z=5,则以下表达式x++ - y+(++z)的值为【 】(题4.58) 有int a=3,b=4,c=5;则表达式a | | b+c&&b= =c的值为【 】 (题4.59) 有int a=3,b=4,c=5,x,y;则以下表达式的值为【 】 ! (x=a)&&(y=b)&&o (题4.60) 有int a=3,b=4;c=5;则以下表达式的值为【 】 ! (a+b)+c –1&&b+c\\2 (题4.61)若运行时输入:16<回车>,则以下程序的运行结果是———. #include int year; printf(“input you year:”); scanf(“%d”,&year); 7 if(year>=18) printf(“you $ 4.5 yuan/xiaoshi”); else printf(“your $ 3.0 yuan/xiaoshi”); } (题4.62) 若运行时输入:2<回车>,则以下程序的运行结果是——— #include char Class; printf(“Enter 1 for lst class post or 2 for 2nd post”); scanf(“%c”,&Class); if(Class= =?1?) printf(“lst class postage is 19p”); else printf(“2nd class postage is 14p”); } (题4.63)若运行时输入4.4<回车>,则以下程序的运行结果是———. #include { float CostPrice,SellingPrice; printf(“Enter Cost Price $:”); scanf(“%f”,&CostPrice); if(CostPrice>=5) { SellingPrice=CostPrice+CostPrice*0.25; Printf(“Selling Price(0.25) $ %6.2f”,SellingPrice); } else { SellingPrice=CostPrice + CostPrice*0.30; Printf(“Selling Price (0.30) $ %6.2f”,SellingPrice);} } (题4.64) 以下程序的运行结果是———. main() { if(2*2= =5 <2*2 = = 4) printf(“T”); else printf(“F”); } 8 (题4.65)请阅读以下程序: main() { int t,h,m; scanf(“%d”, &t); h=(t/100); if(h= =0) h=12; printf(“%d:”,h); m=t0; if(m<10) printf(“0”); printf(“%d”,m); if(t<1200 || t= =2400) printf(“AM”); else printf(“PM”); } 若运行时输入:1605 <回车> 时,程序的运行结果是———。 (题4.66)以下程序实现:输入圆的半径r各运算标志m,按照运算标志进行指定计算。 请在【 】内填入正确内容。 标 志 运 算 a 面 积 c 周 长 b 二者均计算 #define pi 3.14159 main() { char ; float r,c,a; printf(“input mark a c or b&& r\\n”); scanf(“%c%f”,&m,&r); if (【1】) { a=pi*r*r ; printf(“area is %f”,a);} if(【2】) { c=2*pi*r;printf(“circle is %f”,c);} if(【3】) { a=pi*r*r;c=2*pi*r;printf(“area&& circle are %f %f”,a,c);} } (题4.67)若运行时输入:5999<回车>,则以下程序的运行结果(保留小数点后一位是)——. main() { int x; float y; scanf(“%d”,&x); if (x>=0&&x<=2999) y=18+0.12*x; if(x>=3000&&x<=5999) y=36+0.6*x; if(x>=6000&&x<=10000) y=54+0.3*x; printf(“%6.1f”,y); } 9 (题4.68)以下程序实现输出x,y,z三个数中的最大者,请在【 】内填入正确内容. main() { int x=4,y=6,z=7; int 【1】; if(【2】) u=x; else u=y; if(【3】) v=u; else v=z; printf(“v=%d”,v); } (题4.69)以下程序实现;输入三个整数,按从大到小的顺序进行输出. 请在【 】内填入正 确内容. main() { int x,y,z,c; scanf(“%d%d %d”,&x,&y,&z); if(【1】) { c=y;y=z;z=c} if(【2】) { c=x;x=z;z=c;} if(【3】) { c=x;x=y;y=c} printf(“%d,%d,%d”,x, y ,z); } (题4.70)以下程序对输入的两个整数,按从大到小顺序输出., 请在【 】内填入正确内容. main() { int x,y,z; scanf(“%d,%d”,&x,&y); if(【1】) { z=x ; 【2】} printf(“%d,%d”,x,y); } (题4.71)以下程序对输入的一个小写字母,将字母循环后移5个位置后输出.如?a?变 成?f?,?w?变成?b.? 请在【 】内填入正确内容. #include “stdio.h” main() { char c; c=getchar(); if(c>=?a?&&c<=?u?) 【1】; else if(c>=?v?&&c<=?z?) 【2】; putchar(c); } (题4.72)输入一个字符,如果它是一个大写字母,则把它变成小写字母,如果它是一个小写 字母,则把它变成大写字母,其它字符不变. 请在【 】内填入正确内容. 10 scanf(“%d”,&y); if(y@0= =0) f=1; else if(【1】) f=1; else 【2】; if(f) printf(“%d is”,y); else printf(“%d is not”,y); printf(“a leap year \\n”); } (题4.86)以下程序针对输入的截止日期(年:yend,月:mend,日:dend)和出生日期 (yman,mman,dman),计算出实际年龄.请在【 】内填入正确内容. 设有:int yend,mend ,dend ,yman, mman,dman,age; age=yend –yman; if(mend【1】 mman) age - - ; else if(mend 【2】mman &&dend【3】dman) age - - ; (题4.87)有四个数a,b,c,d,要求按从大到小的顺序输出.请在【 】内填入正确内容. main() { int a,b,c,d,t; scanf(“%d %d %d %d”,&a,&b,&c,&d); if(a printf(“%d %d %d %d \\n”,a,b,c,d); } (题4.88)以下程序的运行结果是———. main() { int a=2,b=3,c; c=1; if(a>b) c=1; else if(a= =b) c=0; else c= - 1; printf(“%d\\n”,c); } (题4.89)若a=1,b=2,则表达式 a > b ? a : b + 1的值是【 】. (题4.90)若a=1,b=2,c=3,d=4,则表达式a >b ? a : c > d ? c : d的值是【 】. (题4.91)设有变量定义:int a=10,c=9;则表达式( - - a! =c++)?- - a:++c的值是 【 】。 (题4.92)若有说明语句:int x=1,y=0;则表达式x>(y+x)? 10:12.5>y++??a?:?A?的值【 】. (题4.93)若有说明语句:int a=1,b=0;则表达式+=a* - -a= =b? 12%5:?x?的值是【 】. (题4.94)若有x=1,y=2,z=3,则表达式(x (题4.95)若有说明语句:int x=1,y=0;则表达式x- - >(y+x)?5:25>y++??a?;?2?的值是【 】.. 16 (题4.96)以下程序的运行结果是———. # include int a= -10,b= -3; printf(“%d,”,- a%d); printf(“%d,”,(a – b,a+b)); printf(“%d\\n”,a – b? a – b; a+b); } (题4.97)以下程序的运行结果是———. main() { int x=1,y=1,z=1; y=y+z; x=x+y; printf(“%d,”,x (题4.98)以下程序的运行结果是———. main() { int x,y,z; x=3; y=z=4; printf(“%d,”,(x>=y>=x)? 1:0); printf(“%d\\n”,z>=y&&y>=x); } (题4.99)若运行时输入: - 2<回车>,则以下程序的输出结果是———. main() { int a,b; scanf(“%d”,&a); b=(a>=0)? a : - a; printf(“b=%d”,b); } (题4.100)若运行时输入:100<回车>时,下面程序的运行结果是———. main() { int a; scanf(“%d”,&a); printf(“%s”,(a%2!=0)? ”no” ; “yes”); } (题4.101)如果运行时输入字符为?Q?,则以下程序的运行结果是———. main() 17 { char ch; scanf(“%c”,&ch); ch=(ch>=?A?&&ch<=?Z?)? (ch+32):ch; ch=(ch>=?a?&&ch<=?z?)? (ch-32):ch; printf(“%c”,ch); } (题4.102)当运行时输入:1992<回车>,则以下程序的运行结果是———. main() { int y,t; scanf(“%d”,&y); t=((y%4= =0&&y0! =0) | | y@0= =0)? 1:0; if(t) printf(“%d is ”,y); else printf(“%d is not”,y); printf(“a leap year”); } (题4.103)以下程序是计算x,y,z三个数中值最小的.请在【 】内填入正确内容. main() { int x=4,y=5,z=8; int u,v; u=x (题4.104)设有变量定义:inta=5,c=4;则(――a= =++c)? ――a:c+ +的值是【1】,此时c的存储单元的值为【2】. (题4.105)执行以下的C语言程序段后,a=【1】,b=【2】,c=【3】. int x=10,y=9; int a,b,c; a=(x - - = =y++) ? x - - :y++; b=x++; c=y; (题4.106)设有int x=1,y=0;则以下表达式的值为【 】. x - - >(y+x)?10:12.5>y++ ??A?:?Z? (题4.107)设有int x=0,y=1;则以下表达式的值为【 】. x++*x - - !=?y??8 – 4 : y (题4.108) 若运行时输入:3.5/<回车>时,下面程序的运行结果是———. main() { float x,y; char o; double r; scanf(“%f %f %c”,&x,&y,&o); witch(o) { case ?+? : r=x+y ; bread; 18 case ?-? : r=x-y ; bread; case ?*? : r=x*y ; bread; case ?/? : r=x/y ; bread; } printf(“%f”,r); } (题4.109)根据以下嵌套的if语句所给条件,填写switch语句,使它完成相同的功能. (假设mark的取值在1~100之间.) if语句: if(mark<60) k=1; else if(mark<70) k=2; else if(mark<80) k=3; else if(mark<90) k=4; else if(mark<=100) k=5; switch语句 switch(【1】) { 【2】 k=1; break; case 6 : k=2; break; case 7: k=3; break; case 8: k=4; break; 【3】 k=5; } (题4.110)设有程序片段: switch (grade) { case ?A?: printf(“85-100\\n”); case ?B?: printf(“70-84n”); case ?C?: printf(“60-69\\n”); case ?D?: printf(“<60\\n”); default : printf(“error! \\n”); } 若 grade的值为?C?,则输出结果是———. (题4.111)以下程序段的运行结果是———. int x=1,y=0; switch (x) { case 1 : switch (y) { case 0 : printf(“ **1**\n”);break; case 1 : printf(“ **2**\n”);break; } case 2:printf(“**3**\n”); } (题4.112)根据以下函数关系,对输入的每个x值,计算出相应的y值.请在程序的【 】内 填入正确的内容. 19 x y x<0 0 0<=x<10 x 10<=x<20 10 20<=x<40 - 0.5x+20 main() { int x,c,m; float y; scanf(“%d”,&x); if(【1】) c= -1; else c=【2】; switch(c) { case –1:y=0; break; case 0 : y=x; break; case 1: y=10; bread; case 2: case 3: yp- 0.5*x+20; break; default: y= -2; } if(【3】) printf(“y=%f”,y); else printf(“error\\n”); } (题4.113)以下程序的运行结果是———. main() { int a=2,b=7,c=5; switch(a>0) { case 1:switch(b<0) { case 1: printf(“@”);break; case 2:printf(“!”);break; } case 0:switch(c = =5) {case 0: printf(“*”); break; case 1: printf(“#”); break; default: printf(“#”);break; } default: printf(“&”); 20 } printf(“\\n”); } (题4.114)请读程序: # include { int x=1,y=0,a=0,b=0; switch(x) { case 1: switch(y) { case 0 : a++ ; break ; case 1: b++ ; break ; } case 2; a++; b++; break; } printf(“a=%d,b=%d”,a,b); } 上面程序的运行结果是———. (题4.115)假设奖金税率如下(a代表奖金,r代表税率) a<500 r=0% 500<=a<1000 r=5% 1000<=a<2000 r=8% 2000<=a<3000 r=10% 3000<= a r=15% 以下程序对输入的一个奖金数,求税率和应交税款以及实得奖金数(扣除奖金收 税后).题中r代表税率,t代表税款,b代表实得奖金数.请在【 】内填入正确内容. main() { float a,r,t,b; int c; scanf(“%f”,&a); if(a>=3000) c=6; else c=【1】; switch(c) { case 0:; r=0 ; break ; case 1 :r=0.05; break ; case 2: case 3 : 【2】 ; break ; case 4 : case 5: r=0.1 ; break ; case 6: r=0 .15; break ; } t=a*r ; b=a – t ; printf(“r=%f,t=%f,b=%f”,r,t,b); 21 } (题4.116)某处自动加油站有?a?,?b?,?c?三种汽油,单价分别为1.50,1.35,1.18(元/千克),也提 供了”自己加”或”协助加”两个服务等级,这样用户可以得到5%或者说10%的优惠.本程序针对用户输入加油量a,汽油品种b和服务类型c(?f? - - 自动,?m? - - 自己,?e? - - 协助),输出应付款m.请在【 】内填入正确内容. main() { float a,r1,r2,m; char b,c; scanf(“%f %f %c”,&a,&b,&c); switch(b) { case ?a? :r1=1.5;break; case ?b?: 【1】;break; case ?c?: r1=1.18; break; } switch(c) { case ?f?: r2=0; break; case ?m?: r2=0.05; break; case 【2】: r2=0.1; break; } m=【3】; printf(“%f”,m); } (题4.117) main() { int yy,mm ,len; printf(“year,month=”); scanf(“%d %d”,&yy,&mm); switch(mm) { case 1 : case 3 : case 5 : case 7 : case 8 : case 10 : case 12 : 【1】; break ; case 4 : case 6 : case 9 : case 11 : len=30 ; break; case 2 ; if(yy%4 = =0 &&yy0 ! =0 | | yy@0= =0) 【2】; else 【3】; break ; default: printf(“input error”); break ; } printf(“the length of %d %d is %d\\n”,yy,mm,len); } (题4.118)以下程序用以计算y年m1月d1日与同年的m2月d2之间的天数(m2>=m1), 并打印计算结果.若m2=m1且d1=d2则算了天.在闰年时,2月有29天.闰年的 22 年号由以下方式确定:该年号能被4整除但不能被100整除,或者该年号能被400整除则是闰年.例如:输入1997,2.27,3,10<回车>时,输出为12.表明从1997年2月27日到3月10日共有12天.请在【】内填入正确内容. main() { int y,m1,d1,m2,d2; int I,d; scanf(“%d,%d,%d,%d,%d”,&y,&m1,&d1,&m2,&d2); y=(y%4= =0【1】 y0! =0【2】 y@0= =0)? 1:0; d=0 – d1; for(i=m1;i case 1:case 3:case 5:case 7: case 8:case 10:case 12: d+=31; break; case 2:d=d+28+y; break; case 4:case 5:case 9:case 11: 【3】; } printf(“%d”,d+d2+1); } 4.3 编 程 题 (题4.119)编制程序要求输入整数a和b,若a2和b2大于100,则输出a2+b2百位以上的数字, 否则输出两数之和. (题4.120)试编程判断输入的正整数是否既是5又是7的整倍数.若是,则输出yes;否则输出 no. (题4.121)请编程序:根据以下函数关系,对输入的每个x值,计算出相应的y值. x X<0 0 23 (1) 能同时被3,5,7整除; (2) 能被其中两数(要指出哪两处)整除; (3) 能被其中一个数(要指出哪一个)整除; (4) 不能被3,5,7任一个整除. (题4.123)将以下程序段改用非嵌套的if语句实现. int s,t,m; t=(int) (s/10); switch(t) { case 10: m=5; break; case 9: m=4; break; case 8: m=3; break; case 7: m=2; break; case 6: m=1; break; default m=0; } (题4.124)有switch编程实现: { y= - 1 (x<0) (x=0) x>0 0 1 (题4.125)将以下程序段改用嵌套的if语句实现. int s,tm; t=(int) (s.10); switch(t) { case 10:,=5; break; case 9: m=4; break; case 8: m=3; break; case 7: m=2; break; case 6: m=1; break; default m=0; } (题4.126)请将以下语句改写switch成语句. If((s>0)&&(s<=10)) If((s>=3)&&(s<=6)) x=2; else if((s>1) | | (s>8)) x=3; else x=1; else x=0; (题4.127)编程实现以下功能:读入两个运算符(data1和data2)及一个运算符(op),计算表达式 data1op data2的值,其中op可为+ ,- , *, /(用switch语句实现). (题4.128)编一程序,对于给定的一个百分制成绩,输出相应的五分制成绩.设:90分以上为? A?,80~89分为?B?,70~79分为?C?,60~69分为?D?,60分以下为?E?(用switch语句实现). 24 第四章 逻辑运算和判断选取控制 4.1 选择题 (题4.1) D (题4.2) C (题4.3) B (题4.4) C (题4.5) C (题4.6)C (题4.7) D (题4.8) C (题4.9) C (题4.10) B (题4.11)D (题4.12) B (题4.13) 【1】 C 【2】 A (题4.14) 【1】 B 【2】 A (题4.15) C (题4.16) 【1】 A 【2】 C (题4.17) B (题4.18) B (题4.19) D (题4.20) C (题4.21) B (题4.22) C (题4.23) C (题4.24) B (题4.25) B (题4.26) B (题4.27) B (题4.28) B (题4.29) A (题4.30) D (题4.31) B (题4.32) A ((题4.34) C 4.2 填空题 (题4.35) 0 (题4.36) 1 (题4.37) 5 25 1 (题4.38) 非0的数字 (题4.39) (y%2) = =1 (题4.40) 【1】 && 【2】 | | 【3】 ! (题4.41) x (题4.42)((x<0)&&(y<0)) | | ((x<0)&&(z<0)) | | ((y<0)&&(z<0)) (题4.43) 0 (题4.44) 1 (题4.45) 0 (题4.46) 0 (题4.47) 1 (题4.48) 0 (题4.49) 1 (题4.50) x>2&&x<3 | | x<= - 10 或 ((x<2)&&(x<3)) | | (x< -10) (题4.51) 【1】 0 【2】 1 (题4.52) 1 , 1 (题4.53) a1=1 a2=1 b1=0 b2=1 (题4.54) 1 ,0 (题4.55) 1 (题4.56) 1 (题4.57) 13 (题4.58) 1 (题4.59) 0 (题4.60) 1 (题4.61) your $ 3.0 yuan / xiaoshi (题4.62)2nd class postage is 14p (题4.63) selling price(0.30) $ 5.72 (题4.64) F 题4.33) D 25
正在阅读:
逻辑运算和判断11-11
赞美老师的诗歌4篇03-21
年产3万吨镍铁合金生产线项目建设申请建设可研报告 - 图文07-12
新少林寺观后感04-02
学习贾志敏老师的作文教学艺术心得体会09-02
2012年二级建造师考试施工管理真题及答案(已校对)05-02
蒙牛乳业上市架构08-16
永不妥协观后感04-02
双语试题104-23
- exercise2
- 铅锌矿详查地质设计 - 图文
- 厨余垃圾、餐厨垃圾堆肥系统设计方案
- 陈明珠开题报告
- 化工原理精选例题
- 政府形象宣传册营销案例
- 小学一至三年级语文阅读专项练习题
- 2014.民诉 期末考试 复习题
- 巅峰智业 - 做好顶层设计对建设城市的重要意义
- (三起)冀教版三年级英语上册Unit4 Lesson24练习题及答案
- 2017年实心轮胎现状及发展趋势分析(目录)
- 基于GIS的农用地定级技术研究定稿
- 2017-2022年中国医疗保健市场调查与市场前景预测报告(目录) - 图文
- 作业
- OFDM技术仿真(MATLAB代码) - 图文
- Android工程师笔试题及答案
- 生命密码联合密码
- 空间地上权若干法律问题探究
- 江苏学业水平测试《机械基础》模拟试题
- 选课走班实施方案
- 运算
- 逻辑
- 判断
- 东明学校小学部生豆芽活动方案
- 新目标九年级英语期末复习内容和知识要点
- 地接导游职责
- 《西方经济学》形考任务1
- 企业法律审核工作若干规定
- 海南农产品物流成本调查报告
- 仿写
- 全国计算机二级考试习题题库(附答案)
- 用于高温机械的单组份超高温密封胶
- NJU历年大气考研试题汇总
- 名词解释与简答题
- 山东省烟台市2016-2017学年高二上学期期末考试数学(理)试题Word版含答案 - 图文
- 檩条暗藏型复合板施工方案
- 英语德语汽车类词汇中文对照 - 图文
- 历年四川师范大学文理学院录取分数线
- 2018高考语文文言句式导学案及练习题 - 图文
- 第六章作业内容(答案)
- 高鸿业主西方经济学微观部分第五版-课后答案
- 地下停车场施工组织设计
- 9.4施工测量记录