C语言简单的计算器程序设计

由于刚学习C语言不久,很多语句没有接触过,但是自己设计的这个简单的,程序有误,希望能帮忙解决一下,谢谢
#include<stdio.h>
int jia(a,b);
int jian(a,b);
int cheng(a,b);
int chu(a,b);
void main()
{
int a,b;
char c;
printf("输入两个整数");
scanf("%d%d%c",&a,&b,&c);
switch(c)
{
case '+':add(a,b);break;
case '-':jian(a,b);break;
case '*':cheng(a,b);break;
case '/':chu(a,b);break;
}
}
int jia(a,b)
{
int c;
while(a||b)
{
printf("a+b=%d",a+b);
scanf("%d%d%c",&a,&b,&c);
switch(c)
{
case '+':add(a,b);break;
case '-':jian(a,b);break;
case '*':cheng(a,b);break;
case '/':chu(a,b);break;
}
}
}
int jian(a,b)
{
int c;
while(a||b)
{
printf("a-b=%d",a-b);
scanf("%d%d%c",&a,&b,&c);
switch(c)
{
case '+':add(a,b);break;
case '-':jian(a,b);break;
case '*':cheng(a,b);break;
case '/':chu(a,b);break;
}
}
}
int cheng(a,b)
{
int c;
while(a||b)
{
printf("a*b=%d",a*b);
scanf("%d%d%c",&a,&b,&c);
switch(c)
{
case '+':add(a,b);break;
case '-':jian(a,b);break;
case '*':cheng(a,b);break;
case '/':chu(a,b);break;
}
}
}
int chu(a,b)
{
int c;
while(a||b)
{
printf("a/b=%d",a/b);
scanf("%d%d%c",&a,&b,&c);
switch(c)
{
case '+':add(a,b);break;
case '-':jian(a,b);break;
case '*':cheng(a,b);break;
case '/':chu(a,b);break;
}
}
}

#include<stdio.h>
//加
int Plus(int a,int b);
//减
int Minus(int a,int b);
//乘
int Multiply(int a,int b);
//除
int Divide(int a,int b);

void main()
{
int a,b;
char c;
printf("输入两个整数");
scanf("%d%d%c",&a,&b,&c);
switch(c)
{
case '+':Plus(a,b);break;
case '-':Minus(a,b);break;
case '*':Multiply(a,b);break;
case '/':Divide(a,b);break;
}
}

int Plus(int a,int b)
{
int c;
while(a||b)
{
printf("a+b=%d",a+b);
scanf("%d%d%c",&a,&b,&c);
switch(c)
{
case '+':Plus(a,b);break;
case '-':Minus(a,b);break;
case '*':Multiply(a,b);break;
case '/':Divide(a,b);break;
}
}
}

int Minus(int a,int b)
{
int c;
while(a||b)
{
printf("a-b=%d",a-b);
scanf("%d%d%c",&a,&b,&c);
switch(c)
{
case '+':Plus(a,b);break;
case '-':Minus(a,b);break;
case '*':Multiply(a,b);break;
case '/':Divide(a,b);break;
}
}
}

int Multiply(int a,int b)
{
int c;
while(a||b)
{
printf("a*b=%d",a*b);
scanf("%d%d%c",&a,&b,&c);
switch(c)
{
case '+':Plus(a,b);break;
case '-':Minus(a,b);break;
case '*':Multiply(a,b);break;
case '/':Divide(a,b);break;
}
}
}

int Divide(int a,int b)
{
int c;
while(a||b)
{
printf("a/b=%d",a/b);
scanf("%d%d%c",&a,&b,&c);
switch(c)
{
case '+':Plus(a,b);break;
case '-':Minus(a,b);break;
case '*':Multiply(a,b);break;
case '/':Divide(a,b);break;
}
}
}

语法错误给你先改过来了,我估摸着这套逻辑依然有问题,改的时候我发现的潜在问题是排版挺乱,没有英文命名规则,这两点从打基础时就应该要注意,有问题欢迎骚扰
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-05-28
首先,函数原型声明错误:int jia(a,b);参数没有确定数据类型,如果没有数据类型也要用void来声明。

其次,你每个函数都有循环,目的何在?
最后,如果的用printf输出,最好不要用a+b,由于printf函数处理会导致输出不一定是理想值。最好是把最终答案赋值给一个变量,再输出那个变量。例:d=a-b,输出d。
第2个回答  2013-05-28
当年c语言考99分的,现在忘的差不多了,记得当时是很多自己编的程序都有问题,
第3个回答  2013-05-28
C语言不吃香了哦。。。
第4个回答  2013-05-28
具体什么错误?追问

建立连接的时候出现
error LNK2001: unresolved external symbol _main
Debug/e.exe : fatal error LNK1120: 1 unresolved externals
错误提示

追答

你那个用的add方法,上面怎么写的jia啊?

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网