求加减乘除c语言代码 用c语言编一个字符型计算器代码(只要求有加减乘除,并且能分清...

\u8f93\u5165\u4e24\u4e2a\u6574\u6570\uff0c\u8fdb\u884c\u52a0\u51cf\u4e58\u9664\u56db\u5219\u8fd0\u7b97\u7684c\u8bed\u8a00\u7a0b\u5e8f\u600e\u4e48\u5199\u554a\uff0c\u62dc\u6258\u4e86~

\u4ee3\u7801
#include
int main()
{
int a,b;
scanf("%d %d",&a,&b);
printf("%d\t",a + b);
printf("%d\t",a - b);
printf("%d\t",a * b);
printf("%d\t",a / b);

return 0;

}
\u8fd0\u884c\u622a\u56fe
\u5206\u6790C\u8bed\u8a00\u4e2d\u7684\u52a0\u51cf\u4e58\u9664\u548c\u6570\u5b66\u4e2d\u7684\u52a0\u51cf\u4e58\u9664\u4e00\u6837\uff0c\u4e0d\u540c\u5728\u4e8e\u7b26\u53f7\u7684\u8868\u793a\u95ee\u9898\uff0c\u4e58\u53f7\u9700\u8981\u7528\u201c*\u201d\u8868\u793a\u3002\u9664\u53f7\u9700\u8981\u7528\u201c/\u201d\u8868\u793a\u3002\u65b0\u624b\u5b66\u4e60C\u8bed\u8a00\uff0c\u5f88\u5bb9\u6613\u628a\u9664\u53f7\u548c\u53d6\u4f59\u597d\u6df7\u6dc6\uff0c\u5f3a\u8c03\u4e00\u4e0b\uff0c\u53d6\u4f59\u53f7\u662f\u201c%\u201d\uff0c\u767e\u5206\u53f7\u5c31\u662f\u53d6\u4f59\u7684\u610f\u601d\u3002\u56e0\u6b64\u5728\u8f93\u5165\u4e24\u4e2a\u6574\u6570\u4ee5\u540e\uff0c\u6309\u7167\u6570\u5b66\u65b9\u6cd5\u5c31\u53ef\u4ee5\u76f4\u63a5\u8f93\u51fa\u7ed3\u679c\uff0c\u6574\u6570\u7684\u8f93\u5165\u7528scanf()\u51fd\u6570\u3002

#include
struct s_node
{
int data;
struct s_node *next;
};
typedef struct s_node s_list;
typedef s_list *link;
link operator=NULL;
link operand=NULL;
link push(link stack,int value)
{
link newnode;
newnode=(link) malloc(sizeof(s_list));
if(!newnode)
{
printf("\nMemory allocation failure!!!");
return NULL;
}
newnode->data=value;
newnode->next=stack;
stack=newnode;
return stack;
}
link pop(link stack,int *value)
{
link top;
if(stack !=NULL)
{
top=stack;
stack=stack->next;
*value=top->data;
free(top);
return stack;
}
else
*value=-1;
}
int empty(link stack)
{
if(stack==NULL)
return 1;
else
return 0;
}
int is_operator(char operator)
{
switch (operator)
{
case '+': case '-': case '*': case '/': return 1;
default:return 0;
}
}
int priority(char operator)
{
switch(operator)
{
case '+': case '-' : return 1;
case '*': case '/' : return 2;
default: return 0;
}
}
int two_result(int operator,int operand1,int operand2)
{
switch(operator)
{
case '+':return(operand2+operand1);
case '-':return(operand2-operand1);
case '*':return(operand2*operand1);
case '/':return(operand2/operand1);
}
}
void main()
{
char expression[50];
int position=0;
int op=0;
int operand1=0;
int operand2=0;
int evaluate=0;
printf("\nPlease input:\n");
gets(expression);
while(expression[position]!='\0'&&expression[position]!='\n')
{
if(is_operator(expression[position]))
{
if(!empty(operator))
while(priority(expression[position])data)&&
!empty(operator))
{
operand=pop(operand,&operand1);
operand=pop(operand,&operand2);
operator=pop(operator,&op);
operand=push(operand,two_result(op,operand1,operand2));
}
operator=push(operator,expression[position]);
}
else
operand=push(operand,expression[position]-48);
position++;
}
while(!empty(operator))
{
operator=pop(operator,&op);
operand=pop(operand,&operand1);
operand=pop(operand,&operand2);
operand=push(operand,two_result(op,operand1,operand2));
}
operand=pop(operand,&evaluate);
printf("The expression [%s] result is '%d' ",expression,evaluate);
getch();
}

