| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1733 人关注过本帖
标题:念整数
只看楼主 加入收藏
greenpop
Rank: 1
等 级:新手上路
帖 子:82
专家分:3
注 册:2011-12-22
结帖率:88.89%
收藏
已结贴  问题点数:20 回复次数:8 
念整数
题目内容:
你的程序要读入一个整数,范围是[-100000,100000]。然后,用汉语拼音将这个整数的每一位输出出来。
如输入1234,则输出:
yi er san si
注意,每个字的拼音之间有一个空格,但是最后的字后面没有空格。当遇到负数时,在输出的开头加上“fu”,如-2341输出为:
fu er san si yi

输入格式:
一个整数,范围是[-100000,100000]。

输出格式:
表示这个整数的每一位数字的汉语拼音,每一位数字的拼音之间以空格分隔,末尾没有空格。

输入样例:
-30

输出样例:
fu san ling
搜索更多相关主题的帖子: 整数 拼音 输出 输入 空格 
2019-05-31 09:29
吹水佬
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:451
帖 子:10537
专家分:42927
注 册:2014-5-20
收藏
得分:5 
取出整数的各位数字,如 1234
    char *s[] = {"ling","yi","er","san","si"};
    printf("%s %s %s %s\n",s[1],s[2],s[3],s[4]);
2019-05-31 10:51
greenpop
Rank: 1
等 级:新手上路
帖 子:82
专家分:3
注 册:2011-12-22
收藏
得分:0 
谢谢楼上的老师。各位老师,能否给一个更详细的解说?谢谢。
2019-05-31 14:43
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9007
专家分:53942
注 册:2011-1-18
收藏
得分:15 

程序代码:
#include <stdio.h>

int main( void )
{
    int n;
    scanf( "%d", &n );

    char tmp[21];
    sprintf( tmp, "%d", n );

    for( const char* p=tmp; *p; ++p )
        printf( "%s%c", (const char*[]){"fu","","","ling","yi","er","san","si","wu","liu","qi","ba","jiu"}[*p-'-'], " \n"[p[1]==0] );
}

输入 1234
输出 yi er san si

输入 -98765
输出 fu jiu ba qi liu wu

输入 100000
输出 yi ling ling ling ling ling

输入 -100000
输出 fu yi ling ling ling ling ling

输入 -000102
输出 fu yi ling er

输入 -000
输出 ling

2019-05-31 15:28
greenpop
Rank: 1
等 级:新手上路
帖 子:82
专家分:3
注 册:2011-12-22
收藏
得分:0 
谢谢楼上的老师。不过,你编的程序,我在code block 16.01上面不能运行。错误提示是:code block 不支持c99.
2019-06-04 17:10
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9007
专家分:53942
注 册:2011-1-18
收藏
得分:0 
以下是引用greenpop在2019-6-4 17:10:34的发言:

谢谢楼上的老师。不过,你编的程序,我在code block 16.01上面不能运行。错误提示是:code block 不支持c99.

1. 能不能成功编译,与你使用的IDE完全无关,只取决于你用的编译器

2. 我猜你用的编译器应该是gcc,只是不知道具体版本号是多少。但无论多少,总不至于不支持c99,因为c99是上个世纪的古老产物了。

3. gcc编译时指定C标准的编译参数是 -std=c??
   先试试 -std=c17,如果可以的话,就用它。如果不可以的话,强烈建议你更新gcc。
   如果你用不了 -std=c17,又懒得升级的话,试试 -std=c11
   再不行的话,试试 -std=c99
 


2019-06-05 08:56
greenpop
Rank: 1
等 级:新手上路
帖 子:82
专家分:3
注 册:2011-12-22
收藏
得分:0 
图片附件: 游客没有浏览图片的权限,请 登录注册
2019-06-05 13:24
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9007
专家分:53942
注 册:2011-1-18
收藏
得分:0 
回复 7楼 greenpop
为什么不肯照着我在6楼说的那样,编译参数加个 -std=c11
2019-06-05 14:12
greenpop
Rank: 1
等 级:新手上路
帖 子:82
专家分:3
注 册:2011-12-22
收藏
得分:0 
谢谢老师。可以了。
2019-06-05 17:00
快速回复:念整数
数据加载中...
 
   



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

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