《我向三体世界说话:迪迦!》第6章 层次
{
float money,a,b,c,d,e;
scanf(%f,&money);
a=money*(1+5*r5);
b=(money*(1+2*r2))*(1+3*r3);
c=(money*(1+3*r3))*(1+2*r2);
d=money*pow(1+r1,5);
e=money*pow(1+r0/4,20);
printf(%.2f,%.2f,%.2f,%.2f,%.2f,a,b,c,d,e);
}
4-7 1223
假设今天是周二,计算并输出其后的第n天是周几。
输出值为:1~7
答
#include<stdio.h>
main()
{
int n,day;
scanf(%d,&n);
if(n%7+2<=7) day=n%7+2;
else day=n%7-5;
printf(%d,day);
}
4-8 1222
根据某城市普通出租车收费标准编写程序进行车费计算。具体标准如下:
起步里程为3公里,起步费10元;
超起步里程后10公里内,每公里2元;
超过10公里以上的部分加收50%的回空补贴费,即每公里3元;
营运过程中,因路阻及乘客要求临时停车的,按每5分钟2元计收(不足5分钟则不收费)。
要求:输入公里数m(实型)和分钟t(整型)
输出钱数(实型,小数点后保留0位)
答
#include<stdio.h>
main()
{
int t;
float m,money;
scanf(%f%d,&m,&t);
if(m<=3) money=10;
else if(m<=10) money=10+(m-3)*2;
else money=10+(10-3)*2+(m-10)*3;
money=money+t/5*2;
printf(%.0f,money);
}
4-9 1221
根据输入的三角形三条边a、b、c,判断计算输出面积和周长。注意:在一个三角形中, 任意两边之和大于第三边。三角形面积计算公式:area=√s(s-a)(s-b)(s-c),其中s=(a+b+c)/2。
输出格式:area=%.2f,perimeter=%.2f
或者 error input
答
#include<stdio.h>
#include<math.h>
main()
{
float a,b,c,area,s,perimeter;
scanf(%f%f%f,&a,&b,&c);
if(a>0&&b>0&&c>0&&a+b>c&&a+c>b&&b+c>a)
{perimeter=a+b+c;
s=perimeter/2;
area=sqrt(s*(s-a)*(s-b)*(s-c));
printf(area=%.2f,perimeter=%.2f,area,perimeter);}
else
printf(error input);
}
4-10 1560
输入一个IPv4格式的IP地址,判断地址的有效性。
IPv4格式的地址由4组十进制数构成,数据由句点间隔,每组数据的范围介于0~255之间。
例如:
202.118.11.24 为有效IP地址,
而 202,118,11,24 及201.118.258.21都为无效的IP地址。
答
#include<stdio.h>
main()
{
int a,b,c,d;
char e=’.’,f,g,h;
scanf(%d%c%d%c%d%c%d,&a,&f,&b,&g,&c,&h,&d);
if(a>0&&a<255&&b>0&&b<255&&c>0&&c<255&&d>0&&d<255&&f==e&&g==e&&h==e)
printf(有效);
else printf(无效);
}
4-11 1549
输入两个整数,如果这两个数同号(均为正或均为负),输出它们的积,否则输出它们的和。
答
#include<stdio.h>
main()