加减乘除还有什么代码啊。

直接 变量名+运算符+变量名就可以了啊。
注意除法 /是整除符号,如果符号两边都是整数(int型),那么结果值保留整数,小数将被忽略。 如果要精确到小数,'/'两边至少有一个是浮点数(float或double)。
注意混合运算结果是按照表达式中数据表达范围最大的数据类型,例如:整数和浮点数混合运算,结果返回是浮点数。

double a,b;
char c;
double result;
scanf ("%lf %c %lf",&a,&c,&b);
switch (c)
{
case '+': result=a+b;break;
case '-': result=a-b;break;
case '*': result=a*b;break;
case '/': result=a/b;break;
}

int a,b,c
c = a+b

有难度?

在百度文库搜“C语言简易四则运算计算器代码”。

  • c璇█鍔犲噺涔橀櫎杩愮畻浠g爜
    绛旓細1銆侀鍏堟墦寮Code Blocks杞欢锛屾柊寤轰竴涓C璇█鏂囦欢锛屽涓嬪浘鎵绀恒2銆佹帴涓嬫潵鍦–璇█鏂囦欢涓紪鍐鍔犲噺涔橀櫎杩愮畻浠g爜锛屽涓嬪浘鎵绀恒3銆佺劧鍚庣偣鍑绘瀯寤鸿彍鍗曚笅闈㈢殑缂栬瘧褰撳墠鏂囦欢閫夐」锛屽涓嬪浘鎵绀恒4銆佹渶鍚庤繍琛岀▼搴忓氨鍙互寰楀埌鍔犲噺涔橀櫎杩愮畻鐨勭粨鏋滀簡锛屽涓嬪浘鎵绀恒
  • 鐢C璇█鍋氫竴涓畝鍗曠殑涓や綅鏁鍔犲噺涔橀櫎
    绛旓細main(){ float a,b,re;char c;printf("input(like 12+15 or 12*15):\n");scanf("%f",&a);do{ scanf("%c",&c);}while(c == ' ');scanf("%f",&b);switch(c){ case '+':re = a+b;break;case '-':re = a-b;break;case '*':re = a*b;case '/':re = a/...
  • C璇█璁$畻鍔犲噺涔橀櫎
    绛旓細include <stdio.h>#include <string.h>int main(){ double a, b; char op; scanf ("%lf%c%lf", &a, &op, &b); if (op == '+'){ printf ("%g+%g=%g", a, b, a+b); } else if (op == '-'){ printf ("%g-%g=%g", a, b, a-b); ...
  • 鐢c璇█缂栦竴涓畝鍗曠殑鑳借绠鍔犲噺涔橀櫎鐨勫皬璁$畻鍣,瑕佹槸鑳芥妸鎬濊矾闄勪笂鏈濂...
    绛旓細int i,num1,num2,sum,count;char ch,op;printf("1 2 3 + - \n");printf("4 5 6 * / \n");printf("7 8 9 = # \n\n");{ printf("0");ch=getch();while(ch<'0' || ch>'9')//杈撳叆鐨勪笉鏄暟瀛楋紝閲嶆柊杈撳叆 ch=getch();printf("\b%c...
  • c璇█鎬庝箞鍋鍔犲噺涔橀櫎
    绛旓細浠g爜 include<stdio.h> int main(){ int a,b;scanf("%d %d",&a,&b);printf("%d\t",a + b);printf("%d\t",a - b);printf("%d\t",a * b);printf("%d\t",a / b);return 0;} 杩愯鎴浘 鍒嗘瀽C璇█涓殑鍔犲噺涔橀櫎鍜屾暟瀛︿腑鐨勫姞鍑忎箻闄や竴鏍凤紝涓嶅悓鍦ㄤ簬绗﹀彿鐨勮〃绀洪棶棰橈紝涔樺彿闇瑕佺敤...
  • 鐢C璇█鍋氫竴涓绠楀櫒,鑳藉疄鐜鍔犲噺涔橀櫎娣峰悎杩愮畻?
    绛旓細鏄殑锛屽彲浠ヤ娇鐢C璇█缂栧啓涓涓绠楀櫒绋嬪簭锛岃兘澶熷疄鐜板姞銆佸噺銆佷箻銆侀櫎绛夋贩鍚堣繍绠椼備笅闈㈡槸涓涓畝鍗曠殑绀轰緥绋嬪簭锛歚``c include <stdio.h> int main() { char operator;double num1, num2, result;printf("Enter an operator (+, -, *, /): ");scanf("%c", &operator);printf("Enter two ...
  • 鐢C璇█缂栧啓涓涓畝鍗曠殑鍔犲噺涔橀櫎璁$畻鍣,瑕佹眰濡傚浘
    绛旓細include <stdlib.h>#include <string.h>int Calculate(char* input, float *ret){int returnRet = 0;float num1, num2, symbol;int len = strlen(input);char* num1Str = (char*)malloc(sizeof(char) * len);char* num2Str = (char*)malloc(sizeof(char) * len);memset(num1Str, 0...
  • c璇█鍥涘垯杩愮畻绋嬪簭鎬庝箞鍐
    绛旓細鍔犳硶杩愮畻鏄渶绠鍗曠殑鍥涘垯杩愮畻涔嬩竴锛屽叾鍩烘湰褰㈠紡涓篴tb锛屽叾涓璦鍜宐涓哄姞鏁帮紝+涓哄姞鍙凤紝鍏剁粨鏋滀负涓や釜鍔犳暟鐨勫拰銆傚湪C璇█涓紝鍔犳硶杩愮畻鍙互浣跨敤鈥+鈥濈鍙疯繘琛岃〃绀猴紝渚嬪:inta=10;intb= 20;intc=a+b;printf("a+b=%dn",c)銆備笂杩浠g爜涓紝瀹氫箟浜嗕袱涓暣鍨嬪彉閲廰鍜宐锛屽垎鍒祴鍊间负10鍜20锛岀劧鍚庝娇鐢ㄢ+鈥濈鍙...
  • 鐢C璇█鎬庢牱瀹炵幇璁$畻鍣鍔犲噺涔橀櫎鍔熻兘?
    绛旓細include<iostream.h> #include "string" int count(int a,int b,char c) { if(c=='+') return a+b; if(c=='-') return a-b; if(c=='/') return a/b; if(c=='*') return a*b; } void main() { char str[100]; cin>>str; int ...
  • 杈撳叆涓や釜鏁存暟,杩涜鍔犲噺涔橀櫎鍥涘垯杩愮畻鐨c璇█绋嬪簭鎬庝箞鍐欏晩,鎷滄墭浜唦_鐧 ...
    绛旓細include<stdio.h> int main() {int a,b,sum,sub,mul,div;scanf("%d%d",&a,&b);sum=a+b;sub=a-b;mul=a*b;div=a/b;printf("%d\n%d\n%d\n%d\n",sum,sub,mul,div);return 0; }
  • 扩展阅读:扫一扫题目出答案 ... 基础编程代码大全 ... c++入门程序代码 ... 编程g代码大全 ... 新手代码大全 ... 编程代码大全一览表 ... 吓人的编程代码 ... 生日编程代码免费复制 ... 编程一个最简单代码 ...

    本站交流只代表网友个人观点,与本站立场无关
    欢迎反馈与建议,请联系电邮
    2024© 车视网