PTA ”写出这个数“
读入一个正整数 n,计算其各位数字之和,用汉语拼音写出和的每一位数字。
输入格式:
每个测试输入包含 1 个测试用例,即给出自然数 n 的值。这里保证 n 小于 10的100次方。
输出格式:
在一行内输出 n 的各位数字之和的每一位,拼音数字间有 1 空格,但一行中最后一个拼音数字后没有空格。
输入样例:
1234567890987654321123456789
输出样例:
yi san wu
using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks; namespace ConsoleApp5
{
class Program
{
int Main(string[] args)
{
//定义一个较大的数组接受输入的数字
Char[] ch = new char[];
string str;
int sum = ;
//定义一个数组用来存放输入数字各位相加后的数字的各个位的数字
int[] sum0 = new int[];
int i = ;
//a后面用来记录 i的值
int a = ;
//接受输入的数字并转化为数组存入ch[]中
str = Console.ReadLine();
ch = str.ToCharArray();
//将对应的拼音存入string类型数组中
string[] str1 = new string[] {"yi", "er", "san", "si", "wu", "liu", "qi", "ba", "jiu", "shi"};
//输入字符串末尾自动会添加一个'\0',所以以此作为判断结束的标志
for (i = ; str[i] != '\0'; i++)
{ sum += str[i] - '';
//不加上这一步最后一次循坏后i+1然后进入判定str[i]索引越界
//所有在最后一部的时候提前break不让i再加1
if (i == str.Length - )
{
break;
}
}
//将i初始化
i = ;
//将输入数字各位加起来的数字再求其各个位的数字
//注意这是倒序存放在sum0[]数组中
while (sum != )
{
sum0[i] = sum % ;
sum = sum / ;
i++;
}
//最后一步操作i自增1,数组中从下标0开始,所有i要减去1
//比如一个sum是123,有3个位,i为3也就是3次循环但是数组0,1,2就够了
i--;
//记录i的值在下面从i开始输出,因为在sum数组中是倒序记录的
a = i;
for (int j = ; j <= a; j++, i--)
{
//str1数组下标从0开始所以(sum0[i]) - 1]
Console.Write(str1[(sum0[i]) - ]);
//最后一个数不带" "
if (j != a)
{
Console.Write(" ");
}
}
return ; }
}
}
PTA ”写出这个数“的更多相关文章
- PTA(Basic Level)-1002 写出这个数
一 1002 写出这个数 读入一个正整数 n,计算其各位数字之和,用汉语拼音写出和的每一位数字. 输入格式: 每个测试输入包含 1 个测试用例,即给出自然数 n 的值.这里保证 n 小于 1010 ...
- PAT乙级 1002. 写出这个数 (20)
1002. 写出这个数 (20) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHEN, Yue 读入一个自然数n,计算其各位数字 ...
- PAT-乙级-1002. 写出这个数 (20)
1002. 写出这个数 (20) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHEN, Yue 读入一个自然数n,计算其各位数字 ...
- [C++]PAT乙级1002.写出这个数(20/20)
/* 1002. 写出这个数 (20) 读入一个自然数n,计算其各位数字之和,用汉语拼音写出和的每一位数字. 输入格式:每个测试输入包含1个测试用例,即给出自然数n的值.这里保证n小于10^100. ...
- PAT 1002 写出这个数 (20)(代码)
1002 写出这个数 (20)(20 分) 读入一个自然数n,计算其各位数字之和,用汉语拼音写出和的每一位数字. 输入格式:每个测试输入包含1个测试用例,即给出自然数n的值.这里保证n小于10^100 ...
- 【PAT】1002. 写出这个数 (20)
1002. 写出这个数 (20) 读入一个自然数n,计算其各位数字之和,用汉语拼音写出和的每一位数字. 输入格式:每个测试输入包含1个测试用例,即给出自然数n的值.这里保证n小于10100. 输出格式 ...
- PAT1002 写出这个数 (C++实现)
PAT乙级考试题目 1002 写出这个数 (20 分) 题目要求: 读入一个正整数 n,计算其各位数字之和,用汉语拼音写出和的每一位数字. 输入格式: 每个测试输入包含 1 个测试用例,即给出自然数 ...
- 【算法笔记】B1002 写出这个数
1002 写出这个数 (20 分)读入一个正整数 n,计算其各位数字之和,用汉语拼音写出和的每一位数字. 输入格式:每个测试输入包含 1 个测试用例,即给出自然数 n 的值.这里保证 n 小于 101 ...
- PAT 乙级 1002.写出这个数 C++/Java
1002 写出这个数 (20 分) 题目来源 读入一个正整数 n,计算其各位数字之和,用汉语拼音写出和的每一位数字. 输入格式: 每个测试输入包含 1 个测试用例,即给出自然数 n 的值.这里保证 n ...
随机推荐
- Unreal Engine* 4.19 的 CPU 功能检测
随着现代 CPU 内核数量的增加,可以拥有更多的游戏功能.但是,相比配备高端系统的玩家,内核数量较少的玩家可能会处于劣势.为了缩小这种差距,可以使用 C++ 和蓝图划分特性.这样可以实现最大的 CPU ...
- shell-变量,字符串,数组,注释,参数传递
Linux的Shell有很多种,常见的有Bourne Shell Bourne Again Shell C Shell K Shell Shell for Root 等,其中Bourne Again ...
- JavaScript校验身份证,包含省份、长度、出生年月日、校验位的检测、性别、年龄
一.代码如下 let vcity = {11: '北京', 12: '天津', 13: '河北', 14: '山西', 15: '内蒙古', 21: '辽宁', 22: '吉林', 23: '黑龙江 ...
- BOF和EOF的详细解释 ADO的三个核心对象
使用ADO连接数据库进行查一个列表询的时候,数据库将查询结果返回查询端,在查询端的内存里面就会有一个列表,这个列表存放的就是查询的结果.这个内存中的列表就是数据集.在你的程序里面rs就是标识的这个数据 ...
- SOSdp
layout: post title: SOSdp author: "luowentaoaa" catalog: true tags: mathjax: true - codefo ...
- win7安装mongodb3.6
1. 下载 https://www.mongodb.com/download-center/enterprise 选择合适平台点击下载 2. 安装mongodb 在win7系统安装mongodb需要v ...
- 思科设备ACL与NAT技术
ACL 访问控制列表(Access Control Lists),是应用在路由器(或三层交换机)接口上的指令列表,用来告诉路由器哪些数据可以接收,哪些数据是需要被拒绝的,ACL的定义是基于协议的,它适 ...
- merge into使用方法
此外,You cannot update a column that is referenced in the ON condition clause.,update的字段不可以是on里面的条件字段, ...
- js中数组的定义方法及注意事项(转)
1.数组的创建 var name= new Array(); //创建一个数组 name[0]="zhangsan"; //给数组赋值 name[1]="lisi&q ...
- JS基础_if练习一
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title&g ...