一、题目要求

输入一个整数,输出每个数字对应的拼音。当整数为负数时,先输出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

二、代码实现

我还没有学多种数据类型,最熟悉的就是int,所以我设计了一下算法,用int这一种数据类型实现了这个需求。

#include <stdio.h>
#include <stdlib.h>/* run this program using the console pauser or add your own getch, system("pause") or input loop */int main(int argc, char *argv[]) {int x;//要读的数字 int digit;//数字的每一位上的数 int count=0;//计数器,用于数给定的字的位数 int ret=0;//原数字的逆序结果,比如原数字是123,ret就是321 int i;//这是for循环里要用到的一个变量,先定义出来scanf("%d",&x); //用户输入一个数字//如果用户输入的是一个负数,则先打印fu和它后面的空格//并将该数变为一个正整数 if (x<0){printf("fu ");x=-x;}//用对10取余的方法将数字逆转,并记录下它是一个几位数 while(x>0){digit=x%10;x/=10;ret=ret*10+digit;count++;}//因为该数字至少有一位,而且要考虑最后一个数字后面没有空格的问题//所以我们先把该数字的个位“脱”下来,并打印 digit=ret%10;ret/=10;//switch语句能够让程序根据数字来找到合适的拼音并打印 switch(digit){case 0:printf("ling");break;case 1:printf("yi");break;case 2:printf("er");break;case 3:printf("san");break;case 4:printf("si");break;case 5:printf("wu");break;case 6:printf("liu");break;case 7:printf("qi");break;case 8:printf("ba");break;case 9:printf("jiu");break;  }//因为我们刚才已经把个位数打印了,所以for循环的起点是1//循环原数字位数-1次 for(i=1;i<count;i++){digit=ret%10;ret/=10;//这是每两个数字之间的空格 printf(" ");switch(digit){case 0:printf("ling");break;case 1:printf("yi");break;case 2:printf("er");break;case 3:printf("san");break;case 4:printf("si");break;case 5:printf("wu");break;case 6:printf("liu");break;case 7:printf("qi");break;case 8:printf("ba");break;case 9:printf("jiu");break;   }}return 0;
}

如果这篇博文帮到了你,就请给我点个吧(#^.^#)

有疑问也欢迎留言~博主可nice啦,在线秒回ヾ(◍°∇°◍)ノ゙

C语言只用int这一种数据类型实现用拼音念数字相关推荐

  1. 1.6 Java数组也是一种数据类型

    Java 的数组要求所有的数组元素具有相同的数据类型.因此,在一个数组中,数组元素的类型是唯一的,即一个数组里只能存储一种数据类型的数据,而不能存储多种数据类型的数据. 因为 Java 语言是面向对象 ...

  2. java中数组的返回值是什么类型_Java数组也是一种数据类型

    Java 的数组要求所有的数组元素具有相同的数据类型.因此,在一个数组中,数组元素的类型是唯一的,即一个数组里只能存储一种数据类型的数据,而不能存储多种数据类型的数据.因为 Java 语言是面向对象的 ...

  3. 2.3 Go语言从入门到精通:数据类型

    文章目录 1.基本数据类型 1.1 布尔型 1.2 数值型 1.2.1 整型 1.2.2 浮点型 1.2.3 复数 1.3 字符串型 2.派生数据类型 2.1 指针 2.2 数组 2.3 结构体 2. ...

  4. access数据类型整型怎么设置_access 2010工提供了几种数据类型?

    在Access中包括12种数据类型:文本备注:数字:日期/时间:货币:自动编号:是/否:OLE 对象:超链接:查阅向导:计算字段:附件 下面做具体介绍 1.文本 文本类型字段用于保存字符串的数据,例如 ...

  5. GUID和INT两种数据类型做主键的比较

    我们公司的数据库全部是使用GUID做主键的,很多人习惯使用int做主键.所以呢,这里总结一下,将两种数据类型做主键进行一个比较. 使用INT做主键的优点: 1.需要很小的数据存储空间,仅仅需要4 by ...

  6. redis五种数据类型对应的底层数据结构

    redis五种数据类型对应的底层数据结构 redis的五种数据类型 redis核心对象redisObject type数据类型 encoding编码类型 ptr指针 redis五种数据类型对应的底层数 ...

  7. 2 万字 + 20张图| 细说 Redis 九种数据类型和应用场景

    作者:小林coding 计算机八股文网(操作系统.计算机网络.计算机组成.MySQL.Redis):https://xiaolincoding.com 大家好,我是小林. 我们都知道 Redis 提供 ...

  8. c语言求两者之间最小数,C语言课件第2章基本数据类型.ppt

    C语言课件第2章基本数据类型 第 2 章 基本数据类型 1.标识符 例2.1 常量和变量的使用. #include "stdio.h" #define WIDTH 80 //定义符 ...

  9. 【Python面试】 说说Python中有几种数据类型?​

    往期面试题: 谈谈对 Python 和其他语言的区别? 说说 Python 解释器种类以及特点? 说说4种常用编码的区别? 说说Python面向对象三大特性? 废话不多说,开始今天的题目: 问:说说 ...

最新文章

  1. 动态添加跨行表格_学会这2招,轻松搞定数据透视表动态更新,效率猛增一倍...
  2. bigquery使用教程_如何使用Python和Google BigQuery构建机器人以自动执行您的笨拙任务...
  3. Cocos Creator 为Button添加事件的两种方法
  4. 六十、深入理解Vue组件,使用组件的三个细节点
  5. java 中都有什么结构_java中都有哪些数据结构?
  6. python数组排序奇数在前偶数在后_数组排列(奇数在前,偶数在后)
  7. SQL Server插入中文数据后出现乱码
  8. MySQL数据库常用的操作命令(一)
  9. 基于JAVA+SpringMVC+Mybatis+MYSQL的超市库房管理系统
  10. openstack nova ×××
  11. vue+bootstrap项目
  12. 主播入门到精通培训实操手册全套资料(共300份)
  13. 图书销售系统需求分析获取
  14. 错误:PriviledgedActionException as:LCH (auth:SIMPLE) cause:0: No such file or directory
  15. 【python学习笔记】爬虫总遇到的:'latin-1' codec can't encode character...
  16. 如何隐藏Android模拟器的虚拟按键
  17. 机器学习:李航-统计学习方法-代码实现
  18. 大数据学习途径_社会支付计划和数据保护的途径和陷阱
  19. 数仓分层的意义及通用设计
  20. python爬虫获取豆瓣TOP25电影名称和评分

热门文章

  1. 2018年最值得关注的10家区块链公司新秀
  2. html战棋游戏战棋游戏,六款不可错过的战棋游戏 将领才华始于纸上谈兵
  3. 买房应该全款还是贷款
  4. 互联网巨头追捧的“中台”战略,有多重要?
  5. Minecraft 1.12.2模组开发(十) 食物制作
  6. Maven的安装、配置及使用入门
  7. 路由器角色 ABR ASBR
  8. 微信小程序海报画布生成圆形头像
  9. 一个计算机程序员高手的成长 [转]
  10. 中蜂几月份自然分蜂_中蜂一年自然分蜂几次?_库百科养蜂养殖