我想把它弄成无限执行
关于一元二次方程#include<stdio.h>#include<math.h>
int main()
{
double a,b,c,disc,x1,x2,p,q;
scanf("%lf%lf%lf",&a,&b,&c);
disc=b * b - 4 * a * c;
if(disc < 0)
{
printf("该函数没有实数根。\n");
}
if(disc == 0)
{
x1 = -b / (2.0 * a);
printf("该函数有两个相同的实数根 x = %lf\n",x1);
}
if(disc > 0)
{
p = -b / (2.0 * a);
q = sqrt(disc)/(2.0 * a);
x1 = p + q;
x2 = p - q;
printf("x1 = %lf\nx2 = %lf\n",x1,x2);
}
return 0;
}
每次运行完就退很烦希望解决 你在说什么?加个 while 不就好了? #include<stdio.h>
#include<math.h>
int main()
{
while(1) {
double a,b,c,disc,x1,x2,p,q;
scanf("%lf%lf%lf",&a,&b,&c);
disc=b * b - 4 * a * c;
if(disc < 0)
{
printf("该函数没有实数根。\n");
}
if(disc == 0)
{
x1 = -b / (2.0 * a);
printf("该函数有两个相同的实数根 x = %lf\n",x1);
}
if(disc > 0)
{
p = -b / (2.0 * a);
q = sqrt(disc)/(2.0 * a);
x1 = p + q;
x2 = p - q;
printf("x1 = %lf\nx2 = %lf\n",x1,x2);
}
}
return 0;
}
后来我想一下。用for(; ;)可以吗 沐雨尘枫 发表于 2022-5-1 10:19
后来我想一下。用for(; ;)可以吗
可以,你用goto都没问题
do while 也可以,随便
只要能构成循环的语句都可以
人造人 发表于 2022-5-1 10:30
可以,你用goto都没问题
do while 也可以,随便
只要能构成循环的语句都可以
goto用不来
实际上我原本就想用goto
但编译器报错你看看#include<stdio.h>
#include<math.h>
int main()
{
a: double a,b,c,disc,x1,x2,p,q;
scanf("%lf%lf%lf",&a,&b,&c);
disc=b * b - 4 * a * c;
if(disc < 0)
{
printf("该函数没有实数根。\n");
}
if(disc == 0)
{
x1 = -b / (2.0 * a);
printf("该函数有两个相同的实数根 x = %lf\n",x1);
}
if(disc > 0)
{
p = -b / (2.0 * a);
q = sqrt(disc)/(2.0 * a);
x1 = p + q;
x2 = p - q;
printf("x1 = %lf\nx2 = %lf\n",x1,x2);
}
goto a;
return 0;
}当我再次打入发现居然可以了{:5_98:} 沐雨尘枫 发表于 2022-5-1 13:00
goto用不来
实际上我原本就想用goto
但编译器报错你看看当我再次打入发现居然可以了
这个代码在我这边可以
人造人 发表于 2022-5-1 13:11
这个代码在我这边可以
嗯嗯
页:
[1]