L1-007 念数字 (10 分)

输入一个整数,输出每个数字对应的拼音。当整数为负数时,先输出fu字。十个数字对应的拼音如下:

0: ling
1: yi
2: er
3: san
4: si
5: wu
6: liu
7: qi
8: ba
9: jiu

输入格式:

输入在一行中给出一个整数,如:1234

提示:整数包括负数、零和正数。

输出格式:

在一行中输出这个整数对应的拼音,每个数字的拼音之间用空格分开,行末没有最后的空格。如 yi er san si

输入样例:

-600

输出样例:

fu liu ling ling
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;struct sode{
ll bh;
string py;  }sodecuan[1001];int main(void)
{sodecuan[0].py="ling";
sodecuan[1].py="yi";
sodecuan[2].py="er";
sodecuan[3].py="san";
sodecuan[4].py="si";
sodecuan[5].py="wu";
sodecuan[6].py="liu";
sodecuan[7].py="qi";
sodecuan[8].py="ba";
sodecuan[9].py="jiu";sodecuan[0].bh='0';
sodecuan[1].bh='1';
sodecuan[2].bh='2';
sodecuan[3].bh='3';
sodecuan[4].bh='4';
sodecuan[5].bh='5';
sodecuan[6].bh='6';
sodecuan[7].bh='7';
sodecuan[8].bh='8';
sodecuan[9].bh='9';string N;
cin>>N;if(N[0]=='-'){
cout<<"fu";
for(int i=1;N[i]!='\0';i++){for(int j=0;j<=9;j++){if(N[i]==sodecuan[j].bh)
cout<<' '<<sodecuan[j].py;
}   }}else{
cout<<sodecuan[N[0]-'0'].py;
for(int i=1;N[i]!='\0';i++){  for(int j=0;j<=9;j++){
if(N[i]==sodecuan[j].bh)
cout<<' '<<sodecuan[j].py;    }
}
}   system("pause");
return 0;}

结构体的思路很简单但是分类讨论的时候烦一些,嫌麻烦可以用字符数组

#include <iostream>
using namespace std;int main()
{string s[10]={"ling","yi","er","san","si","wu","liu","qi","ba","jiu"};string num;cin>>num;/*负数时*/if(num[0]=='-'){cout<<"fu";for(int i=1;i<num.length();i++){cout<<' '<<s[num[i]-'0'];}}/*非负数时*/else{cout<<s[num[0]-'0'];for(int i=1;i<num.length();i++){cout<<' '<<s[num[i]-'0'];}}return 0;
}

小细节是输出的时候不要最后的空格,那么需要我们改一下惯性思维。把先输出空格再输出对应的拼音就行

结构体解决念数字问题相关推荐

  1. ACMNO.43 C语言-成绩排序 利用结构体解决,是一个进步啦!

    题目描述 现有有N个学生的数据记录,每个记录包括学号.姓名.三科成绩. 编写一个函数input,用来输入一个学生的数据记录. 编写一个函数print,打印一个学生的数据记录. 在主函数调用这两个函数, ...

  2. L1-047 装睡 (结构体解决)

    L1-047 装睡 (10 分) 你永远叫不醒一个装睡的人 -- 但是通过分析一个人的呼吸频率和脉搏,你可以发现谁在装睡!医生告诉我们,正常人睡眠时的呼吸频率是每分钟15-20次,脉搏是每分钟50-7 ...

  3. 利用C语言结构体解决“各个国家体育竞赛获奖排名”问题

    一.题目描述:      输入一个正整数N代表国家个数,紧接着输入国家名称,该国家获得金牌数目,获得银牌数目,获得铜牌数目.然后根据输入输出国家获奖排名,排名规则是首先按金牌排名,如果金牌相同则比较银 ...

  4. 用c语言输出11位电话号码,用C语言结构体解决 “从键盘输入五个用户的数据,包括姓名和电话号码,要求按姓名排序后,输出用户数据...

    满意答案 //希望我的回答对你的学习有帮助 #include #include struct Student { char Name[10];//学生的姓名,使用字符数组存储,长度为 10 char  ...

  5. L1-056 猜数字 (结构体解决)

    L1-056 猜数字 (20 分) 一群人坐在一起,每人猜一个 100 以内的数,谁的数字最接近大家平均数的一半就赢.本题就要求你找出其中的赢家. 输入格式: 输入在第一行给出一个正整数N(≤104) ...

  6. PTA7-4一帮一 结构体解决

    "一帮一学习小组"是中小学中常见的学习组织方式,老师把学习成绩靠前的学生跟学习成绩靠后的学生排在一组.本题就请你编写程序帮助老师自动完成这个分配工作,即在得到全班学生的排名后,在当 ...

  7. Qt中解决信号和槽不能使用自定义结构体的问题

    在Qt中信号和槽使用自定义的结构时,运行的时候发现报错不能识别结构体 解决办法: 一定要将自定义结构体定义为typedef struct 使用Q_DECLARE_METATYPE(结构体名),将结构体 ...

  8. socket编程--sockaddr_in结构体操作

    sockaddr结构体 sockaddr的缺陷: struct sockaddr是一个通用地址结构,这是为了统一地址结构的表示方法,统一接口函数,使不同的地址结构可以被bind(),connect() ...

  9. c语言结构体讲解,C语言基础之结构体讲解

    结构体 结构体是一种数据结构. int .float等是基本数据结构. 数组也是一种数据结构,但是数组存放的数据类型比较单一,结构体解决了数组里不能存放多种类型数据的这种缺陷. 1.结构体的声名 声名 ...

最新文章

  1. python自学视频-python自学视频看这个就对了
  2. 【django】 F 和 Q 对象
  3. [CareerCup] 14.4 Templates Java模板
  4. AChartEngine绘制图形
  5. 拥抱开源,好莱坞有了自己的开源基金会:学院软件基金会
  6. SAP云平台上的Low Code Development(低代码开发)解决方案
  7. 可选版本 安装软件_【Linux软件】在Deepin系统下安装LibreOffice 6.1.4版本的方法
  8. 交易系统如何确保账簿100%准确
  9. nginx(三)反向代理和负载均衡
  10. 集设作品灵感|App夜间模式如何设计?
  11. 【电脑帮助】解决Wind10系统没有本地用户和组的问题
  12. JVM学习总结四——内存分配策略
  13. GSCOOLINK GSV2006替CH6002 HDMI2.0接口芯片
  14. msc用户无法登陆问题记录
  15. ProE 5.0免安装版软件安装教程
  16. php laravel mix,Laravel前端工程化之mix
  17. 新浪UC 单文件精简版
  18. 5421. 【NOIP2017提高A组集训10.25】嘟嘟噜—mayuri
  19. vue.js django_如何使用Django和Vue.js对Web应用程序进行原型制作
  20. windows环境下用python PyFtdi控制ftdi芯片生成方波信号

热门文章

  1. Styling with the DataGridColumnStyle
  2. [导入]Java线程的深入探讨
  3. svn的代码提交到git服务器_svn服务器代码仓库,数据迁移到git仓库
  4. python xpath用法_Python--xpath的使用
  5. linux wifi-tools,Linux下WiFi工具wireless_tools交叉编译,及其支持生成iwconfig使用的内核配置...
  6. 北师大版图形的旋转二教案_北师大2011课标版(闫金铎主编)初中物理八年级下册三、重力公开课优质课课件教案视频...
  7. linux c 监控文件内容改变,如何让程序监视C ++中的文件修改?
  8. 中国矿业大学计算机考研复试科目,中国矿业大学复试科目
  9. git init 会不会清空_Git命令:git pull amp; git fetch
  10. python基础--urllib