| 编程中国 | 业界新闻 | 技术文章 | 视频教程 | 下载频道 | 程序源码 | 个人空间 | 编程论坛
全能ASP/PHP/ASP.NET主机,支持月付专业 MSSQL 数据库空间,支持月付专业 MySQL 数据库空间,支持月付买域名,送MP3、MP4
高端软件开发 = 年薪十万不是梦赛孚耐:软件保护加密专家身份认证令牌USB KEY买空间,免费送域名(厦门中资源)
共有 694 人关注过本帖
标题:怎么让数字顺序用英文读出来呢??
收藏  订阅  推荐  打印 
h254689912
Rank: 1
等级:新手上路
帖子:1
积分:110
注册:2008-9-18
怎么让数字顺序用英文读出来呢??

例如 输入 数字 932  输出 nine three two
搜索更多相关主题的帖子: 数字  英文  顺序  
2008-9-18 14:33
ml232528
Rank: 2
等级:注册会员
威望:1
帖子:172
积分:1910
注册:2007-7-23

#include<stdio.h>

int main()
{
    char str[10][9]={"zero","one","two","three","four",
        "five","six","seven","eight","nine"};
    char h;    
    scanf("%c",&h);
    while(h!='q')
    {
        if(h>='0'&&h<='9')
        printf("%s\n",str[h-'0']);        
        scanf("%c",&h);
    }
    getchar();
    return 0;
}

-︻┻┳═一 ☆ 悲伤的代价就是让自己明白什么是最重要的和应该珍惜的
2008-9-18 16:31
StarWing83
Rank: 12Rank: 12Rank: 12
来自:湖北工业大学
等级:版主
威望:9
帖子:2483
积分:26219
注册:2007-11-16

#include <stdio.h>
#include <stdlib.h>

int main(void)
{
    int ch;
    char *str[] =
    {
        "zero", "one", "two", "three", "four",
        "five", "six", "seven", "eight", "nine"
    };

    while ((ch = getchar()) != EOF
            && ch >= '0' && ch <= '9')
        printf("%s ", str[ch-'0']);
    putchar('\n');
    return 0;
}

专心编程………
飞燕算法初级群:3996098
我的Blog
2008-9-18 16:59
shade1220
Rank: 2
等级:注册会员
帖子:83
积分:1004
注册:2008-8-5

StarWing83 在 2008-9-18 16:59 的发言:

#include
#include

int main(void)
{
    int ch;
    char *str[] =
    {
        "zero", "one", "two", "three", "four",
        "five", "six", "seven", "eight", "nine"
    };

    while ( ...
为什么使用的时候while语句不起作用,只能输入一次后救退出了.?

踏踏实实学习,认认真真编程
2008-9-18 17:19
StarWing83
Rank: 12Rank: 12Rank: 12
来自:湖北工业大学
等级:版主
威望:9
帖子:2483
积分:26219
注册:2007-11-16

2#的还不是这样……

专心编程………
飞燕算法初级群:3996098
我的Blog
2008-9-18 17:22
woshiyun
Rank: 3Rank: 3
等级:中级会员
帖子:173
积分:2404
注册:2008-6-16

StarWing83 在 2008-9-18 16:59 的发言:

#include
#include

int main(void)
{
    int ch;
    char *str[] =
    {
        "zero", "one", "two", "three", "four",
        "five", "six", "seven", "eight", "nine"
    };

    while ( ...
版主也会犯这种错。。。
#include <stdio.h>
#include <stdlib.h>

int main(void)
{
    int ch;
    char *str[] =
    {
        "zero", "one", "two", "three", "four",
        "five", "six", "seven", "eight", "nine"
    };

    while ((ch = getchar()) != EOF)
    {
        if (ch >= '0' && ch <= '9') printf("%s ", str[ch-'0']);
        if (ch == '\n') putchar('\n');
    }
    return 0;
}
2008-9-18 17:35
shade1220
Rank: 2
等级:注册会员
帖子:83
积分:1004
注册:2008-8-5

#include <stdio.h>
#include <stdlib.h>

int main(void)
{
    int ch;
    char *str[] =
    {
        "zero", "one", "two", "three", "four",
        "five", "six", "seven", "eight", "nine"
    };

    while ((ch = getchar()) != EOF)
    {
        if (ch >= '0' && ch <= '9') printf("%s \n", str[ch-'0']);
      
    }
    return 0;
}

踏踏实实学习,认认真真编程
2008-9-18 17:56
StarWing83
Rank: 12Rank: 12Rank: 12
来自:湖北工业大学
等级:版主
威望:9
帖子:2483
积分:26219
注册:2007-11-16

6L的,输入:123abc123,看看是什么结果。

2L的的确可以输入多次,但也有类似问题。

说“2L的也是一样”是我的错,但是我的程序并没有错,在遇到回车或者非法字符时就会退出,这是我设计时考虑的。这样更安全,如果不满意,就自己写ClearInputBuffer然后自己多次调用。

[ 本帖最后由 StarWing83 于 2008-9-18 18:07 编辑 ]

专心编程………
飞燕算法初级群:3996098
我的Blog
2008-9-18 18:01
liyanhong
Rank: 3Rank: 3
来自:水星
等级:中级会员
威望:8
帖子:1865
积分:4530
注册:2008-5-3

int ch是什么意思?

爱上你 是 我的错  可是离 开  又舍不得  听着你为我写的歌     好难过
如果说 我说如果  我们还 能  重新来过   不去计 较 谁对谁错  会怎么做
2008-9-18 18:03
StarWing83
Rank: 12Rank: 12Rank: 12
来自:湖北工业大学
等级:版主
威望:9
帖子:2483
积分:26219
注册:2007-11-16

额……liyanhong……我知道你是在开玩笑……

专心编程………
飞燕算法初级群:3996098
我的Blog
2008-9-18 18:07
关于我们 | 广告合作 | 编程中国 | 清除Cookies | Archiver | WAP | TOP

编程中国 版权所有,并保留所有权利。鲁ICP备08000592号
Powered by Discuz, Processed in 0.068078 second(s), 9 queries.
Copyright©2004-2008, BCCN.NET, All Rights Reserved