将数值位转换为字符位后输出
问题描述:
输入一个1-99999之间的任意整数,要求转换为字符后输出;
算法分析:
先分别取万,千,百,十,个位,再转换成字符存储,这样就完成了一半。后一半是要分析些所在位是0的情况,分别是万,千,百,十上是零的情况,比如:万,千,百,十都是0,只输出个位,其它位类推。
代码如下:
#include <stdio.h> int main(void){long int n; printf("Enter a number in 1 - 99999: "); scanf("%ld", &n); char ch0, ch1, ch2, ch3, ch4; // 分别代表万,千,百,十,个位; ch0 = n / 10000; ch0 += '0'; // 取万位并转换为字符 ch1 = (n % 10000) / 1000; ch1 += '0'; ch2 = (n % 1000) / 100; ch2 += '0'; ch3 = (n % 100) / 10; ch3 += '0'; ch4 = n % 10; ch4 += '0'; char c[5]; c[0] = ch0; c[1] = ch1; c[2] = ch2; c[3] = ch3; c[4] = ch4; if(ch0 == '0') {if(ch1 == '0') {if(ch2 == '0') {if(ch3 == '0') { printf("%c", ch4); // 除个位外,其他位都是0 }else printf("%c%c", ch3, ch4); // 万位,千位,百位都是0 }else printf("%c%c%c", ch2, ch3, ch4); // 万位,千位都是0 }else printf("%c%c%c%c", ch1, ch2, ch3, ch4); // 万位是0 }else printf("%c%c%c%c%c", ch0, ch1, ch2, ch3, ch4); // 万位不是0 return 0;}
输出结果:
Enter a number in 1 - 99999: 3601
3601
转载于:https://www.cnblogs.com/jeff_nie/archive/2011/10/19/2217343.html
将数值位转换为字符位后输出相关推荐
- 编写程序,输入一个3位整数,反转后输出。
撰写人--软工二班--陈喜平 题目描述 编写程序,输入一个3位整数,反转后输出. 输入 一个3位整数. 输出 反转后3位整数.注意:输出后换行. 样例输入 128 样例输出 821 提示 注意: 21 ...
- 输入一个以回车结束的字符串(少于80个字符),滤去所有的非十六进制字符后,组成一个新字符串(十六进制形式),输出该字符串并将其转换为十进制数后输出。
[问题描述] 输入一个以回车结束的字符串(少于80个字符),滤去所有的非十六进制字符后,组成一个新字符串(十六进制形式),输出该字符串并将其转换为十进制数后输出. [输入形式]一个字符串,小于80个字 ...
- 【C语言】编写程序,输入一个以回车符结束的字符串(少于80个字符),过滤去所有的非十六进制字符后,组成一个新字符串(十六进制形式),然后将其转换为十进制数后输出。
题目: 编写程序,输入一个以回车符结束的字符串(少于80个字符),过滤去所有的非十六进制字符后,组成一个新字符串(十六进制形式),然后将其转换为十进制数后输出. **输入提示信息:"请输入十 ...
- 修改开机LOGO图片教程及注意事项/通过C++实现bmp图位深度从32位转换为8位
修改开机LOGO图片教程及注意事项/通过C++实现bmp图位深度从32位转换为8位 文章目录 修改开机LOGO图片教程及注意事项/通过C++实现bmp图位深度从32位转换为8位 修改开机LOGO图片教 ...
- win10 计算机32位转64位,win1064位能改成32位吗_怎样把win10 64位转换为32位系统
通常电脑如果是内存4G以上的话,都会安装64位系统,如果内存太小的话安装64位系统可能会出现卡顿的情况,有win1064位系统用户发现电脑配置低,运行又很卡,就想要改成32位系,不知道win1064位 ...
- 64位数值强制转换为32位
在程序中经常看到将int64的类型强制转换为int32类型,转换前后发生什么样的变化呢? int64 a=xxxxx; int32 b=0; b=a; b=a的过程几完成了强制转换. 其实强制转换的过 ...
- python将png图像RGB模式转换为L模式(24位转换为8位)
我的目的是想要把P模式的图像转换为L模式,那么必须先转换为RGB模式,再转换为L模式. P模式为2位深度,RGB为24位深度,L为8位深度. 以下是转换的代码: im = Image.open(tes ...
- 【C语言】接收字符,大小写字符相互转换后输出,数字不输出
#include<stdio.h> #include<stdlib.h> void main() {int ch;while((ch=getchar()) != EOF)if( ...
- java字符后移_java把字符串参数往后移3位后输出
//我想把字符串参数往后移3位后输出packagepassword;importjava.io.IOException;classjiami{Strings1;Stringjiami(Strings) ...
最新文章
- DTU详解解读 概念到功能应用
- 台式机安装系统时区分BIOS与UEFI
- Unable to Open User Login File
- bzoj1967 [AHOI2005]穿越磁场 离散最短路
- Mysql之INFORMATION_SCHEMA解析1
- 计算机职业规划论文参考文献,职业生涯规划的参考文献
- 大电流dcdc降压芯片20a_基于MC34063芯片DC-DC(20-5)降压型变换电路
- 中国大学慕课mooc答题/自动播放脚本(domooc)使用教程
- 利用AcrGIS计算核密度中某一等级的面积
- 《大话物联网(第2版)》赠书活动名单公告
- Linux Kernel suspend/resume 过程
- iphone版 天行skyline_App Store 上的“Skyline University”
- mysql 查询最多的_MySQL中用通用查询日志找出查询次数最多的语句的教程
- 【Unity3D开发小游戏】《数字华容道》Unity开发教程
- 运算放大器(运放)运算方面的整理
- Android 获取所有手机联系人名单
- CSS浮动、定位及显示隐藏元素
- 期权的内涵价值与时间价值
- 程序员必读书单 (仅供参考)
- 【观察】布局C端业务,鼎桥的“下一跳”