| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1549 人关注过本帖
标题:本人刚才编写的一个简单计算器程序~大家来参观下!
只看楼主 加入收藏
xinbuzai
Rank: 1
等 级:新手上路
帖 子:29
专家分:8
注 册:2010-7-2
收藏
得分:0 
用do while语句!

if(c=='/')

do

    { printf("变量b不能为0,请重新键入b的值.");
scanf("%d",b)
}while(b==0)
 printf("%.2f%c%.2f=%.2f",a,c,b,a/b);
  
2010-07-11 19:59
sunyh1999
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:14
帖 子:1178
专家分:3032
注 册:2009-5-17
收藏
得分:0 
当然是可用分

欢迎来到我的博客:http://blog..cn/noisunyuhong
2010-07-11 20:00
sunyh1999
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:14
帖 子:1178
专家分:3032
注 册:2009-5-17
收藏
得分:0 
如果说要重新输入的话,那么你可以试试11楼的,用while也可以的

欢迎来到我的博客:http://blog..cn/noisunyuhong
2010-07-11 20:01
z376355859
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2010-6-17
收藏
得分:0 
把scanf("%f%c%f\n",&a,&c,&b);改为scanf("%f%c%f=",&a,&c,&b);就行了
自己改了下程序:
#include "stdio.h"


main()

{
    float  a,b;

    char   c;

    printf("请任意输入一个格式为(a?b=)的表达式:\n");

error:scanf("%f%c%f=",&a,&c,&b);

    switch (c)
    {
    case '+':printf("%.2f%c%.2f=%.2f",a,c,b,a+b);   break;

    case '-':printf("%.2f%c%.2f=%.2f",a,c,b,a-b);   break;

    case '*':printf("%.2f%c%.2f=%.2f",a,c,b,a*b);  break;

    case '/':
        if (b==0)

            { printf("变量b不能为0,请重新键入表达式(a?b=):\n"); goto error;}

        else
            printf("%.2f%c%.2f=%.2f",a,c,b,a/b);  break;
    }

    printf("\n输入任意键结束.");

    getch();


}
2010-07-12 00:25
取而代之
Rank: 2
等 级:论坛游民
帖 子:32
专家分:53
注 册:2010-7-11
收藏
得分:0 
我搞定了。
2010-07-12 22:16
取而代之
Rank: 2
等 级:论坛游民
帖 子:32
专家分:53
注 册:2010-7-11
收藏
得分:0 
541877204,我是初学的,加我好友。
2010-07-12 22:19
Devil_W
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
威 望:9
帖 子:1160
专家分:1797
注 册:2009-9-14
收藏
得分:0 
果然是初学者的水平。
2010-07-14 23:57
yuyigudulk
Rank: 1
等 级:新手上路
帖 子:8
专家分:2
注 册:2010-6-27
收藏
得分:0 
你没有添加跳转语句,所以会一直循环执行。你用switch-case来输入试试,比较简洁
2010-07-15 00:22
xtfcu33
Rank: 2
等 级:论坛游民
帖 子:48
专家分:43
注 册:2010-4-26
收藏
得分:0 
//关于四则运算
#include<stdio.h>
void main()
{
    int a,b; char c;
    printf("plese input a+(-,*,/)b:");
    scanf("%d%c%d",&a,&c,&b);
    switch(c)
    {
    case '+':printf("a+b=%d\n",a+b);break;
    case '-':printf("a-b=%d\n",a-b);break;
    case '*':printf("a*b=%d\n",a*b);break;
    case '/':printf("a/b=%d\n",a/b);break;
    default:printf("error\n");
    }
}
2010-07-15 17:12
xtfcu33
Rank: 2
等 级:论坛游民
帖 子:48
专家分:43
注 册:2010-4-26
收藏
得分:0 
//更改后的
#include<stdio.h>
void main()
{
    int a,b; char c;
    printf("plese input a+(-,*,/)b:");
loop:
     scanf("%d%c%d",&a,&c,&b);
    switch(c)
    {
    case '+':printf("a+b=%d\n",a+b);break;
    case '-':printf("a-b=%d\n",a-b);break;
    case '*':printf("a*b=%d\n",a*b);break;
    case '/':
    if(b==0)
    {
            printf("变量b不能等于0,请重新输入");
            goto loop;
    }
    else
        printf("a/b=%d\n",a/b);break;
    }
    printf("输入任意键结束\n");
    getch();
}
2010-07-15 17:21
快速回复:本人刚才编写的一个简单计算器程序~大家来参观下!
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.018878 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved