zoukankan      html  css  js  c++  java
  • [PAT乙级] Practise 1002 写出这个数

    PAT (Basic Level) Practice (中文)1002

    1002 写出这个数

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

    输入格式:

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

    输出格式:

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

    输入样例:

    1234567890987654321123456789
    

    输出样例:

    yi san wu
    

    思路:

    先创建拼音数组,与下标对应。然后将输入流字符串各位求和并转换成字符串,再根据字符串每位的值,在拼音下标中寻找拼音并输出。

    代码:

    #include <iostream>
    #include <string>
    using namespace std;
    int main() {
    	string input;
    	int sum = 0;
    	string tab[10] = { "ling","yi","er","san" ,"si" ,"wu" ,"liu" ,"qi" ,"ba" ,"jiu" };
    	cin >> input;
    	for (int i = 0; i < input.length(); i++) {
    		sum += (input[i] - '0');
    	}
    	string number = to_string(sum);
    	for (int i = 0; i < number.length(); i++) {
    		if (i != 0) cout << " ";
    		cout << tab[number[i] - '0'];
    	}
    	return 0;
    }
    
  • 相关阅读:
    IO流上机作业
    数据结构堆排序
    数据结构实训报告
    字符串的基本操作
    java窗口的简单切换
    判断一个串B位于串A的位置
    c语言实现数组转置,加减,乘法运算
    java异常处理
    弹奏乐器
    课程总结
  • 原文地址:https://www.cnblogs.com/eisuto/p/12422647.html
Copyright © 2011-2022 走看看