该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
下面这个程序只能让1-4以外的数字进行一次循环,就是比如你输入的是5,他会让你再输一次,如果再输一次还是4以上的,他将结束进程。如何修改才能使得他能够无限进行输入1-4以外的数字?在哪里修改一下就好了?
#include
#define PI 3.1415926
double circle();
double rectangle();
double triangle();
void cal(int choice);
void main()
{
int choice;
do{
printf(" 1---计算圆面积\n ");
printf(" 2---计算矩形面积\n ");
printf(" 3---计算三角形面积\n ");
printf(" 4---终止程序执行\n ");
printf(" 请输入选项值[1-4]: ");
scanf("%d",&choice);
cal(choice);
}while(choice>=1&&choice<=3);
}
void cal(int n)
{
switch(n){
case 1: printf("圆面积:%.2f\n",circle());
break;
case 2: printf("矩形面积:%.2f\n",rectangle());
break;
case 3: printf("三角形面积:%.2f\n",triangle());
break;
case 4: printf("谢谢使用!\n");
break;
default:printf("对不起,你选择错误,请重新输入!\n");scanf("%d",&n);
}
}
double circle()
{
double r;
printf("请输入圆半径:\n");
scanf("%lf",&r);
return PI*r*r;
}
double rectangle()
{
double l,w;
printf("请输入矩形长和宽:\n");
scanf("%lf%lf",&l,&w);
return l*w;
}
double triangle()
{
double l,h;
printf("请输入三角形底边和高:\n");
scanf("%lf%lf",&l,&h);
return 1.0/2*l*h;
}