回覆列表
  • 1 # 使用者5395983585097

    首先是d=b*b-4*a*c;要放在輸入後面!

    printf("方程有兩個不同虛根:x1=%.2f x2=%.2f\n",(-b+sqrt(-d)*i)/(2*a),(-b-sqrt(-d)*i)/(2*a);

    感覺這個會出錯,輸出結果:“方程有兩個不同虛根:x1=··· x2=···”應該不會有i,i會變成未定義

    應該改成prinf("方程有兩個不同虛根:x1:%.2f+%.2fi x2:%.2f+%.2fi",

    -b/(2*a),sqrt(-d)/(2*a),b/(2*a),-sqrt(-d)/(2*a));需要加括號的加上

    以下為程式碼:

    #include

    #include

    int main (void){

    double a, b, c, d;

    printf("輸入一元二次方程的係數a, b, c: ");

    scanf("%lf %lf %lf",&a,&b,&c);

    \x09d=b*b-4*a*c;

    if(a==0&&b==0&&c==0)

    printf("方程無窮解!\n");

    else if(a==0&&b==0&&c!=0)

    printf("方程無解!\n");

    else if(a==0&&b!=0&&c!=0)

    printf("方程有一個根: x=%.2f\n",-c/b);

    else if(a!=0&&d==0)

    printf("方程有兩個相同實根: x1=x2=%.2f\n",-b/(2*a));

    else if(a!=0&&d>0)

    printf("方程有兩個不同實根:x1=%.2f x2=%.2f\n",(-b+sqrt(d))/(2*a),(-b-sqrt(d))/(2*a));

    else if(a!=0&&d

    \x09\x09printf("方程有兩個不同虛根 x1:%.2f+%.2fi x2:%.2f+%.2fi",-b/(2*a),(sqrt(

    d))/(2*a),b/(2*a),(-sqrt(-d))/(2*a));\x09\x09

    \x09return 0;

    }

    擴充套件資料:

    編譯 & 執行 C++ 程式方法:

    2、"Visual Studio"選擇預設環境設定。

    4、在彈出視窗選擇 Visual C++標籤下的空專案,輸入名稱以及儲存位置。

    5、在左側的"解決方案資源管理器"中,選擇"原始檔"右擊,然後選擇"新增"->"新建項"。

    6、在彈出視窗中,選擇"C++檔案(.cpp)",輸入檔名稱,單擊"新增"。

    7、現在輸入具體的程式碼,例如輸入簡單的Hello World程式。

    8、依次單擊"除錯"->"開始執行(不除錯)"或按Ctrl+F5開始執行。

  • 中秋節和大豐收的關聯?
  • 西雙百納氣溫降水特點?