标题:杭电ACM1170的输入问题
只看楼主
eric_liuyq
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2012-8-11
结帖率:100%
已结贴  问题点数:1 回复次数:7 
杭电ACM1170的输入问题
#include<stdio.h>
int main()
{
    int oper1,oper2,N,k;
    char fs;
    scanf("%d",&N);
    for(k=0;k<N;k++)
    {
        getchar();//这句你去掉运行和加上运行怎么结果不一样??
        scanf("%c %d %d",&fs,&oper1,&oper2);
        switch(fs)
        {
        case '+':
            printf("%d\n",oper1+oper2);
            break;
        case '-':
            printf("%d\n",oper1-oper2);
            break;
        case '*':
            printf("%d\n",oper1*oper2);
            break;
        case '/':
            printf("%.2f\n",(double)oper1/(double)oper2);
            break;
        }      
    }
  return 0;
}
搜索更多相关主题的帖子: switch include 
2012-08-11 21:30
eric_liuyq
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2012-8-11
得分:0 
自己顶下!求解答!自己是新手!
2012-08-11 21:32
eric_liuyq
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2012-8-11
得分:0 
http://acm.hdu.
这是题目的连接!
2012-08-11 21:35
beyondyf
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:103
帖 子:3282
专家分:12654
注 册:2008-1-21
得分:1 
为了虑去每行结尾的换行符。在scanf的格式串末尾加个\n就可以不用它。

重剑无锋,大巧不工
2012-08-11 21:36
eric_liuyq
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2012-8-11
得分:0 
谢谢你!但是运行还是异常!在scanf语句加换行符也不行,去掉getchar();语句运行后得不到正确的结果!
2012-08-11 22:01
eric_liuyq
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2012-8-11
得分:0 
四楼的高手能不能帮我再看一下!十分感谢!
2012-08-11 22:02
beyondyf
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:103
帖 子:3282
专家分:12654
注 册:2008-1-21
得分:0 
你的问题出在除法的结果上。题目要求的是只有当结果不是整数时才保留两位小数。

重剑无锋,大巧不工
2012-08-11 22:43
eric_liuyq
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2012-8-11
得分:0 
回复 7楼 beyondyf
谢谢了!问题在你的帮助下解决了!非常感谢!
2012-08-14 19:26



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-375117-1-1.html




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

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