宝慕林4364177
2018-04-27 00:52


一、#include <stdio.h>
int main()
{
int a,b;
printf("请输入小于等于40的数字");
scanf("%d",&a);
if(a < 0)
b = 0;
else if(a >= 0 && a < 20)
b = a;
else if(a >= 20 && a <= 40)
b = -0.5*a+20;
printf("%d\n",b);
}
二、
#include <stdio.h>
int main()
{
int a, b;
printf("请输入小于等于40的数字");
scanf("%d",&a);
switch(a)
{
case 0:
b = 0;
break;
case 1 ... 19:
b = a;
break;
case 20 ... 40:
b = -0.5 * a + 20;
break;
default:
printf("结束");
}
printf("%d\n",b);
}
注:switch的不是很严谨!!
#include <stio.h>
int main()
{
printf("只需要用 if else,就可以啦!\n");
}
#include<stdio.h>
#include<math.h>
int main(void)
{
int x,y,z,a;
printf("请输入一个小于40的数字!\n");
while(scanf("%d",&x)&&x<=40)
{
z=x+fabs(x);
switch(z)
{
case 0:y=0;
break;
default:a=x/20;
switch(a)
{
case 0:y=x;
break;
default:y=-0.5*x+20;
}
}
printf("%d\n",y);
}
return 0;
}
修改后
#include<stdio.h>
#include<math.h>
int main(void)
{
int x,y,z,a;
printf("请输入一个小于40的数字!\n");
while(scanf("%d",&x)&&x<=40)
{
z=x/20;
switch(z)
{
case 0: a=x+fabs(x);
switch(a)
{
case 0:y=0;
break;
default:y=x;
}
break;
default:y=-0.5*x+20;
}
printf("%d\n",y);
}
return 0;
}Linux C语言编程基本原理与实践
204636 学习 · 469 问题
相似问题