L1-007 念数字

2024-01-08 12:25:30

一、题目

二、解题思路

  1. 将0至9对应的拼音存入字符串数组中,因为数组下标0至9与拼音相对应,所以可通过下标获取拼音;
  2. 以字符串的形式将数据读入(若输入整型,还需要将整型拆分成一个个的数字或再转为字符串);
  3. 判断第一个字符是否是 '-' ,是则输出?"fu" ,否则输出第一个字符对应的拼音;
  4. 将字符串除第一个字符外的字符对应的拼音输出,输出前加一个空格。

三、代码

#include<iostream>
using namespace std;
int main()
{
	string pinyin[11]={"ling","yi","er","san","si","wu","liu","qi","ba","jiu"};
	string str;
	cin>>str;
	if(str[0]=='-')
	{
		cout<<"fu";
	}	
	else
	{
		cout<<pinyin[int(str[0])-'0'];
	}
	for(int i=1;i<str.size();i++)
	{
		cout<<" "<<pinyin[int(str[i])-'0'];
	}
	return 0;
}

四、总结

  1. 将字符?'0' 转为 整型 0 :int(str[i])-'0' 或者?int(str[i]-'0')。
  2. 末尾没有空格:第一个不输出空格,其余输出空格加内容。

文章来源:https://blog.csdn.net/weixin_63914593/article/details/135442669
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。