美文网首页
1002. 写出这个数 (20)

1002. 写出这个数 (20)

作者: 攻城易大师 | 来源:发表于2017-03-16 22:00 被阅读0次

1002. 写出这个数 (20)

时间限制

400 ms

内存限制

65536 kB

代码长度限制

8000 B

判题程序

Standard

作者

CHEN, Yue

读入一个自然数n,计算其各位数字之和,用汉语拼音写出和的每一位数字。

输入格式:每个测试输入包含1个测试用例,即给出自然数n的值。这里保证n小于10100。

输出格式:在一行内输出n的各位数字之和的每一位,拼音数字间有1 空格,但一行中最后一个拼音数字后没有空格。

输入样例:

1234567890987654321123456789

输出样例:

yi san wu

代码:

#include#includeint main()

{

char bignumber[100];

int i;

int j;

int k;

int m;

int sum=0;

char str[4];

while(scanf("%s",bignumber)!=EOF){

sum =0;

for(i=0;i<100;i++){

if(charToDigit(bignumber[i])== 10){

break;

}

sum += charToDigit(bignumber[i]);

}

sprintf(str,"%d",sum);

for(i=0;i<4;i++){

if(i!=0){

//printf(" ");

}

printfPinyin(str[i],i);

}

}

return 0;

}

//根据传入的数字输出对应的拼音

int printfPinyin(int i,int j){

char numberPinyin[10][5]={

"ling",

"yi",

"er",

"san",

"si",

"wu",

"liu",

"qi",

"ba",

"jiu"

};

int x = charToDigit(i);

if(x!=10){

if(j == 0){

printf("%s",numberPinyin[x]);

}else{

printf(" ");

printf("%s",numberPinyin[x]);

}

}

return 0;

}

//解析字符的函数,传入一个字符,返回一个字符对应的整型数字

int charToDigit(int c){

switch(c){

case '0':

return 0;

case '1':

return 1;

case '2':

return 2;

case '3':

return 3;

case '4':

return 4;

case '5':

return 5;

case '6':

return 6;

case '7':

return 7;

case '8':

return 8;

case '9':

return 9;

default:

return 10;

}

}

运行结果:

相关文章

  • 1002. 写出这个数 (20)

    1002. 写出这个数 (20) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B ...

  • 1002. 写出这个数 (20)

    1002. 写出这个数 (20) 读入一个自然数n,计算其各位数字之和,用汉语拼音写出和的每一位数字。 输入格式:...

  • 1002. 写出这个数 (20)

    分析: 需要注意到 n 的范围在0~10的一百次方,我们通常用来表示整数的 int 与 long 都不能满足如此大...

  • PAT 1002. 写出这个数 (20)

    读入一个自然数n,计算其各位数字之和,用汉语拼音写出和的每一位数字。 输入格式:每个测试输入包含1个测试用例,即给...

  • 1002. 写出这个数

    读入一个自然数n,计算其各位数字之和,用汉语拼音写出和的每一位数字。 输入格式:每个测试输入包含1个测试用例,即给...

  • 1002. 写出这个数

    原题链接写出这个数: 读入一个自然数n,计算其各位数字之和,用汉语拼音写出和的每一位数字。 输入格式:每个测试输入...

  • 1~5题

    1001. 害死人不偿命的(3n+1)猜想 (15) 水题 ,没什么好讲的,应该一遍过 。 1002. 写出这个数...

  • PAT习题刷题中

    1001.3n+1猜想 2-05.求集合数据的均方差 1002.写出这个数 1004.成绩排名 1005.继续3n...

  • 写出这个数 (20)

    读入一个自然数n,计算其各位数字之和,用汉语拼音写出和的每一位数字。 输入描述:每个测试输入包含1个测试用例,即给...

  • 1002. 写出这个数(数字转换为字符串,sprintf)

    读入一个自然数n,计算其各位数字之和,用汉语拼音写出和的每一位数字。 输入格式: 每个测试输入包含1个测试用例,即...

网友评论

      本文标题:1002. 写出这个数 (20)

      本文链接:https://www.haomeiwen.com/subject/vjlsnttx.html