| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 530 人关注过本帖
标题:输入问题求助
只看楼主 加入收藏
ccmike98
Rank: 2
来 自:苏州
等 级:论坛游民
帖 子:76
专家分:56
注 册:2010-7-13
结帖率:75%
收藏
已结贴  问题点数:20 回复次数:9 
输入问题求助
在写一个人求助的题目时遇到的问题

题目是:一条铁路线,有A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,16个车站.以所有的车站为对象,让输入乘车站和下车站,并且显示出乘车区间的金额.(金额以5站为一段,五站以内170元,五站以上十站以内260元,十站以上360元).
我最初写的是这个
#include<stdio.h>
main()
{
    char x,y,t;
    int z;
    printf("请输入乘车站:");
    scanf("%c",&x);
    printf("请输入下车站:");
    scanf("%c",&x);
    if((x>=65&&y>=65&&x<=80&&y<=80)||(x>=97&&y>=97&&x<=112&&y<=112))
    {
        if(x<y)
            t=x,x=y,y=t;
        z=x-y;
        if(z==0)
            printf("目的地就是本站\n");
        if(z>0&&z<=5)
            printf("请付170元\n");
        if(z>5&&z<=10)
            printf("请付260元\n");
        if(z>10)
            printf("请付360元\n");
    }
    else
        printf("车站输入错误\n");
}

发现2个scanf语句好像不能一起用啊!!!!!!!!!!!

后来我改成了
#include<stdio.h>
main()
{
    char x,y,t;
    int z;
    printf("请输入乘车站和下车站:");
    scanf("%c %c",&x,&y);
    if((x>=65&&y>=65&&x<=80&&y<=80)||(x>=97&&y>=97&&x<=112&&y<=112))
    {
        if(x<y)
            t=x,x=y,y=t;
        z=x-y;
        if(z==0)
            printf("目的地就是本站\n");
        if(z>0&&z<=5)
            printf("请付170元\n");
        if(z>5&&z<=10)
            printf("请付260元\n");
        if(z>10)
            printf("请付360元\n");
    }
    else
        printf("车站输入错误\n");
}
        
就可以了  这是为什么???
搜索更多相关主题的帖子: 输入 
2010-07-14 18:38
ccmike98
Rank: 2
来 自:苏州
等 级:论坛游民
帖 子:76
专家分:56
注 册:2010-7-13
收藏
得分:0 
没人来教我吗
2010-07-14 19:13
ccmike98
Rank: 2
来 自:苏州
等 级:论坛游民
帖 子:76
专家分:56
注 册:2010-7-13
收藏
得分:0 
救命啊

[ 本帖最后由 ccmike98 于 2010-7-14 19:24 编辑 ]
2010-07-14 19:23
ymqq
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:141
专家分:143
注 册:2010-7-14
收藏
得分:0 
你的声明
 char x,y,t
所申明的是字符,在scanf时没问题。
但你的 scanf语scanf("%c %c",&x,&y);好像两个%c之间有空格,在输入时也必须输入空格,增加了输入难度。
2010-07-14 20:16
ymqq
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:141
专家分:143
注 册:2010-7-14
收藏
得分:20 
对于第一个错误 应该是x读入正确 而Y读入‘\n’;在第一个scanf后加”getchar():“试试!
2010-07-14 20:19
ccmike98
Rank: 2
来 自:苏州
等 级:论坛游民
帖 子:76
专家分:56
注 册:2010-7-13
收藏
得分:0 
怎么加??不太懂?
那句话能写一下吗??
谢谢
2010-07-14 20:32
ymqq
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:141
专家分:143
注 册:2010-7-14
收藏
得分:0 
#include<stdio.h>
main()
{
    char x,y,t;
    int z;
    printf("请输入乘车站:");
    scanf("%c",&x);
    getchar();
    printf("请输入下车站:");
    scanf("%c",&x);
    if((x>=65&&y>=65&&x<=80&&y<=80)||(x>=97&&y>=97&&x<=112&&y<=112))
    {
        if(x<y)
            t=x,x=y,y=t;
        z=x-y;
        if(z==0)
            printf("目的地就是本站\n");
        if(z>0&&z<=5)
            printf("请付170元\n");
        if(z>5&&z<=10)
            printf("请付260元\n");
        if(z>10)
            printf("请付360元\n");
    }
    else
        printf("车站输入错误\n");
}
收到的鲜花
  • ccmike982010-07-14 22:05 送鲜花  3朵   附言:谢谢 解决了
  • ccmike982010-07-14 22:05 送鲜花  3朵   附言:谢谢 解决了
2010-07-14 21:37
ccmike98
Rank: 2
来 自:苏州
等 级:论坛游民
帖 子:76
专家分:56
注 册:2010-7-13
收藏
得分:0 
谢谢
可是运行的结果不对啊???
2010-07-14 21:58
ccmike98
Rank: 2
来 自:苏州
等 级:论坛游民
帖 子:76
专家分:56
注 册:2010-7-13
收藏
得分:0 
回复 7楼 ymqq
x的值变成了y的值,而y没有值啊
2010-07-14 22:01
快速回复:输入问题求助
数据加载中...
 
   



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

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