jzhcyz 2022-10-25 16:42 采纳率: 100%
浏览 35
已结题

C语言条件语句else-if形式

问题遇到的现象和发生背景

C语言 条件语句 else-if形式

用代码块功能插入代码,请勿粘贴截图

#include<stdio.h>
#include<math.h>
int main(void)
{
float a,b,c,disc,p,q;
printf("Please enter a b c:");
scanf("%f,%f,%f",&a,&b,&c);
if(a<0)
printf("不是二次方程!\n");
disc = pow(b,2)-4*a*c;
p = -b/(2*a);
q = sqrt(fabs(disc))/(2*a);
if(disc=0)
printf("x1=x2=%f\n",p);
else if(disc>0)
printf("x1=%f,x2=%f\n",p+q,p-q);
else(disc<0);
printf("x1=%fi,x2=%fi",p+q,p-q);
return 0;
}

我的解答思路和尝试过的方法

为什么在Code blocks和devc++上else(disc<0)后面都要加分号才能够正常运行?

  • 写回答

3条回答 默认 最新

  • 浪客 2022-10-25 16:50
    关注
    格式化一些就能看明白了,else后面缺个if
    if (disc == 0) //这里缺个=
        printf("x1=x2=%f\n", p);
    else if (disc > 0)
        printf("x1=%f,x2=%f\n", p + q, p - q);
    else
        (disc < 0);
    

    你这代码判断disc的值, 最后那个判断条件(disc < 0)不需要加

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 11月5日
  • 已采纳回答 10月28日
  • 创建了问题 10月25日

悬赏问题

  • ¥170 如图所示配置eNSP
  • ¥20 docker里部署springboot项目,访问不到扬声器
  • ¥15 netty整合springboot之后自动重连失效
  • ¥15 悬赏!微信开发者工具报错,求帮改
  • ¥20 wireshark抓不到vlan
  • ¥20 关于#stm32#的问题:需要指导自动酸碱滴定仪的原理图程序代码及仿真
  • ¥20 设计一款异域新娘的视频相亲软件需要哪些技术支持
  • ¥15 stata安慰剂检验作图但是真实值不出现在图上
  • ¥15 c程序不知道为什么得不到结果
  • ¥15 键盘指令混乱情况下的启动盘系统重装