當前位置:編程學習大全網 - 編程語言 - 編寫壹個能夠循環執行的運算器程序,完成加法、減法、乘法和除法。兩個操作數由用戶從鍵盤上輸入。

編寫壹個能夠循環執行的運算器程序,完成加法、減法、乘法和除法。兩個操作數由用戶從鍵盤上輸入。

剛學不久,將就用吧

win8.1下用gcc編譯通過,運行沒問題

#include?<stdio.h>

void?getOption(int?*popt);

void?getNumbers(double?*pa,?double?*pb,?int?option);

double?calc(double?a,double?b,?int?option,?double?*presult);

void?printResult(double?a,?double?b,?int?option,?double?result);

int?main()

{

int?option?=?0;

double?a?=?0.0;

double?b?=?0.0;

double?result?=?0.0;

do

{

getOption?(&option);?//顯示菜單,讀選項

if?(option?!=?5)

{

getNumbers(&a,?&b,?option);//讀兩個操作數,若為除法,判別除數不為零若除數為零,要求用戶重新輸入

calc(a,?b?,option,?&result);//?完成運算,並返回結果

printResult(a,?b,?option,?result);//?輸出表達式及結果

}

}?while?(option!=5);

return?0;

}

void?getOption(int?*popt)//顯示菜單,讀選項

{

printf("1、加法?2、減法?3、乘法?4、除法?5、退出\n請輸入菜單項:");

while(scanf("%d",popt)!=1)fflush(stdin);//防止誤輸入程序崩潰

fflush(stdin);

while(*popt>5?||?*popt<1)

{

printf("請輸入1~5的數字,請重新輸入:");

while(scanf("%d",popt)!=1)fflush(stdin);

fflush(stdin);

}

}

void?getNumbers(double?*pa,?double?*pb,?int?option)//讀兩個操作數

{

printf("請輸入兩個操作數:");

scanf("%lf?%lf",pa,pb);

if(option?==?4)//若為除法,判別除數不為零若除數為零,要求用戶重新輸入

while(*pb?==?0)

{

printf("除數不能為0,請重新輸入除數:");

scanf("%lf",pb);

}

}

double?calc(double?a,?double?b,?int?option,?double?*presult)//?完成運算,並返回結果

{

switch(option)

{

case?1:

*presult?=?a?+?b;

break;

case?2:

*presult?=?a?-?b;

break;

case?3:

*presult?=?a?*?b;

break;

case?4:

*presult?=?a?/?b;

break;

default:

break;

}

return?*presult;

}

void?printResult(double?a,?double?b,?int?option,?double?result)//?輸出表達式及結果

{

switch(option)

{

case?1:

printf("%lf?+?%lf?=?%lf\n",a,b,result);

break;

case?2:

printf("%lf?-?%lf?=?%lf\n",a,b,result);

break;

case?3:

printf("%lf?×?%lf?=?%lf\n",a,b,result);

break;

case?4:

printf("%lf?÷?%lf?=?%lf\n",a,b,result);

break;

default:

break;

}

printf("\n");

}

  • 上一篇:PM-84沖鋒槍的結構是什麽樣子的?
  • 下一篇:高中“責任與信仰”主題班會設計方案怎麽寫?
  • copyright 2024編程學習大全網