PAT_Basic --- 1002
2016-03-05 13:04
211 查看
PAT_Basic — 1002
**
读入一个自然数n,计算其各位数字之和,用汉语拼音写出和的每一位数字。
输入格式:每个测试输入包含1个测试用例,即给出自然数n的值。这里保证n小于10100。
输出格式:在一行内输出n的各位数字之和的每一位,拼音数字间有1 空格,但一行中最后一
4000
个拼音数字后没有空格。
输入样例:
1234567890987654321123456789
输出样例:
yi san wu
**
1002. 写出这个数 (20)
**读入一个自然数n,计算其各位数字之和,用汉语拼音写出和的每一位数字。
输入格式:每个测试输入包含1个测试用例,即给出自然数n的值。这里保证n小于10100。
输出格式:在一行内输出n的各位数字之和的每一位,拼音数字间有1 空格,但一行中最后一
4000
个拼音数字后没有空格。
输入样例:
1234567890987654321123456789
输出样例:
yi san wu
#include <iostream> #include <string> using namespace std; void main(){ char num[101] = {}; char **name; name = (char**)malloc(sizeof(char*)* 10); name[0] = (char*)malloc(sizeof(char)* 10 * 5); for (int i = 0; i < 10; i++){ name[i] = name[i - 1] + 5; } name[0] = "ling"; name[1] = "yi"; name[2] = "er"; name[3] = "san"; name[4] = "si"; name[5] = "wu"; name[6] = "liu"; name[7] = "qi"; name[8] = "ba"; name[9] = "jiu"; cin >> num; //char zero = '0'; //int a = *num[1] - zero; //cout << a; int count = 0; for (int i = 0; i < 101; i++){ if (num[i] == '\0') break; count += (num[i]) - '0'; } cout << count << endl; char num_str[4] = {}; sprintf(num_str, "%d", count); for (int i = 0; i < 4; i++){ if (num_str[i] == '\0') break; int tmp = num_str[i] - '0'; cout << name[tmp] << " "; } cout << endl; system("pause"); }
相关文章推荐
- switch...case
- private、 protected、 public、 default的区别
- android开发之路05
- IOS基础之 (十二) Block
- 谕神的密码(思维)
- opencv学习二
- Android为RecyclerView添加头部底部的简单方法
- JMS进阶-Spring整合Active MQ
- java集合总结
- day6 模块time datetime random os sys json pikle
- 对象(YiChanTest)
- 拉格朗日乘数法
- JavaScript学习笔记——语句
- C++项目文件中的后缀名为SDF的文件是什么?有什么用?
- cin和scanf的效率差异
- day09—oracle视图、序列、索引、约束
- JS面向对象组件(一) ---包装对象与原型链
- New Beginning --- PAT_Basic 1001
- 对象(YiChanDemo)
- 分享Android及IOS开源实例代码网址