gpt4 book ai didi

c - 如何使 C 程序循环返回重新提示新输入?

转载 作者:行者123 更新时间:2023-11-30 14:44:39 24 4
gpt4 key购买 nike

例如,这个计算三年级方程的程序,计算完方程后就停止了。我该如何让它再次循环回到开头而不再次执行?我对这个平台还是个新手,所以我会得到你的照顾!

#include < stdio.h >

int main() {
int a, v, b, c, delt;
float x1, x2;

printf("\nIntroduceti cele 3 parametrii ecuatia: ");

scanf("%d %d %d", & a, & b, & c);
if (a != 0) {
v = pow(b, 2);
delt = v - (4 * a * c);

if (delt >= 0) {

delt = sqrt(delt);
x1 = -(b + delt) / (2.0 * a);
x2 = -(b - delt) / (2.0 * a);

printf("\nValoara lui x1 este: %f", x1);
printf("\n");
printf("\nValoara lui x2 este: %f", x2);

} else {
printf("Ecuatia nu are soluti! \n");
}

} else if (a == 0) {
printf("\nBLACKHOLE");
}

return 0;
}

最佳答案

您可以将所有内容包装在 do-while 循环中,并询问用户是否要继续执行,例如:

int a,v,b,c,delt;
float x1,x2;
char choice;
do{
printf("\nIntroduceti cele 3 parametrii ecuatia: ");
scanf("%d %d %d", &a, &b, &c);
if(a!=0)
{
v=pow(b, 2);
delt = v-(4*a*c);

if (delt>=0)
{
delt=sqrt(delt);
x1=-(b+delt)/(2.0*a);
x2=-(b-delt)/(2.0*a);

printf("\nValoara lui x1 este: %f", x1);
printf("\n");
printf("\nValoara lui x2 este: %f", x2);
}
else
{
printf("Ecuatia nu are soluti! \n");
}
}
else if(a==0)
{
printf("\nBLACKHOLE");
}
printf("\nEvaluate new equation?(y/n) ")
scanf("%c",&choice)
}while(strcmp(choice,"y")==0);

return 0;

do{...} 中的 block 将至少执行一次,然后用户将被要求输入一个字符(y/n)来决定是否继续。strcmp(string1,string2) 比较两个字符串,如果相等则返回 0,因此如果用户选择“y”,strcmp 将返回 0,并且 do-while 将再次执行。

关于c - 如何使 C 程序循环返回重新提示新输入?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53433211/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com