赞
踩
7-1 A除以B
真的是简单题哈 —— 给定两个绝对值不超过100的整数A和B,要求你按照“A/B=商”的格式输出结果。
输入在第一行给出两个整数A和B(−100≤A,B≤100),数字间以空格分隔。
在一行中输出结果:如果分母是正数,则输出“A/B=商”;如果分母是负数,则要用括号把分母括起来输出;如果分母为零,则输出的商应为Error
。输出的商应保留小数点后2位。
-1 2
-1/2=-0.50
1 -3
1/(-3)=-0.33
5 0
5/0=Error
- #include <stdio.h>
-
- int main()
- {
- float a,b,c;
- scanf("%f %f",&a,&b);
- if(b==0)
- printf("%.0f/%.0f=Error",a,b);
- else if(b>0)
- {
- c=a/b;
- printf("%.0f/%.0f=%.2f",a,b,c);
- }
- else if(b<0)
- {
- c=a/b;
- printf("%.0f/(%.0f)=%.2f",a,b,c);
- }
- return 0;
- }
7-2 出租车计价
本题要求根据某城市普通出租车收费标准编写程序进行车费计算。具体标准如下:
输入在一行中给出输入行驶里程(单位为公里,精确到小数点后1位)与等待时间(整数,单位为分钟),其间以空格分隔。
在一行中输出乘客应支付的车费(单位为元),结果四舍五入,保留到元。
2.6 2
10
5.1 4
14
12.5 9
34
- #include <stdio.h>
-
- int main()
- {
- float s,ms,mt,m;
- int t;
- scanf("%f %d",&s,&t);
- if(s<3)
- ms=10;
- else if(s<10)
- ms=10+(s-3)*2;
- else if(s>10)
- ms=10+14+(s-10)*3;
- mt=t/5*2;
- m=ms+mt;
- printf("%.0f",m);
- }
7-3 输出英文字母的前驱和后继字母
从键盘输入一个英文字母,输出其前驱字母(即前一个字母)、后继字母(即后一个字母)及其ASCII值。比如输入的字母是b,则前驱字母是a,后继字母是c。而如果输入的字母是a,则前驱字母是z,后继字母是b;如果输入的字母是z,则前驱字母是y,后继字母是a。
大写字母的前驱后继字母求法与小写字母相同。
输入一个英文字母(大写或小写字母)。
第一行输出该字母的前驱字母及其ASCII值,第二行输出后继字母及其ASCII值,字母与ASCII值之间用一个空格分隔。
b
- a 97
- c 99
a
- z 122
- b 98
- #include <stdio.h>
-
- int main()
- {
- char a;
- scanf("%c",&a);
- if((65<a&&a<90)||(97<a&&a<122))
- {
- printf("%c %d\n",a-1,a-1);
- printf("%c %d",a+1,a+1);
- }
- if(a==65)
- {
- printf("Z 90\n");
- printf("B 66");
- }
- if(a==90)
- {
- printf("Y 89\n");
- printf("A 65");
- }
- if(a==97)
- {
- printf("z 122\n");
- printf("b 98");
- }
- if(a==122)
- {
- printf("y 121\n");
- printf("a 97");
- }
- }
7-4 后天
如果今天是星期三,后天就是星期五;如果今天是星期六,后天就是星期一。我们用数字1到7对应星期一到星期日。给定某一天,请你输出那天的“后天”是星期几。
输入第一行给出一个正整数D
(1 ≤ D
≤ 7),代表星期里的某一天。
在一行中输出D
天的后天是星期几。
3
5
-
- #include<stdio.h>
- int main()
- {
- int D;
- scanf("%d",&D);
- if(D<6) {
- printf("%d\n",D+2);
- }else{
- printf("%d", D -5);}
- return 0;
- }
7-5 后天日期
给定一个日期,格式为yyyy-mm-dd(年份-月份-日期),计算并输出后天的日期,格式为yyyy.mm.dd(4位年份.2位月份.2位日期)。例如:输入2001-12-31,输出为:2002.01.02。
输入以"-"分隔的年月日。
输出计算后的后天的日期,以"."分隔。行末无多余字符。
2001-12-31
2002.01.02
2008-2-28
2008.03.01
- #include <stdio.h>
-
- int main()
- {
- int y,m,d,rn;
- scanf("%d-%d-%d",&y,&m,&d);
- if((y%400==0)||(y%4==0&&y%100!=0))
- rn=1;
- else rn=0;
- if(rn==1)
- if((d==30||d==31)&&(m==1||m==3||m==5||m==7||m==8||m==10))
- printf("%d.%02d.%02d",y,m+1,d+2-31);
- else if((d==30||d==31)&&m==12)
- printf("%d.%02d.%02d",y+1,1,d+2-31);
- else if((d==29||d==30)&&(m==4||m==6||m==9||m==11))
- printf("%d.%02d.%02d",y,m+1,d+2-30);
- else if((d==28||d==29)&&m==2)
- printf("%d.%02d.%02d",y,3,d+2-29);
- else printf("%d.%02d.%02d",y,m,d+2);
- if(rn==0)
- if((d==30||d==31)&&(m==1||m==3||m==5||m==7||m==8||m==10))
- printf("%d.%02d.%02d",y,m+1,d+2-31);
- else if((d==30||d==31)&&m==12)
- printf("%d.%02d.%02d",y+1,1,d+2-31);
- else if((d==29||d==30)&&(m==4||m==6||m==9||m==11))
- printf("%d.%02d.%02d",y,m+1,d+2-30);
- else if((d==28||d==27)&&m==2)
- printf("%d.%02d.%02d",y,3,d+2-28);
- else printf("%d.%02d.%02d",y,m,d+2);
- }
7-6 计算工资
某公司员工的工资计算方法如下:一周内工作时间不超过40小时,按正常工作时间计酬;超出40小时的工作时间部分,按正常工作时间报酬的1.5倍计酬。员工按进公司时间分为新职工和老职工,进公司不少于5年的员工为老职工,5年以下的为新职工。新职工的正常工资为30元/小时,老职工的正常工资为50元/小时。请按该计酬方式计算员工的工资。
输入在一行中给出2个正整数,分别为某员工入职年数和周工作时间,其间以空格分隔。
在一行输出该员工的周薪,精确到小数点后2位。
5 40
2000.00
3 50
1650.00
- #include <stdio.h>
-
- int main()
- {
- int y,h,ym;
- float hm;
- scanf("%d %d",&y,&h);
- if(y>=5)
- ym=50;
- else ym=30;
- if(h<=40)
- hm=ym*h;
- else hm=ym*40+(h-40)*ym*1.5;
- printf("%.2f",hm);
- }
7-7 能买手机吗?
小吴同学想换一部手机,希望自己自力更生获得。于是,小吴准备暑假兼职获取酬劳。今天看到一则招聘启示,薪资标准为:每周工作40小时以内,每小时基本工资20元;超出时间为加班,每小时工资翻倍。公司规定,每周加班不能超过10小时。
现在,小吴想知道,若在此公司工作,要在一个月内(4周)挣到购买手机的资金,需要工作的时长。请你编写一个程序,替小吴算算,购买不同的手机需要加班的最短时长。
输入小吴想买的手机价格Price,Price为正整数。
给出是否需要加班的结论。若需要加班,给出需加班时长(整数)。并给出是否能购买此手机的建议。
2000
不需加班,可购买
5000
需加班45小时,买不起
4500
需加班33小时,可购买
- #include<stdio.h>
- int main()
- {
- int Price;
- scanf("%d", &Price);
- if (40 * 20 * 4 > Price)
- {
- printf("不需加班,可购买");
- }
- else
- {
- int day = (Price - 40 * 20 * 4)/(20*2);
- int s = (Price - 40 * 20 * 4) % (20 * 2);
- if (s != 0)
- {
- day += 1;
- }
- if (day > 10 * 4)
- {
- printf("需加班%d小时,买不起", day);
- }
- else
- {
- printf("需加班%d小时,可购买", day);
- }
- }
- return 0;
- }
7-8 谁是赢家
某电视台的娱乐节目有个表演评审环节,每次安排两位艺人表演,他们的胜负由观众投票和 3 名评委投票两部分共同决定。规则为:如果一位艺人的观众票数高,且得到至少 1 名评委的认可,该艺人就胜出;或艺人的观众票数低,但得到全部评委的认可,也可以胜出。节目保证投票的观众人数为奇数,所以不存在平票的情况。本题就请你用程序判断谁是赢家。
输入第一行给出 2 个不超过 1000 的正整数 Pa 和 Pb,分别是艺人 a 和艺人 b 得到的观众票数。题目保证这两个数字不相等。随后第二行给出 3 名评委的投票结果。数字 0 代表投票给 a,数字 1 代表投票给 b,其间以一个空格分隔。
按以下格式输出赢家:
The winner is x: P1 + P2
其中 x
是代表赢家的字母,P1
是赢家得到的观众票数,P2
是赢家得到的评委票数。
- 327 129
- 1 0 1
The winner is a: 327 + 1
- # include<stdio.h>
- int main()
- {
- int pa,pb,p1,p2,p3,count;
- scanf("%d %d\n",&pa,&pb);
- scanf("%d %d %d",&p1,&p2,&p3);
- count=p1+p2+p3;
- if(pa>pb&&count!=3)
- {
- printf("The winner is a: %d + %d",pa,3-count);
- }
- else
- {
- printf("The winner is b: %d + %d",pb,count);
- }
- return 0;
- }
7-9 比较大小
本题要求将输入的任意3个整数从小到大输出。
输入在一行中给出3个整数,其间以空格分隔。
在一行中将3个整数从小到大输出,其间以“->”相连。
4 2 8
2->4->8
-
- #include<stdio.h>
- int main()
- {
- int x,y,z,min;
- scanf("%d %d %d",&x,&y,&z);
- if(x>y)
- {
- min = x;
- x = y;
- y = min;
- }
- if(x>z)
- {
- min = x;
- x = z;
- z = min;
- }
- if(y>z)
- {
- min = y;
- y = z;
- z = min;
- }
-
-
- printf("%d->%d->%d",x,y,z);
- return 0;
- }
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。