qq_37146456 2017-01-05 11:40 采纳率: 0%
浏览 1099

想回答问题的大神们请看清楚问题和我的要求!,题目如下,代码如下,又总算修改不对总算比题意多一点输入

问题 Q: 四则运算
题目描述
编写一个程序,为您提供加法、减法、乘法或除法的选项。获得您的选择后,该程序请求两个数,然后执行您选择的操作。该程序应该只接受它所提供的菜单选项。

a表示加法,s表示减法,m表示乘法,d表示除法,q表示结束这个时候应该输出Bye.

输入
一个字符(a,s,m,d,q),随后两行两个数,

输入为q时结束输入。

输出
输出操作算式并求出结果(注意空格,保留两位小数)。

如果为q输出Bye!

样例输入
a
3
4
q
样例输出
3.00 + 4.00 = 7.00
Bye!

代码:
#include
int main()
{
char o,s,m,d,q;
float m1,n,sum;
while(scanf("%c\n%f\n%f",&o,&m1,&n)!=EOF)

{

    switch(o)

    {
    case'a':
        printf("%.2f+%.2f=%.2f\n",m1,n,m1+n);
        break;

    case's':

        printf("%.2f-%.2f=%.2f\n",m1,n,m1-n);
        break;

    case'm':

        printf("%.2f*%.2f=%.2f\n",m1,n,m1*n);
        break;
    case'd':

        printf("%.2f/%.2f=%.2f\n",m1,n,m1/n);
        break;

    case'q':
        printf("Bye!");
        break;
    }



}

}

我每次需要输入两次q才会出现Bye,而且结束不了,
请用c语言在原代码上修改,请看题看题,每次认真看题的人简直少得可怜

  • 写回答

4条回答 默认 最新

  • 企鹅爱吃方便面 2017-01-05 11:59
    关注

    不用输两次q,输一次q,任意两个数字应该也能出现bye。
    原因应该在while里面。

    评论

报告相同问题?

悬赏问题

  • ¥15 聚类分析或者python进行数据分析
  • ¥15 如何用visual studio code实现html页面
  • ¥15 逻辑谓词和消解原理的运用
  • ¥15 三菱伺服电机按启动按钮有使能但不动作
  • ¥15 js,页面2返回页面1时定位进入的设备
  • ¥50 导入文件到网吧的电脑并且在重启之后不会被恢复
  • ¥15 (希望可以解决问题)ma和mb文件无法正常打开,打开后是空白,但是有正常内存占用,但可以在打开Maya应用程序后打开场景ma和mb格式。
  • ¥20 ML307A在使用AT命令连接EMQX平台的MQTT时被拒绝
  • ¥20 腾讯企业邮箱邮件可以恢复么
  • ¥15 有人知道怎么将自己的迁移策略布到edgecloudsim上使用吗?