为什么我的“ +”运算符被视为换行符?

Emjay

以下代码用于模块化计算器问题。输入数据为:

 5
+3
* 7
+10
* 2
* 3
+1
%11
#include <stdio.h>

int main(void) {
    char oper;
    int number,result;
    scanf("%d",&number);
    result=number;
    do
    {
        oper=getchar();
        fflush(stdin);
        scanf("%d",&number);
        if(oper=='+')
        {
            result=result+number;
        }
        else if(oper=='*')
        {
            result=result*number;
        }
        printf("%c %d %d ",oper,number,result);
    }while(oper!='%');
    result=result%number;
    printf("%d",result);
    return 0;
}

我得到的输出如下:

3 5 
 3 5 * 7 35 
 10 35 
 10 35 * 2 70 
 2 70 * 3 210 
 1 210 
 1 210 % 11 210 1

我似乎无法弄清楚为什么?

蓝精灵

代替

oper=getchar();
fflush(stdin);
scanf("%d",&number);

scanf(" %c", &oper);
scanf("%d", &number);

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

为什么我的“ +”运算符被视为换行符?

来自分类Dev

为什么我的VBA代码将逗号视为换行符?

来自分类Dev

为什么将此(〜=)视为前缀运算符?

来自分类Dev

为什么IDLE在我的代码后添加换行符?

来自分类Dev

为什么换行符被 concat 删除

来自分类Dev

为什么我的模板运算符==不被使用?

来自分类Dev

为什么我的重载乘法运算符无法识别?

来自分类Dev

为什么我不能重载::运算符?

来自分类Dev

为什么我不能绑定(**)运算符

来自分类Dev

为什么我的重载运算符返回零?

来自分类Dev

什么是@”运算符?

来自分类Dev

什么是@运算符?

来自分类Dev

什么是“ >> =”运算符?

来自分类Dev

什么是()=>运算符?

来自分类Dev

什么是“ =>”运算符?

来自分类Dev

什么是“ $”运算符?

来自分类Dev

什么是()=>运算符?

来自分类Dev

什么是“ =>”运算符?

来自分类Dev

为什么C ++将赋值(=)视为重载运算符?

来自分类Dev

awk什么时候将换行符视为`;`,什么时候不?

来自分类Dev

为什么是$!运算符右关联?

来自分类Dev

为什么需要运算符重载?

来自分类Dev

为什么“ is”运算符的if范围比if更长?

来自分类Dev

为什么是$!运算符右关联?

来自分类Dev

为什么我的 JTextArea 没有从我的字符串中添加换行符?

来自分类Dev

##运算符我缺少什么

来自分类Dev

为什么print语句会在python中生成没有换行符的换行符?

来自分类Dev

为什么在参数中不存在换行符时会创建换行符?

来自分类Dev

为什么Windows的换行符比Unix的换行符大?