亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如果在c語言中打else后顯示expected expression ,這是什么情況?

如果在c語言中打else后顯示expected expression ,這是什么情況?

人到中年有點甜 2021-11-24 15:11:24
#include <iostream>#include <math.h>using namespace std;int main(int argc, const char * argv[]){int a,b,c;float x1,x2;float delta;cin>>a>>b>>c;delta=b*b-4*a*c;if(delta<0)printf("次方程沒有實數根");else if(delta==0)x1=(-b+(float)sqrt(b*b-4.f*a*c))/(2.f*a);printf("方程存在兩個相同的實數根:%f\n",x1);else/*就是這個else后面總是顯示expected expression*/x1=(-b+(float)sqrt(b*b-4.f*a*c))/(2.f*a);x2=(-b-(float)sqrt(b*b-4.f*a*c))/(2.f*a);printf("\nx1=%lf,x2=%lf",x1,x2);}
查看完整描述

2 回答

?
繁星coding

TA貢獻1797條經驗 獲得超4個贊

錯誤并不只是出在你說的這一行。C、C++等C語言系列,提示錯誤的行并不一定是出現錯誤的行,而是無法繼續執行的行。程序非?;靵y,格式不正確,邏輯也有問題。直接把你的程序改了一下:


#include <iostream>#include <math.h>using namespace std;int main(){float a,b,c,x1,x2,delta;cin>>a>>b>>c;delta=b*b-4*a*c;if(delta<0)cout<<"方程沒有實數根";else if(delta==0){x1=(-b+(float)sqrt(b*b-4.f*a*c))/(2.f*a);cout<<"方程存在兩個相同的實數根:"<<x1;}else{x1=(-b+(float)sqrt(b*b-4.f*a*c))/(2.f*a);x2=(-b-(float)sqrt(b*b-4.f*a*c))/(2.f*a);cout<<"x1="<<x1<<","<<"x2="<<x2;}return 0;}


查看完整回答
反對 回復 2021-11-28
?
HUX布斯

TA貢獻1876條經驗 獲得超6個贊

把ⅰf語句中{}都加上
程序末尾加一句 return 0;

查看完整回答
反對 回復 2021-11-28
  • 2 回答
  • 0 關注
  • 1285 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號