参考答案:2 0 0
4.74以下程序的运行结果是 。
main()
{int a,b,c,d; a=c=0; b=1; d=20;
if(a) d=d-10; else if(!b)
if(!c) d=15; else d=25; printf(\}
参考答案:20
4.75 以下程序的运行结果是 。
#include
{int x,y=1,z; if(y!=0) x=5;
printf(\if(y==0) x=4; else x=5;
printf(\x=1; if(y<0)
if(y>0) x=4; else x=5;
printf(\}
参考答案: □□□□□□□□5 □□□□□□□□5 □□□□□□□□1
*4.76以下程序的运行结果是 。
#include
{int x,y=-2,z=0; if((z=y)<0) x=4; else if(y==0) x=5; else x=6;
printf(\if(z=(y==0)) x=5; x=4;
printf(\if(x=z=y) x=4;
printf(\}
参考答案:
□□□□□□□□4□□□□□□□-2 □□□□□□□□4□□□□□□□0 □□□□□□□□4□□□□□□□-2
*4.77 请阅读以下程序,为使输出时t值为4,输入量a和b应满足的条件是 。
main() {int s,t,a,b;
scanf(\s=1;t=1;
if(a>0) s=s+1; if(a>b) t=s+t; else if(a==b) t=5;
else t=2*s;
printf(\}
参考答案:00&&a
4.78 请阅读下面的程序,为使输出s=1,t=5的结果,输入量a和b应满足的条件是 a=b<=0 。
main() {int s,t,a,b;
scanf(\s=1;t=1;
if(a>0) s=s+1; if(a>b) t=s+t; else if(a==b) t=5; else t=2*s;
printf(\
4.79 下面程序根据以下函数关系,对输入的每个x值,计算出y值。请分析程序填空。
x y
2 -1 x≤-1 x-1 main() {int x,y; scanf(\if(【1】) y=x*(x+2); else if(【2】) y=x-1; else 【3】; if(y!=-1) printf(\else printf(\} 参考答案:【1】2 4.80下面程序根据以下函数关系,对输入的每个x值,计算出y值。请分析程序填空。 x x=a或x=-a -a scanf(\if(【1】) y=0; else if(【2】) y=sqrt(a*a-x*x); else y=x; printf(\} 参考答案:【1】x==-a||x==a【2】x>-a&&x *4.81 以下程序的功能是计算一元二次方程ax2+bx+c=0的根,请分析程序填空。 #include {float a,b,c,t,disc,twoa,term1,term2; printf(\ scanf(\if(【1】) if(【2】) printf(\ else printf(\else {disc=b*b-4*a*c; twoa=2*a; term1=-b/twoa; t=abs(disc); term2=sqrt(t)/twoa; if(【3】) printf(\ else printf(\ } } 参考答案:【1】a==0 fabs(a)<1e-4【2】b==0【3】disc<0 4.82 以下程序根据输入的三角形的三边判断是否能组成三角形,若可以则输出它的面积和三角形的类型。请分析程序填空。 #include \main() {float a,b,c,s,area; scanf(\if(【1】) {s=(a+b+c)/2; area=sqrt(s*(s-a)*(s-b)*(s-c)); printf(\ if(【2】) printf(\等边三角形\ else if(【3】) printf(\等腰三角形\ else if((a*a+b*b==c*c)||(a*a+c*c==b*b)||(b*b+c*c=a*a)) printf(\直角三角形\ else printf(\一般三角形\ } else printf(\不能组成三角形\} 参考答案:【1】a+b>c&&b+c>a&&c+a>b【2】a==b&&b==c 【3】a==b||b==c||a==c 4.83 某邮局对邮寄包裹有如下规定:若包裹的长宽高任一尺寸超过1米或重量超过30千克,不予邮寄;对可以邮寄的包裹每件收取手续费0.2元,在加上根据下表按重量wei计算的邮资。请分析程序填空。 重量(千克) 收费标准 wei<10 0.80 10 main() {float len,wei,hei,wid,mon,r; scanf(\if(len>1||wid>1||hei>1||wei>30) 【1】; else if(wei<10) r=0.8; else if(wei<=20) r=0.75; else if(wei<=30) 【2】; if(r==-1) printf(\else {【3】;printf(\} 参考答案:【1】r=-1【2】r=0.70【3】m=0.2+r*wei **4.84 某服装店经营套服,也单件出售。若买的不少于50套每套80元;不足50套的每套90元;只买上衣每件60元;只买裤子每条45元。以下程序的功能是读入所买上衣c和裤子t的件数,计算应付款m。请分析程序填空。 main() {int c,t,m; printf(\scanf(\if(【1】) if(c>=50) m=c*80; else m=c*90; else if(【2】) if(t>=50) m=t*80+(c-t)*60; else m=t*90+(c-t)*60; else if(【3】) m=c*80+(t-c)*45; else m=c*90+(t-c)*45; printf(\} 参考答案:【1】t==c 【2】c>t 【3】c>=50 4.85 以下程序的功能是判断输入的年份是否是闰年。请分析程序填空。 main() {int y,f; scanf(\if(y@0==0) f=1; else if(【1】) f=1; else 【2】; if (f) printf(\else printf(\printf(\} 参考答案:【1】year%4== 0&&year0!=0【2】f=0 *4.86 以下程序段针对输入的截止日期(年:yend,月:mend,日:dend)和出生日期(yman,mman,dman),计算出实际年龄。请分析程序填空。 设有:int yend,mend,dend,yman,mman,dman; age=yend-yman; if(mend【1】)mman) age--; else if(mend【2】mman&&dend【3】dman) age--; 参考答案:【1】<【2】==【3】< 4.87 有四个数a,b,c,d,要求从大到小的顺序输出。请分析程序填空。 main() {int a,b,c,d,t; scanf(\if(a printf(\} 参考答案:【1】c 4.88 以下程序的运行结果是 。 main() {int a=2,b=3,c; c=a; if(a>b) c=1; else if(a==b) c=0; else c=-1 printf(\}