《浙江大学C语言期末上机考试题.pdf》由会员分享,可在线阅读,更多相关《浙江大学C语言期末上机考试题.pdf(85页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、上 机 考 试 练 习 题 20021程 序 填 空,不 要 改 变 与 输 入 输 出 有 关 的 语 句。输 入 一 个 正 整 数 repeat(0repeat10),做 repeat次 下 列 运 算:输 入 x,计 算 并 输 出 下 列 分 段 函 数 f(x)的 值(保 留 1位 小 数)。当 x 不 等 于 0时,y=f(x)=1/x,当 x 等 于 0时,y=f(x)=0。输 入 输 出 示 例:括 号 内 是 说 明 输 入 2(repeat=2)10(x=10)0(x=0)输 出 f(10.00)=0.1f(0.00)=0.0Sinclude int main(void)
2、int repeat,ri;double x,y;scanf(/d”,&repeat);for(ri=1;ri=repeat;ri+)scanf(/z%lfz,,&x);/*-*/if(x!=O)y=1/x;elsey=0;printf Cf(%.2f)=%lfn”,x,y);)20022程 序 填 空,不 要 改 变 与 输 入 输 出 有 关 的 语 句。输 入 华 氏 温 度,输 出 对 应 的 摄 氏 温 度。计 算 公 式:c=5*(f-32)/9,式 中:c表 示 摄 氏 温 度,f表 示 华 氏 温 度。输 入 输 出 示 例:括 号 内 为 说 明 输 入 150(fahr=1
3、50)输 出 Celsius=65Sinclude int main(void)int Celsius,fahr;/*-*/scanf(%cT,&fahr);celsius=5.0*(fahr-32)/9;printfCcelsius=%dn,Celsius);)20023程 序 填 空,不 要 改 变 与 输 入 输 出 有 关 的 语 句。输 入 存 款 金 额 money,存 期 year和 年 利 率 rate,根 据 下 列 公 式 计 算 存 款 到 期 时 的 利 息 interest(税 前),输 出 时 保 留 2位 小 数。interest=money(1+rate)yea
4、r-money输 入 输 出 示 例:括 号 内 为 说 明 输 入 1000 3 0.025(money=1000,year=3,rate=0.025)输 出 interest=76.89ttinclude Winclude int main(void)(int money,year;double interest,rate;/*-*/scanf(u%d%d%lf),&money,&year,&rate);interest=money*pow(1+rate),year)-money;printf(interest=%.2fn?/,interest);20024程 序 填 空,不 要 改 变
5、与 输 入 输 出 有 关 的 语 句。输 入 一 个 正 整 数 repeat(0 repeat=0时,f(x)=x0.5,当 x小 于。时,f(x)=(x+l)2+2x+l/xo输 入 输 出 示 例:括 号 内 是 说 明 输 入 3(repeat=3)10-0.50输 出f(10.00)=3.16f(-0.50)=-2.75f(0.00)=0.00include Sinclude int main(void)(int repeat,ri;double x,y;scanf(d,&repeat);for(ri=1;ri=0)y=sqrt(x);else y=pow(x+1),2)+2*x+
6、1/x;printf(,/f(%.2f)=%.2fn”,x,y);)20025程 序 填 空,不 要 改 变 与 输 入 输 出 有 关 的 语 句。输 入 一 个 正 整 数 repeat(0repeat10),做 repeat次 下 列 运 算:输 入 实 数 x,计 算 并 输 出 下 列 分 段 函 数 f(x)的 值,输 出 时 保 留 1位 小 数。当 x 不 等 于 10时,y=f(x)=x,当 x 等 于 10时,y=f(x)=l/x0输 入 输 出 示 例:括 号 内 是 说 明 输 入 2(repeat=2)10234输 出 f(10.0)=0.1f(234.0)=234.
7、0#include int main(void)(int repeat,ri;double x,y;scanf(/z%dz/,&repeat);for(ri=1;ri=repeat;ri+)/*/scanf(%lf,&x);if(x!=10)y=x;elsey=1/x;printf(/zf(%.If)=%.x,y);20026程 序 填 空,不 要 改 变 与 输 入 输 出 有 关 的 语 句。输 入 2个 整 数 numl和 num2,计 算 并 输 出 它 们 的 和、差、积、商 与 余 数。输 出 两 个 整 数 的 余 数 可 以 用 printf(/z%d%d=%dn,,numl,
8、num2,numl%num2);输 入 输 出 示 例:括 号 内 是 说 明 输 入 5 3(numl=5,num2=3)输 出 5+3=85-3=25*3=155/3=15%3=2Sinclude int main(void)(int numl,num2;/*-*/scanf(%d%d,&num1,&num2);printf(%d+%d=%dn,numl,num2,num1+num2);printf(%d-%d=%dn,numl,num2,num1-num2);printf(%d*%d=%dn,numl,num2,num1*num2);printf(%d/%d=%dn,numl,num2,
9、num1/num2);printf(%d%d=%dn,numl,num2,num1%num2);return 0;20031程 序 填 空,不 要 改 变 与 输 入 输 出 有 关 的 语 句。计 算 表 达 式 1+2+3+.+100的 值。输 出 示 例:sum=5050Sinclude int main(void)(int i,sum;/*-*/sum=0;for(i=1;i=100;i+)sum=sum+i;printf(sum=%dn”,sum);)20032程 序 填 空,不 要 改 变 与 输 入 输 出 有 关 的 语 句。输 入 一 个 正 整 数 repeat(0repe
10、at10),做 repeat次 下 列 运 算:输 入 一 个 正 整 数 m(0=m=100),计 算 表 达 式 m+(m+1)+(m+2)+.+100的 值。输 入 输 出 示 例:括 号 内 为 说 明 输 入 3(repeat=3)0(计 算 0+1+2+.+100)10(计 算 10+11+12+.+100)50(计 算 50+51+52+.+100)输 出 sum=5050sum=5005sum=3825Sinclude int main(void)(int i,m,sum;int repeat,ri;scanf(d,&repeat);for(ri=1;ri=repeat;ri+
11、)scanf(%d,&m);/*-*/sum=0;for(i=m;i=100;i+)sum=sum+i;printf(z/sum=%dn,sum);)20033程 序 填 空,不 要 改 变 与 输 入 输 出 有 关 的 语 句。输 入 一 个 正 整 数 repeat(0repeat10),做 repeat次 下 列 运 算:输 入 2个 正 整 数 m 和 n(m=n),计 算 表 达 式 1/m+1/(m+1)+1/(m+2)+1/n的 值,输 出 时 保 留 3位 小 数。输 入 输 出 示 例:括 号 内 为 说 明 输 入 3(repeat=3)5 15(计 算 1/5+1/6+
12、1/7+.+1/15)10 20(计 算 1/10+1/11+1/12+.+1/20)1 3(计 算 1+1/2+1/3)输 出 sum=1.235sum=0.769sum=1.833Sinclude int main(void)(int i,m,n;int repeat,ri;double sum;scanf(d,&repeat);for(ri=1;ri=repeat;ri+)scanf(%d%d,&m,&n);/*-*/sum=0;for(i=m;i=n;i+)sum=sum+1.0/i;printf(z/sum=%.3frT,sum);)20034程 序 填 空,不 要 改 变 与 输
13、入 输 出 有 关 的 语 句。输 入 一 个 正 整 数 repeat(0repeat10),做 repeat次 下 列 运 算:输 入 一 个 正 整 数 n,计 算 表 达 式 1+1/3+1/5+.的 前 n 项 之 和,输 出 时 保 留 6位 小 数。输 入 输 出 示 例:括 号 内 为 说 明 输 入 2(repeat=2)5(计 算 1+1/3+1/5+1/7+1/9)23(计 算 1+1/3+1/5+.+1/45)输 出 sum=1.787302sum=2.549541Sinclude int main(void)int i,n;int repeat,ri;double s
14、um;scanf(,%dz/,&repeat);for(ri=1;ri=repeat;ri+)scanf(d,&n);/*-*/sum=0;for(i=1;i=n;i+)sum=sum+1.0/(2*i-1);printf(,zsum=%.6fn”,sum);)20035程 序 填 空,不 要 改 变 与 输 入 输 出 有 关 的 语 句。输 入 一 个 正 整 数 repeat(0repeat10),做 repeat次 下 列 运 算:读 入 一 个 正 整 数 n,计 算 1 1/4+1/7 1/10+的 前 n 项 之 和,输 出 时 保 留 3位 小 数。输 入 输 出 示 例:括
15、号 内 是 说 明 输 入 2(repeat=2)310输 出 sum=0.893sum=0.819Sinclude int main(void)(int flag,i,n,t;int repeat,ri;double item,sum;scanf(d,&repeat);for(ri=1;ri=repeat;ri+)scanf(d,&n);/*-*/sum=0;flag=1;item=0;t=1;for(i=1;i=n;i+)item=flag*1.0/t;sum=sum+item;flag=-flag;t=t+3;)printf(z,sum=%.3fnz/,sum);)20036程 序 填
16、空,不 要 改 变 与 输 入 输 出 有 关 的 语 句。输 入 一 个 正 整 数 repeat(0repeat10),做 repeat次 下 列 运 算:读 入 2个 整 数 lower和 upper,输 出 一 张 华 氏 一 摄 氏 温 度 转 换 表,华 氏 温 度 的 取 值 范 围 是 lower,upper,每 次 增 加 2F。计 算 公 式:c=5*(f-32)/9,其 中:c表 示 摄 氏 温 度,f表 示 华 氏 温 度。输 出 请 使 用 语 句 printf(zz%3.Of%6.lfnz/,fahr,Celsius);输 入 输 出 示 例:括 号 内 是 说 明
17、 输 入 2(repeat=2)32 35(lower=32,upper=35)40 30(lower=40,upper=30)输 出 fahr Celsius32 0.034 1.1fahr CelsiusSinclude int main(void)(int lower,upper;int repeat,ri;double Celsius,fahr;scanf(d,&repeat);for(ri=1;ri=repeat;ri+)scanf(d%d,&lower,&upper);printf Cfahr celsiusn);/*-*/for(fahr=lower;fahr=upper;fah
18、r=fahr+2)celsius=5*(fahr-32)/9;printf(%3.0f%6.1fn,fahr,Celsius);)20037程 序 填 空,不 要 改 变 与 输 入 输 出 有 关 的 语 句。输 入 一 个 正 整 数 repeat(0repeat10),做 repeat次 下 列 运 算:输 入 2 个 正 整 数 m 和 n,计 算 m!+n!o输 入 输 出 示 例:括 号 内 是 说 明 输 入:2(repeat=2)1 4(m=l,n=4)3 8(m=3,n=8)输 出:1!+4!=253!+8!=40326ttinclude stdio.h int main(v
19、oid)(int i,m,n;int repeat,ri;double fm,fn;scanf(%d,ferepeat);for(ri=1;ri=repeat;ri+)scanf(z,%d%dz,,&m,&n);/*-*/fm=fn=1;for(i=1;i=m;i+)for(i=1;i=n;i+)fn=fn*i;printf C%d!+%d=%.Ofn”,m,n,fm+fn);)20038程 序 填 空,不 要 改 变 与 输 入 输 出 有 关 的 语 句。输 入 一 个 正 整 数 repeat(0repeat10),做 repeat次 下 列 运 算:读 入 1 个 实 数 x和 正 整
20、 数 n(n=50),计 算 并 输 出 x 的 n 次 累(保 留 2位 小 数),不 允 许 调 用 pow函 数 求 幕。输 入 输 出 示 例:括 号 内 是 说 明 输 入 2(repeat=2)1.5 2(x=l.5,n=2)2 7(x=2,n=7)输 出 2.25128.00Sinclude int main(void)(int i,n;int repeat,ri;double mypow,x;scanf(d,&repeat);for(ri=1;ri=repeat;ri+)scanf(,z%lf%dz,,&x,&n);/*-*/mypow=1;for(i=1;i=n;i+)myp
21、ow=mypow*x;printfC%.2fnz,,mypow);20041程 序 填 空,不 要 改 变 与 输 入 输 出 有 关 的 语 句。输 入 一 个 正 整 数 n,生 成 一 张 3的 乘 方 表,输 出:T 0 3%的 值,可 调 用 幕 函 数 计 算 3的 乘 方。输 出 使 用 语 句 printf(,zpow(3,%d)=%.Ofn,z,i,mypow);输 入 输 出 示 例:括 号 内 是 说 明 输 入 3(n=3)输 出 pow(3,0)=1pow(3,1)=3pow(3,2)=9pow(3,3)=27Sinclude Sinclude int main(vo
22、id)(int i,n;double mypow;scanf(d,&n);/*-*/for(i=0;i=n;i+)mypow=pow(3,i);printf(pow(3,%d)=%.Ofn,i,mypow);)return 0;)20042程 序 填 空,不 要 改 变 与 输 入 输 出 有 关 的 语 句。输 入 一 个 正 整 数 n,生 成 一 张 阶 乘 表,输 出 l!n!的 值,要 求 定 义 和 调 用 函 数 fact(n)计 算 n!,函 数 类 型 为 double。输 出 使 用 语 句 printf(/z%d!=%.0fn”,i,myfact);输 入 输 出 示 例
23、:括 号 内 是 说 明 输 入 3(n=3)输 出1!=12!=23!=6include int main(void)(int i,n;double myfact;double fact(int n);scanf(,z%dz,,&n);/*-*/for(i=1;i=n;i+)myfact=fact(i);printf(%d!=%.Ofn,i,myfact);)return 0;)/*-*/double factfint n)(inti;double f=1;for(i=1;i=n;i+)f=f*i;return f;)20043程 序 填 空,不 要 改 变 与 输 入 输 出 有 关 的
24、语 句。输 入 一 个 正 整 数 repeat(0repeat10),做 repeat次 下 列 运 算:输 入 2个 正 整 数 m 和 n(m=n),计 算 n!/(m!*(n-m)!)。要 求 定 义 并 调 用 函 数 fact(n)计 算 n的 阶 乘,其 中 n 的 类 型 是 int,函 数 类 型 是 doubleo例:括 号 内 是 说 明 输 入:2(repeat=2)2 7(m=2,n=7)5 12(m=5,n=12)输 出:result=21result=792Sinclude stdio.h double fact(int n);int main(void)(int
25、 m,n;int repeat,ri;double s;scanf(d,&repeat);for(ri=1;ri=repeat;ri+)scanf(,%d%d/,,&m,&n);/*-*/s=fact(n)/(fact(m)*fact(n-m);printf(result=%.Ofn,z,s);return 0;)/*-*/double fact(int n)(int i;double f=1;for(i=1;i=n;i+)f=f*i;return f;)20044程 序 填 空,不 要 改 变 与 输 入 输 出 有 关 的 语 句。计 算 lOO-O.5+10r0.5+10000.5的 值
26、(保 留 2位 小 数),可 调 用 sqrt函 数 计 算 平 方 根。输 入 输 出 示 例:括 号 内 是 说 明 输 出 sum=20435.99Sinclude Sinclude int main(void)int i;double sum;/*sum=0;for(i=100;i=1000;i+)sum=sum+sqrt(i);printf(z/sum=%.2fn,z,sum);)30001程 序 填 空,不 要 改 变 与 输 入 输 出 有 关 的 语 句。输 入 一 个 正 整 数 repeat(0repeat10),做 repeat次 下 列 运 算:输 入 参 数 a,b,
27、c,求 一 元 二 次 方 程 a*x*x+b*x+c=0的 根,结 果 保 留 2位 小 数。输 出 使 用 以 下 语 句:printf(参 数 都 为 零,方 程 无 意 义!n);printf(a和 b为 0,c不 为 0,方 程 不 成 立 n);printf(,zx=%0.2fn,-c/b);printf(z,xl=%0.2fnz,,(-b+sqrt(d)/(2*a);printf(z/x2=%0,2fn”,(-b-sqrt(d)/(2*a);printf(z,xl=%0.2f+%0.2finz,,-b/(2*a),sqrt(-d)/(2*a);printf C/x2=%0.2f-
28、%0.2finz,,-b/(2*a),sqrt(-d)/(2*a);输 入 输 出 示 例:括 号 内 为 说 明 输 入:5(repeat=5)0 0 0(a=0,b=0,c=0)0 0 1(a=0,b=0,c=l)0 2 4(a=0,b=2,c=4)2.1 8.9 3.5(a=2.1,b=8.9,c=3.5)1 2 3(a=l,b=2,c=3)输 出:参 数 都 为 零,方 程 无 意 义!a和 b为 0,c不 为 0,方 程 不 成 立 x=-2.00 xl=-0.44x2=-3.80 xl=-1.00+1.4Hx2=-1.00-1.41iSinclude Sinclude int ma
29、in(void)(int repeat,ri;double a,b,c,d;scanf(,z%dz/,&repeat);for(ri=1;ri=0)printf(x1=%0.2fn,(-b+sqrt(d)/(2*a);printf(x2=%0.2fn,(-b-sqrt(d)/(2*a);)else printf(x1=%0.2f+%0.2fin,-b/(2*a),sqrt(-d)/(2*a);printf(x2=%0.2f-%0.2fin,-b/(2*a),sqrt(-d)/(2*a);)30002程 序 填 空,不 要 改 变 与 输 入 输 出 有 关 的 语 句。输 入 一 个 正 整
30、数 repeat(0repeat10),做 repeat次 下 列 运 算:输 入 一 个 整 数 x,计 算 并 输 出 下 列 分 段 函 数 sign(x)的 值。-1 x 0输 入 输 出 示 例:括 号 内 是 说 明 输 入 3(repeat=3)10(x=10)0(x=0)-98(x=-98)输 出 sign(10)=1(x=10时 y=1)sign(0)=0(x=0时 y=0)sign(-98)=-1(x=-98时 y=-1)Sinclude int main(void)(int repeat,ri;int x,y;scanf(,z%dz/,&repeat);for(ri=1;
31、ri 0)y=1;else if(x=O)y=0;elsey=-1;printf(sign册 d)=%dn”,x,y);)return 0;)30003程 序 填 空,不 要 改 变 与 输 入 输 出 有 关 的 语 句。输 入 10个 字 符,统 计 其 中 英 文 字 母、空 格 或 回 车、数 字 字 符 和 其 他 字 符 的 个 数。输 入 输 出 示 例:括 号 内 是 说 明 输 入 Reold 123?输 出 letter=5,blank=1,digit=3,other=1Sinclude int main(void)(char c;int blank,digit,i,let
32、ter,other;blank=digit=letter=other=0;for(i=1;i=a&c=A&c=0&c=91)digit+;else if(c=|c=n)blank+;else other+;printf(letter=%d,blank=%d,digit=%d,other=%dn,letter,blank,digit,other);return 0;30004程 序 填 空,不 要 改 变 与 输 入 输 出 有 关 的 语 句。输 入 一 个 正 整 数 repeat(0repeat10),做 repeat次 下 列 运 算:输 入 五 级 制 成 绩(AE),输 出 相 应
33、的 百 分 制 成 绩(0100)区 间,要 求 使 用 switch语 句。五 级 制 成 绩 对 应 的 百 分 制 成 绩 区 间 为:A(90T00)、B(80-89)、C(70-79)、D(60-69)和 E(0-59),如 果 输 入 不 正 确 的 成 绩,显 示“Invalid input”。输 出 使 用 以 下 语 句:printf(“90T00n);printf(“80-89n);printf(70-79n);printf(60-69n);printf(0-59n);printf(Invalid inputn);输 入 输 出 示 例:括 号 内 是 说 明 输 入 6A
34、BCDEj(repeat=6,输 入 的 五 级 成 绩 分 别 为 A、B、C、D、E和 无 效 的 字 符 j)输 出 90-10080-8970-7960-690-59Invalid input(输 入 数 据 不 合 法)#include int main(void)char ch;int repeat,ri:s c a n f&r e p e a t);for(ri=1;ri=repeat;ri+)ch=getchar();/*-*/switch(ch)case A:printf(90-100n);break;case B:printf(80-89n);break;caseC:pri
35、ntf(70-79n);break;ca se D:printf(60-69n);break;caseE:printf(0-59n);break;default:printf(Invalid inputn);break;)return 0;)30005程 序 填 空,不 要 改 变 与 输 入 输 出 有 关 的 语 句。查 询 水 果 的 单 价。有 4种 水 果,苹 果(apples)、梨(pears)、桔 子(oranges)和 葡 萄(grapes),单 价 分 别 是 3.00元/公 斤,2.50元/公 斤,4.10元/公 斤 和 10.20元/公 斤。在 屏 幕 上 显 示 以 下
36、 菜 单(编 号 和 选 项),用 户 可 以 连 续 查 询 水 果 的 单 价,当 查 询 次 数 超 过 5次 时,自 动 退 出 查 询;不 到 5次 时,用 户 可 以 选 择 退 出。当 用 户 输 入 编 号 1 4,显 示 相 应 水 果 的 单 价(保 留 1位 小 数);输 入 0,退 出 查 询;输 入 其 他 编 号,显 示 价 格 为 0。输 入 输 出 示 例:括 号 内 是 说 明 输 入 3(oranges 的 编 号)0(退 出 查 询)输 出 1 apples2 pears3 oranges4 grapes0 Exitprice=4.11 apples2 p
37、ears3 oranges4 grapes0 Exit#include int main(void)(int choice,i;double price;for(i=1;i=5;i+)printf 1 applesn);printf(2 pearsn);printf(3printfC4printf(0scanf(%d,orangesnz,);grapesn,/);Exitn,z);&choice);if(choice=0)break;else/*-*/switch(choice)case 1:price=3.0;break;case 2:price=2.5;break;case 3:price
38、=4.1;break;case 4:price=10.2;break;default:price=0.0;break;)printf(,zprice=%0.lfn,price);)return 0;)30006程 序 填 空,不 要 改 变 与 输 入 输 出 有 关 的 语 句。输 入 5 个 学 生 的 数 学 成 绩,判 断 他 们 的 成 绩 是 否 及 格。如 果 成 绩 低 于 6 0,输 出 Fail”,否 则,输 出 Pass”。输 入 输 出 示 例:括 号 内 是 说 明 输 入 6159924060输 出 PassFailPassFailPassSinclude int
39、main(void)0(int i,mark;for(i=1;i=60)printfC Passn);elseprintff1 Faihn);)30007程 序 填 空,不 要 改 变 与 输 入 输 出 有 关 的 语 句。输 入 一 个 正 整 数 repeat(0repeat10),做 repeat次 下 列 运 算:输 入 三 角 形 的 3条 边 a,b,c,如 果 能 构 成 一 个 三 角 形,输 出 面 积 area和 周 长 perimeter(保 留 2位 小 数);否 则,输 出 These sides do not correspond to avalid triang
40、le”。在 一 个 三 角 形 中,任 意 两 边 之 和 大 于 第 三 边。三 角 形 面 积 计 算 公 式:area=(s(s-a)(s-b)(s-c)0.5,其 中 s=(a+b+c)/2输 出 使 用 以 下 语 句:printf(z/area=%.2f,perimeter=%.2fn,z,area,perimeter);printf(These sides do not correspond to a valid trianglenzz);输 入 输 出 示 例:括 号 内 是 说 明 输 入 2(repeat=2)5 5 3(a=5,b=5,c=3)14 1(a=l,b=4,c
41、=l)输 出 area=7.15,perimeter=13.00These sides do not correspond to a valid trianglettinclude Winclude int main(void)(int a,b,c;int repeat,ri;double area,perimeter,s;scanf(d,&repeat);for(ri=1;ri c&b+ca&c+ab)perimeter=a+b+c;s=perimeter/2;area=sqrt(s*(s-a)*(s-b)*(s-c);printf(area=%.2f,perimeter=%.2fn,are
42、a,perimeter);)elseprinttfThese sides do not correspond to a validtrianglen);)return 0;30008程 序 填 空,不 要 改 变 与 输 入 输 出 有 关 的 语 句。输 入-个 正 整 数 repeat(0repeat10),做 repeat次 下 列 运 算:输 入 一 个 职 工 的 月 薪 salary,输 出 应 交 的 个 人 所 得 税 tax(保 留 2位 小 数)。计 算 公 式:tax=rate*(salary-850)当 salary W850 时,rate=0当 850 salary
43、W 1350 时,rate=5%当 1350 salary 2850 时,rate=10%当 2850 salary W 5850 时,rate=15%当 5850 salary 时,rate=20%输 入 输 出 示 例:括 号 内 是 说 明 输 入 5(repeat=5)1010.87(salary=1010.87)32098.76(salary=32098.76)800(salary=800)4010(salary=4010)2850(salary=2850)输 出 tax=8.04tax=6249.75tax=0.00tax=474.00tax=200.00ttinclude int
44、 main(void)(int repeat,ri;double rate,salary,tax;scanf(d,&repeat);for(ri=1;ri=repeat;ri+)s c a n f&s a l a r y);/*-*/if(salary=850)rate=O;else if(salary=1350)rate=0.05;else if(salary=2850)rate=0.1;else if(sal ary=5850)rate=0.15;else rate=0.2;tax=rate*(salary-850);printf(z,tax=%0.2fn”,tax);)30009程 序
45、填 空,不 要 改 变 与 输 入 输 出 有 关 的 语 句。输 入 一 个 正 整 数 n,再 输 入 n 个 学 生 的 百 分 制 成 绩,统 计 各 等 级 成 绩 的 个 数。成 绩 等 级 分 为 五 级,分 别 为 A(90T00)、B(80-89)、C(70-79)、D(60-69)和 E(0-59)。输 入 输 出 示 例:括 号 内 是 说 明 输 入 5(n=5)77 54 92 73 60输 出 Number of A(90-100):1Number of B(80-89):0Number of C(70-79):2Number of D(60-69):1Number
46、 of E(0-59):1ttinclude int main(void)(int i,mark,n;int na,nb,nc,nd,ne;scanf(d,&n);na=nb=nc=nd=ne=0;for(i=1;i=90)na+;else if(mark=80)nb+;else if(mark=70)nc+;else if(mark=60)nd+;else ne+;)printf(Numberprintf(Numberprintf(Numberprintf(Numberprintf(NumberofofofofofA(90-100):%dn na);B(80-89):%dn,z,nb);C(
47、70-79):%dn”,nc):D(60-69):%dn”,nd);E(0-59):%dn,ne);30010程 序 填 空,不 要 改 变 与 输 入 输 出 有 关 的 语 句。输 入 一 个 正 整 数 repeat(0repeat10),做 repeat次 下 列 运 算:输 入 一 个 形 式 如 操 作 数 运 算 符 操 作 数 的 表 达 式,对 2个 整 数 进 行 乘、除 和 求 余 运 算。输 出 使 用 以 下 语 句:printf(z,%d*%d=%dn,x,y,x*y);printf C/%d/%d=%dn,x,y,x/y);printf(zz%d Mod%d=%d
48、n,x,y,x%y);printf(Invalid operatorn,/);输 入 输 出 示 例:括 号 内 是 说 明 输 入 4(repeat=4)21*821/821%821!8输 出 21*821/821 Mod=168=28=5Invalid operatorSinclude int main(void)(char sign;int x,y;int repeat,ri;scanf(%d,&repeat);for(ri=1;ri=repeat;ri+)scanf(/z%d%c%dz,,&x,&sign,&y);/*-*/switch(sign)case printf(%d*%d=%
49、dn,x,y,x*y);break;case 7:printf(%d/%d=%dn,x,y,x/y);break;casel%:printf(%d Mod%d=%dn,x,y,x%y);break;default:printf(Invalid operatorn);break;)return 0;)40011程 序 填 空,不 要 改 变 与 输 入 输 出 有 关 的 语 句。输 入 一 个 正 整 数 repeat(0repeat10),做 repeat次 下 列 运 算:输 入 两 个 正 整 数 m和 n,输 出 它 们 的 最 小 公 倍 数 和 最 大 公 约 数。输 入 输 出
50、示 例:括 号 内 为 说 明 输 入:3(repeat=3)3 7(m=3,n=7)24 4(m=24,n=4)24 18(m=24,n=18)输 出:21 is the least common multiple of 3 and 7,1 is the greatest common divisorof 3 and 7.24 is the least common multiple of 24 and 4,4 is the greatest commondivisor of 24 and 4.72 is the least common multiple of 24 and 18,6 is