1樓:煙子丹
#include
using std::cin;
using std::cout;
int main()
return 0;
}如果不限定for或while,還有兩種簡單思路:
輸入乙個string遍歷字元,搜尋符號
2.while(cin << int)
while(cin << char)
while(cin << int)
依靠不符型別迴圈跳出來儲存兩個數值,根據儲存的char執行操作
2樓:
是畢業設計用嗎?
我會的 ,,,好不
用c++設計乙個簡易的計算器,實現小型整數,實數,複數,的加減乘除運算(用到棧結構),並將結果顯示。
3樓:
//我這個只支援加減乘除,小數的,負數,括號的,你說的那個我寫不出來,不知道對你有沒有用
#include
struct
ret[200];
int topa,topb;
int opstk[200];
int level[200];
double cal(double a,double b,char op)
int main()
else if(s[i]==')')
topa--;
}else if(s[i]=='+'||s[i]=='*'||s[i]=='/')
opstk[topa++]=s[i];
}else if(s[i]=='-')
else
opstk[topa++]='-';}}
else if(s[i]>='0'&&s[i]<='9')
}while(topa>0)
for(i=0;i=0;y--)
if(ret[y].op==-1)
break;
for(x=y-1;x>=0;x--)
if(ret[x].op==-1)
break;
ret[i].num=cal(ret[x].num,ret[y].num,ret[i].op);
ret[i].op=-1;
ret[x].op=0;
ret[y].op=0;}}
printf("%.4lf\n",ret[topb-1].num);
}return 0;}
4樓:小點點
我有vc 原始碼,lz 要不
求c++大作業源**,用棧類做乙個簡單的計算器,要求能做簡單的加減乘除運算,能夠判斷使用者輸入是否正
5樓:匿名使用者
首先轉換為字尾表示式
(1) . 如果遇到高優先順序,直接入棧 , 數字直接加入字尾表示式字串中,如果遇到低優先順序的操作符,則將棧中操作符彈出直至遇到低優先順序的操作符。
(2) 如果遇到結尾,則將棧中 全部彈出加入字尾表示式字串中根據字尾表示式字串,將數壓棧,如果遇到操作符,將棧頂兩元素進行相應運算,並且將運算結果壓入棧中,迴圈操作,直至結束。
6樓:匿名使用者
單的加減乘除運算我以word形式發you' xiang 。
設計乙個最簡單的c++加減乘除的程式
7樓:周亮
#include
using namespace std;
class cpu
cpu(char atype)
char get_type()
private:
char type;
};class ram
ram(char atype)
char get_type()
private:
char type;
};class cdrom
};class computer
void run()
void stop()
char get_cpu()
char get_ram()
private:
cpu acpu;
ram aram;
cdrom acdrom;
};int main()
8樓:匿名使用者
#include
using namespace std;
int main()
case '-':
case '*':
case '/':
else
}default:
cout << "符號錯誤\n";
}return 0;}
c++ 簡易計算器 只要能計算加減乘除和混合運算 輸入算式就出結果的那種 可以連續運算 單獨輸入「=」時結束
9樓:匿名使用者
#include
#include
#include
#include
using namespace std;
const char num=;
const char operation=;
const double pi=3.14159265358979;
const double ee=2.71828182818281;
class fun //處理系統數學函式的類
static string fun;
double calc();
private:
int type; //666 0 1 sin90 2 3! 3 3c2
string op; //函式型別
double lvalue; //函式左邊的值
double rvalue; //函式右邊的值
static int funnum;
};int fun::funnum=8;
string fun::fun=;
/*函式說明:
1:log是以10為底的工程對數
2:ln 是以e為底的自然對數
3:c 計算組合數 輸入規則 如計算 3取2的組合 輸入表示式 3c2
4:a 計算排列數 輸入規則 如計算 3取2的排列 輸入表示式 3a2
5:! 計算階乘
6:^ x的y次方 輸入 x^y
*/int factorial(int n) //階乘函式
int c(int a,int b)
int a(int a,int b)
double fun::calc() //計算系統函式的值}}
struct unit //雙向鍊表儲存運算單元
int pri; //優先順序
char operation; //操作符
string code; //原始**
double value; //資料
int type; //型別 操作符0 資料1 函式2
unit * pre; //構成雙向鍊表
unit * next;
};class node //表示式樹狀結構的節點
node * head; //節點的根,左樹枝,右樹枝
node * left;
node * right;
double getvalue();
char getoperation() const
int getpri() const
int i***p() const
private:
char operation; //操作符
int pri; //優先順序
int expression; //記錄該節點是否是表示式0 1
double value; //該節點的值
};double node::getvalue() //運算該節點的值
}else
return value;
}bool isnum(char c)
else //其他的當做函式處理}}
return head;
}unit * calc(unit * head) //計算雙向鍊表基本單元的值
p=p->next;
}return head;
}node * tree(unit * head) //生成表示式樹
else
else
now_pri=p->pri;}}
p=p->next;
}if(! hadop)
root=new node(' ',0,0,head->value);
return root;
}int main()
return 0;}
10樓:匿名使用者
一共這麼多字元:0123456789+-*/=()
每個字元編號,然後用switch+case進行逐個字元分析,判斷運算順序,可以了……
11樓:範
#include
void main()
12樓:小鼻兒鼻兒
c++做法:
#include
using namespace std;
int main()
怎樣用c語言編寫乙個簡單的可以進行加減乘除運算混合運算的計算器?
13樓:喵姐說心理
用c語言編寫乙個簡單的可以進行加減乘除運算混合運算的計算器的方法:
1、開啟visual c++ 6.0-檔案-新建-檔案-c++ source file;
2、輸入預處理命令和主函式:
#include/*函式頭:輸入輸出標頭檔案*/
void main()/*空型別:主函式*/
3、定義變數:
int a,b,d; /*定義變數的資料型別為整型*/
char c;/*定義變數的資料型別為字元型*/
4、輸入四則表示式:
printf("輸入如「3*4」或「5+2」的四則表示式:");/*輸出文字提示*/
scanf("%d%c%d",&a,&c,&b);/*輸入四則表示式*/
5、判斷運算符號:
switch(c) /*判斷運算符號*/
case'+':d=a+b;break;/*進行加法運算*/
case'-':d=a-b;break;/*進行減法運算*/
case'*':d=a*b;break;/*進行乘法運算*/
case'/':d=a/b;break; /*進行除法運算*/
6、輸出結果:
輸出結果*/
完整的源**:
#include/*函式頭:輸入輸出標頭檔案*/
void main()/*空型別:主函式*/
int a,b,d;/*定義變數的資料型別為整型*/
char c;/*定義變數的資料型別為字元型*/
printf("輸入如「3*4」或「5+2」的四則表示式:");/*輸出文字提示*/
scanf("%d%c%d",&a,&c,&b);/*輸入四則表示式*/
switch(c)/*判斷運算符號*/
case'+':d=a+b;break;/*進行加法運算*/
case'-':d=a-b;break;/*進行減法運算*/
case'*':d=a*b;break;/*進行乘法運算*/
case'/':d=a/b;break;/*進行除法運算*/
輸出結果*/
14樓:4747哦
#include
main()
if(ch=='/')
}if(ch=='+')
if(ch=='-')} }
設計乙個簡單計算器,c語言設計乙個簡單的計算器程式
目的 運用所學課程中有關資料結構 程式設計基本結構 函式 陣列 結構體 檔案知識來進行專案設計,熟練掌握程式設計技術,加深對課程內容的理解 提高軟體應用設計能力及程式設計和除錯能力。三 設計要求 1.能以規範化要求提交專案設計文件及源程式。1 用c 或vc 語言程式設計時所有識別符號 包括變數名 函...
怎麼用C語言程式設計簡單計算器,怎麼用C語言程式設計乙個簡單計算器?
include void main c語言是一門通用計算機程式語言,應用廣泛。c語言的設計目標是提供一種能以簡易的方式編譯 處理低階儲存器 產生少量的機器碼以及不需要任何執行環境支援便能執行的程式語言。儘管c語言提供了許多低階處理的功能,但仍然保持著良好跨平台的特性,以乙個標準規格寫出的c語言程式可...
用C語言編簡單的數學計算程式要求輸入題目數
include include include void main int a,b,i,op,r,c 0 c表示答對題目數,r記錄回答結果 int n,s printf 您希望出多少道題目 n scanf d n s n while n srand time 0 a rand 10 1 b rand...