读书人

求教一个判断语句有关问题

发布时间: 2012-03-31 13:13:26 作者: rapoo

求教一个判断语句问题
我写了一个二元计算器,运算加减乘除。遇到一个问题
我用判断输入1234来选择要进行的运算,为什么无论输入什么,最后都会自动执行除法运算?

C/C++ code
/*************************************一次性计算器******************** *******************************/#include<stdio.h>int main(void){    int shu1,shu2,jieguo;    int bianhao;     float shang;         printf("请输入你要进行的运算法则的编号\n1加法\n2减法\n3乘法\n4除法\n然后回车键确认:\n");    scanf("%d",&bianhao);    if(bianhao==1)    {         printf("选择了二元加法计算\n请输入第一个加数,回车键确认:\n");        scanf("%d",&shu1);        printf("请输入第二个加数,回车键确认:\n");        scanf("%d",&shu2);        printf("%d和%d相加结果是%d",shu1,shu2,shu1+shu2);        }    if(bianhao==2)    {        printf("选择了二元减法计算\n请输入被减数,回车键确认:\n");        scanf("%d",&shu1);        printf("请输入减数,回车键确认:\n");        scanf("%d",&shu2);        printf("%d减去%d的结果是%d",shu1,shu2,shu1-shu2);    }    if(bianhao==3)    {        printf("选择了二元乘法计算\n请输入第一个乘数,回车键确认:\n");        scanf("%d",&shu1);        printf("请输入第二个乘数,回车键确认:\n");        scanf("%d",&shu2);        printf("%d和%d相乘的结果是%d",shu1,shu2,shu1*shu2);    }     if(bianhao=4)    {        printf("选择了二元除法计算\n请输入被除数,回车键确认:\n");        scanf("%d",&shu1);        printf("请输入除数,回车键确认:\n");        scanf("%d",&shu2);        shang=(float)shu1/shu2;        printf("%d和%d相除的结果是%f",shu1,shu2,shang);    }         fflush(stdin);        getchar();      }


[解决办法]
if(bianhao=4) -> if( 4==bianhao )
[解决办法]
C/C++ code
if (bianhao==1){}else if (bianhao==2){}else if (bianhao==3){}else if (bianhao==4){}
[解决办法]
探讨

if(bianhao=4) -> if( 4==bianhao )

[解决办法]
条件判断出错,赋值都为真 if(bianhao=4)
这种建议用switch进行操作

读书人网 >C语言

热点推荐