❶ c語言編寫簡易計算器程序
C語言編寫計算器
我們可以用printf和scanf函數輸出結果和獲取用戶的輸入。需要<stdio.h>頭文件。scanf函數在讀取數據的時候不需要再一行上輸入每個數據,只要數據和數據之間留出空白就可以了。先聲明兩個變數number1和number2,operation變數用來存儲運算符。用scanf函數獲取這兩個數字和運算符。分別用%lf %c %lf
❷ c語言計算器問題
#include <stdio.h>
#include <stdlib.h>
void main()
{
float a, b, r;
int ch;
do
{
printf(" -------------------- ");
printf("| 簡易計算器 | ");
printf("| 1.加法 | ");
printf("| 2.減法 | ");
printf("| 3.乘法 | ");
printf("| 4.除法 | ");
printf("| 5.求模 | ");
while (1)
{
printf("請選擇運算類型(0-5) ");
scanf("%d",&ch);
fflush(stdin);
if (ch >= 0 && ch <= 5)
break;
if (ch == 0)
exit(0);
else
{
printf("你輸入有誤請重新輸入! ");
}
}
printf("請輸入兩個數字:");
while (scanf("%f%f", &a, &b) != 2)
{
fflush(stdin);
printf("輸入的不是兩個數字,請重新輸入! ");
}
switch (ch)
{
case 1:
r = a + b;
break;
case 2:
r = a - b;
break;
case 3:
r = a*b;
break;
case 4:
r = a / b;
break;
case 5:
r = (int)a % (int)b;
}
if (ch == 5)
{
printf("%d", (int)r);
}
else
printf("%.2f", r);
} while (1);
}
在vc++6.0的運行結果
❸ C語言計算器。每次輸入符號後就出問題。
int z=0;
scanf("%c",&z);
z應該是char類型,你怎麼把它弄成int
❹ 編寫c語言程序輸入任意2個數輸出其和、差、積、商
可以參考下面的代碼:
#include <stdio.h>
void main()
{
float x,y;
char m;
printf("Please input x and y :");
scanf("%f,%f,%c",&x,&y,&m);
switch(m)
{
case '+': printf("x+y=%f ",x+y);break;
case '-': printf("x-y=%f ",x-y);break;
case '*': printf("x*y=%f ",x*y);break;
case '/': printf("x/y=%f ",x/y);break;
}
}
(4)c語言計算器輸入兩個數代碼擴展閱讀:
C語言strlen()函數:求字元串的長度
C語言strcspn():求字元串互補跨度(長度)
C語言strcmp()函數:比較兩個字元串
C語言strchr()函數:字元查找函數
C語言strcat()函數:字元串連接(拼接)
C語言iscntrl()函數:判斷一個字元是否為控制字元
C語言isalpha()函數:判斷一個字元是否是字母
C語言isalnum()函數:判斷一個字元是否是字母或者數字
C語言frexp()函數:提取浮點數的尾數和指數部分
C語言modf()函數:提取浮點數的小數和整數部分
❺ C語言編程:輸入兩個操作數和一個運算符,編程實現簡單的計算器用if語句,為啥結果不對
scanf中&c是不是應該改成&x啊
❻ c語言編的很簡單的計算器,實現兩個兩位數四則運算,運行程序輸入完計算式子怎麼會卡住不動呢
樓主應該控制輸入。既然是兩位數,兩位自然在一起,樓主分別輸入,是不是相當於兩數間有空格。要是有空格,相當於空格提前讀入操作符位置。另外,用一個數組元素表示不是很好嗎?為啥要用兩個元素表示一個數,效率又不高。
❼ c語言:製作一個計算器,實現輸入兩個整數x,y的運算,要求數學運算符是用戶輸入的
if括弧內判斷等於應為==而非=
❽ c語言編寫 編寫一個簡單的計算器,實現兩個整型數的四則運算。
#include<stdio.h>
int main()
{int a,b,c,err;
char op;
do
{scanf("%d%c%d",&a,&op,&b);
err=0;
if(a==0&&b==0)break;
if(op=='+')c=a+b;
if(op=='-')c=a-b;
if(op=='*')c=a*b;
if(op=='/')
if(b)c=a/b;else err=1;
if(op=='%')
if(b)c=a%b;else err=1;
if(err)printf("%d%c%d error! ",a,b,c);
else printf("%d%c%d=%d ",a,op,b,c);
}while(1);
return 0;
}
❾ 求解c語言簡易計算器程序,要求就是輸入兩個整數和運算符,輸出結果。不能整除則輸出小數
你所說的不能識別運算符的問題
我想是你鍵盤輸入的時候
2個數字後面按了空格輸入而非運算符..
比如
你輸入"1
2
+"
由於2後面是空格
所以op會默認為'
'空格,而非空格後面的運算符..
如果照你這個程序
那麼輸入應該是"1
2+",即2個數字後面緊跟運算符...
當然如果你想"1
2
+",
那麼需要再定義一個char變數來接收數字和運算符之間的空格即可.
即將scanf
("%d%d%c",&a,&b,&op);改為char
temp;scanf
("%d%d%c%c",&a,&b,&temp,&op);