搜索
查看: 2243|回复: 15
打印 上一主题 下一主题

计算器程序出错

[复制链接]
跳转到指定楼层
楼主
发表于 2013-8-15 13:40:18 | 显示全部楼层 |只看大图 回帖奖励 |倒序浏览 |阅读模式
5啊哈币
计算器程序,无法编译,哪里错了!
错误提示:

Error:Id returned 1 exits status -gcc
还有一个问题:我觉得我编的getun函数效率有点低
如果谁有更好的代码贴出来,万分感谢!

[code=Cpp width=740px]
#include <stdio.h>
unsigned long long x=0,y=0;
char op,div=(char)246;
void getnu()
{
    while(1)
    {
        system("cls");
        printf("请输入一个算式(支持+,-,*,/):");
        unsigned short i,b=1;
        char c;
        scanf("%c",&c);
        if((0>(c-48))||(9<(c-48)))
        {
            printf("输入错误,重新输入!");
            continue;
        }
        while((c!='+')||(c!='-')||(c!='*')||(c!='/'))
        {
            if((0>(c-48))||(9<(c-48)))
            {
                printf("输入错误,重新输入!");
                b=0;
                break;
            }
            i=c-48;
            x=x*10+i;
            scanf("%c",&c);
        }
        if(!b){b=1; continue;}
        op=c;
        scanf("%c",&c);
        if((0>(c-48))||(9<(c-48)))
        {
            printf("输入错误,重新输入!");
            continue;
        }
        while((c!='='))
        {
            if((0>(c-48))||(9<(c-48)))
            {
                printf("输入错误,重新输入!");
                b=0;
                break;
            }
            i=c-48;
            y=y*10+i;
            scanf("%c",&c);
        }
        if(!b){b=1; continue;}
    }
}
void oper()
{
    switch(op)
    {
        case '+':printf("%lld+%lld=%lld\n",x,y,x+y);
                 break;
        case '-':printf("%lld-%lld=%lld\n",x,y,x-y);
                 break;
        case '*':printf("%lldx%lld=%lld\n",x,y,x*y);
                 break;
        case '/':printf("%lld%c%lld=%lld......%lld\n",x,div,y,x/y,x%y);
                 break;
    }
}
int main()
{
    char b;
    while(1)
    {
        getun();
        oper();
        printf("还想继续使用计算机吗Y/N)");
        scanf("%c",b);
        if((b='N')||(b='n')) break;
    }
    system("pause");
    return 0;
}[/code]
沙发
 楼主| 发表于 2013-8-16 13:08:20 | 显示全部楼层
事实上,我刚刚才知道有atol这个函数..................
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

广播台
特别关注
快速回复 返回顶部 返回列表