PAT1002写出这个数
来源:互联网 发布:凌波多媒体教室软件 编辑:程序博客网 时间:2024/06/06 15:03
- 写出这个数 (20)
读入一个自然数n,计算其各位数字之和,用汉语拼音写出和的每一位数字。
输入格式:每个测试输入包含1个测试用例,即给出自然数n的值。这里保证n小于10100。
输出格式:在一行内输出n的各位数字之和的每一位,拼音数字间有1 空格,但一行中最后一个拼音数字后没有空格。
输入样例:
1234567890987654321123456789
输出样例:
yi san wu
#include "iostream"#include "string"using namespace std;int main(){ string str[10]{"ling","yi","er","san","si","wu","liu","qi","ba","jiu"}; string s; cin >> s; int len = s.length(); int *a = new int [len]; int sum = 0; for (int i = 0;i < len;i++) { a[i] = s[i] - '0'; sum = sum + a[i]; } int *b = new int [len]; int j = 0; if (sum == 0) { cout << str[0]; } else { while (sum != 0) { b[j++] = sum % 10; sum = sum / 10; } for (int i = j - 1;i >= 1;i--) { cout << str[b[i]] << ' '; } cout << str[b[0]] << endl; } delete [] a; delete [] b; return 0;}
C代码:
#include<stdio.h>#include<string.h>char data[100]={0};int temp[3]={0};char data2[10][5]={"ling","yi","er","san","si","wu","liu","qi","ba","jiu"};int main(int argc, char *argv[]){ int len=0,sum=0,i=0,j=0; for(i=0;i<100 && (data[i]=getchar())!='\n';i++) { if(data[i]>47 && data[i]<58) sum+=data[i]-48; } temp[0]=sum/100; temp[1]=(sum-temp[0]*100)/10; temp[2]=sum-temp[0]*100-temp[1]*10; for(i=0,j=0;i<3;i++) { if(temp[i]==0 && j==0 && i!=2) continue; else { j=1; printf("%s",data2[temp[i]]); } if(i!=2) printf(" "); else printf("\n"); } return 0;}
0 0
- pat1002,写出这个数
- PAT1002 写出这个数
- PAT1002. 写出这个数
- PAT1002.写出这个数
- pat1002:写出这个数
- PAT1002写出这个数
- PAT1002. 写出这个数
- PAT1002. 写出这个数 (20)
- PAT1002 写出这个数 初学者
- 从零单排PAT1002. 写出这个数
- PAT1002. 写出这个数;java实现
- PAT1002 写出这个数 int《=》string
- pat1002.写出这个数(20)
- PAT1002 写出这个数 (20) JAVA
- PAT1002. 写出这个数 (20)解题思路
- 写出这个数
- PAT-写出这个数
- 1002 写出这个数
- ereg() 截断漏洞
- 顺序表的交并补 增删查
- opencv学习之Adaboost算法进行人脸识别
- 算典04_例题_01_UVA-1339
- 【skill】push code with github
- PAT1002写出这个数
- python +requests 实现爬取百度图片
- JavaScript BOM概述(open/close/location/navigator/history/定时器)
- 【九度OJ】题目1194:八进制 解题报告
- 图论中的后向边、前向边、横叉边、树边
- UVA 1631 记忆化搜索
- java实现——杭电2000ASCII码排序
- PAT算法笔记(十四)————科学计数法
- Django搭建简易博客开发笔记