Ⅰ 用C语言设计并实现一个简单计算器
额,搞定了。
你册游交给老师的时候,你要告诉他for循环的功能,for()循环体里也就是for下方{}大括号里的代码要被循环执行。然后你就一行一行的州轿销解释 switch()里的语句就行了。
break表示跳出switch()。
至于int a,b,i; 这些你肯定懂了的吧。
最后那里表示在主函数 main()里调用自定义的函数
#include <stdio.h>
int calculator() //定义一个函数。完成计算功能
{
int a,b, i;
char c;
for(i=0;;i++)
{
printf("请输入所要计算的两个数,以及所要执行的计算符号 ");
scanf("%d %d %c", &a,&b,&c);
switch (c)
{
case '+':
printf("所要计算的式子:%d+%d ",a,b);
a = a + b;printf("计算结果为:%d ",a);
break;
case '-':
printf("所要计算的式子:%d-%d ",a,b);
a = a - b;printf("计算结果为:%d ",a);
break;
case '*':
printf("所要计算的式子:%d*%d ",a,b);
a = a * b;printf("所要计算的式子:%d*%d ",a,b);printf("计算结果为:%d ",a);
break;
case '/':
printf("所要计算的式子:%d/%d ",a,b);
a = a / b;printf("所要计算的式子:%d/%d ",a,b);printf("计帆察算结果为:%d ",a);
break;
}
}
}
int main()
{
calculator();//在main()函数里调用自定义的函数calculator
}
Ⅱ 如何用c语言实现一个计算器
1、#include<stdio.h>intmain()
2、{inta,b,c;scanf("%d%d%d"盯拆,&a,&b,&c);
3、intsum=a+b+c;
4、printf("和:%d",sum);
5、printf("平均值:%f",sum/3.0);
6、return0
Ⅲ 如何在计算器上编程
可以在手机上安装可编程的计算器。例如使用易历知食软件内部的可编程计算器,就可以在计算器上编程,下面示例是编写一个计算圆面积的函数c,并在计算器中用函数c来计算半径为6的圆的面积,如下图所示:
Ⅳ 用c语言编写计算器
#include <stdio.h>
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 the inorder expression:");
gets(expression);
while(expression[position]!='\0'&&expression[position]!='\n')
{
if(is_operator(expression[position]))
{
if(!empty(operator))
while(priority(expression[position])<= priority(operator->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();
}