1、
switch语句
用switch语句编程,根据输入的百分制成绩score(整数),转换成相应的五分制成绩grade后输出。
当 90≤ score≤100时, grade=A ;
当80≤ score<90时,grade=B;
当70≤ score<80时, grade=C;
当60≤ score<70时,grade=D;
当0≤ score<60时,grade=E。
如果输入成绩 score<0或 score>100,则输出“Input error!”。
输入格式:
输入一个百分制成绩(整数)。
输出格式:
输出对应等级。输入成绩不合理时,输出提示信息“Input error!”。
输入样例:
85
输出样例:
B
输入样例:
120
输出样例:
Input error!
源代码:
# include<stdio.h>
int main()
{ int score,grade;
scanf("%d",&score);
switch(score/10)
{
case 10:
case 9:printf("A\n");break;
case 8:printf("B\n");break;
case 7:printf("C\n");break;
case 6:printf("D\n");break;
case 5:printf("E\n");break;
default:printf("Input error!");
return 0;
}
}
2、
【–三个数的中位数B–】
输入三个整数,请编程输出这三个数的中位数。
输入格式:
输入三个整数,一空格分隔,数据都在int表示范围。
输出格式:
输出这三个数的中位数,输出数据后需要输出回车换行。
输入样例:
1 2 3
输出样例:
2
源代码:
# include<stdio.h>
int main()
{ int a,b,c,t;
scanf("%d %d %d",&a,&b,&c);
if(a>b)
{ t=a;
a=b;
b=t;
}
if(a>c)
{
t=a;
a=c;
c=t;
}
if(b>c)
{
t=b;
b=c;
c=t;
}
printf("%d",b);
return 0;
}
3、**
判断一个三位数是否为水仙花数
**
本题要求编写程序,判断一个给定的三位数是否为水仙花数。三位水仙花数,即其个位、十位、百位数字的立方和等于该数本身。
输入格式:
输入在一行中给出一个需要判断的整数 N(100≤N≤999)。
输出格式:
如果N是水仙花数,则在一行中输出Yes,否则输出No。如果N不是三位数,则输出Invalid Value.。
输入样例1:
153
输出样例1
Yes
输入样例2
500
输出样例2
No
输入样例3
-2
输出样例3
Invalid Value.
源代码:
# include<stdio.h>
int main()
{ int N,a,b,c;
scanf("%d",&N);
if(N<100||N>999){
printf("Invalid Value");
} else{
a=N/100;
b=N%100/10;
c=N%10;
if(N==a*a*a+b*b*b+c*c*c){
printf("Yes");
}
else printf("No");
}
return 0;
}
4、求分段函数
编写程序,根据从键盘输入的x的值,输出y的值。x和y都是双精度浮点数,输出精确到小数点后3位。x与y的函数关系如下图所示:
输入格式:
输入是一个双精度浮点数。
输出格式:
输出是一个双精度浮点数,要求精确到小数点后3位。
输入样例:
3.1
输出样例:
34.791
源代码:
# include<stdio.h>
int main()
{ double x,y;
scanf("%lf",&x);
if(x<0){
y=x*x+9;
}
else
y=x*x*x+5;
printf("%.3lf",y);
return 0;
}
5、分段计算居民水费
为鼓励居民节约用水,自来水公司采取按用水量阶梯式计价的办法,居民应交水费y(元)与月用水量x(吨)相关:当x不超过15吨时,y=4x/3;超过后,y=2.5x−17.5。请编写程序实现水费的计算。
输入格式:
给出非负实数x。
输出格式:
在一行输出应交的水费,精确到小数点后2位。
输入样例1:
12
输出样例1
16.00
输入样例2
16
输出样例2
22.50
源代码:
# include<stdio.h>
int main()
{ double x,y;
scanf("%lf",&x);
if(x>15){
y=2.5*x-17.5;
}
else y=4*x/3;
printf("%.2lf",y);
}