求大佬指导哪里报错了 C语言

DONGF331 2020-07-10 05:04:41
# include <stdio.h>
# include <math.h>
int main(void)
{
do{
double a, b ,c;
double delta;
double x1 ,x2;


printf("请输入一元二次方程的三个系数!\n");

printf("a=");
scanf("%lf",&a);

printf("b=");
scanf("%lf" , &b);

printf("c=");
scanf("%lf",&c);

delta = b*b-4*a*c;

if(delta>0)
{
x1 = (-b + sqrt(delta))/(2*a); //sqrt 根号的意思 调用在 上方 # include <math.h>
x2 = (-b + sqrt(delta))/(2*a);
printf("有两个解\n,x1 = %lf, x2 = %lf\n ",x1 ,x2);
}
else if (delta==0)
{
x1 =x2 =(-b)/(2*a);
printf("有一个解\n,x1 = x2 = %lf ",x1 , x2);
}
else
{
printf("无解\n");
}
char yi;
printf("输入 Y 结束运行\n");
scanf(" %c" ,&yi); // %c 前面必须要用一个空格 原因 略 !!
}while(yi=='Y' || yi=='y');

return 0;
}
...全文
110 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
DONGF331 2020-07-13
  • 打赏
  • 举报
回复
引用 3 楼 Clancey P.M.R.S. Yu 的回复:
你定义yi的位置不对,把char yi;搁在最前边(do之前)应该就行了
谢谢已经解决了
ClanceyPMRS 2020-07-13
  • 打赏
  • 举报
回复
你定义yi的位置不对,把char yi;搁在最前边(do之前)应该就行了
Simple-Soft 2020-07-10
  • 打赏
  • 举报
回复
while循环中yi没有定义啊,把yi的定义放到do前面
DONGF331 2020-07-10
  • 打赏
  • 举报
回复
--------------------Configuration: 1 - Win32 Debug-------------------- Compiling... 1.cpp E:\C语言\89 一元二次方程\1.cpp(42) : error C2065: 'yi' : undeclared identifier 执行 cl.exe 时出错. 1.exe - 1 error(s), 0 warning(s) 这是报错原因

69,382

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