//寫一個多個數的計算器,在這隻實現從左至右運算,沒有優先符
void main(void){
int numA = 0;
//第一個數
int numB = 0;
//第二個數
int numC = 0;
//交換數
int temp = 0;
//交換數
char operators =""; //接收用戶輸入的運算符
int condition = 1; //控制while第一個條件
int controlThree =0;
//控制 while 第二個條件
char equal;
//存運算符
char inContinue;
//存儲等於號
int survey = 0; //結束詢問調查
printf(" 歡迎使用多數計算器\n\n");
//下面用 while 循環計算器
while(condition){
printf("請輸入第一個數: ");
scanf("%d",&numA);
//判斷用戶是否輸入等於
do{
printf(" 請輸入運算符: ");
scanf("%s",&operators);
if(operators=='='){
inContinue='=';
controlThree=0;
printf("=============================================");
}else{
if(operators=='+' || operators=='-' || operators=='*' || operators=='/'){
printf("請輸入第下個數: ");
scanf("%d",&numB);
switch(operators){
case '+':
equal='+';
numC=numA+numB;
break;
case '-':
equal='-';
numC=numA-numB;
break;
case '*':
equal='*';
numC=numA*numB;
break;
case '/':
equal='/';
numC=numA/numB;
break;
}
}else{
printf("你輸入的運算符有誤,請重新輸入\n");
inContinue=1;
}
//交換數值
temp=numA; //注意這個numA的值一定要提前取出來
numA=numC;
controlThree=1;
}
}while(controlThree);
//下面輸出打印運算
if(inContinue=='='){
switch(equal){
case '+':
printf("\n
%d + %d = %d \n\n",temp,numB,numC);
break;
case '-':
printf("\n
%d - %d = %d \n\n",temp,numB,numC);
break;
case '*':
printf("\n
%d * %d = %d \n\n",temp,numB,numC);
break;
case '/':
printf("\n
%d / %d = %d \n\n",temp,numB,numC);
break;
}
}
printf("\n是否繼續運算 1 是 0 退出\n");
scanf("%d",&condition);
}
printf("\n感謝使用本系統\n \n 非常滿意請按 1 \n 滿意請按 2 \n 不滿意請按 3\n");
scanf("%d",&survey);
if(survey<=3&&survey>=1){
printf("謝謝配合");
}else{
printf("謝謝使用");
}
}
|
學c語言第一個自己寫的計算器程序
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.