这是《C语言入门实战》系列的第11篇。
上一篇:C语言入门实战(10):取模问题


文章目录

  • 题目
  • 要求
  • 参考代码
  • 代码复盘

题目

对键盘输入的任意一组正整数(个数任意),求所有数的逆序数之和,这里的逆序数是指对该数从右向左顺序读得到的数,例如123的逆序数是321,1200的逆序数是21。输入非数字时结束程序。请编程解决该问题。

要求

输入输出格式示例1:

输入:170<回车>
x<回车>
输出:71

输入输出格式示例2:

输入:21<回车>
130<回车>
89<回车>
125<回车>
90<回车>
a<回车>
输出:671

参考代码

#include <stdio.h>
#include <stdlib.h>// 定义一个函数,计算输入整数n的逆序数
int reverseNum(int n) {int a = 0;while(n>0) {a = a*10 + n%10;n /= 10;//即n=n/10}return a;
}
int main(int argc, char *argv[]) {int result = 0;int n;char ch;int flag = 1;while(flag) {n = 0;ch = getchar();while(ch!='\n' && ch!=EOF) {if (ch>='0' && ch <='9') {n = n*10 + ch-'0';} else {//读取到非正整数的字符,设置退出标记flag = 0;break;}ch = getchar();} //对应输入的组内合法的正整数值,得到其逆序数,累加进答案中result += reverseNum(n);}printf("%d", result);return 0;
}

代码复盘

我们定义了一个函数(函数用于封装可复用的代码单元),int reverseNum(int n),根据输入的整型值n计算返回n的逆序数。

&&逻辑and符号,是“并且”的意思。

getchar()在标准库头文件stdio.h中声明,用于从标准输入(一般是键盘)读取一个字符。

EOFstdio.h中定义的常量(常量值为-1),表示读到了文件/标准输入末尾。因为正常来讲,从文件或标准输入读取一个字节,这个字节一定是>=0的字符,所以可以规定-1常量表达读取结束了。

C语言入门实战(11):输入一组正整数,求逆序数的和相关推荐

  1. python输入一个正整数n求下列算式的值_C语言编写程序:输入一个正整数x和一个正整数n,求下列算式的值。,C语言 编写一个程序,输入一个正整数,求出它是几位数。...

    导航:网站首页 > C语言编写程序:输入一个正整数x和一个正整数n,求下列算式的值.,C语言 编写一个程序,输入一个正整数,求出它是几位数. C语言编写程序:输入一个正整数x和一个正整数n,求下 ...

  2. c语言在一组数据中找最大值最小值,用c语言输入一组数据,输出最大最小值,求c语言程序讲解: 输入一组数据,求最大值,最小值,和,平均...

    问题标题 用c语言输入一组数据,输出最大最小值,求c语言程序讲解: 输入一组数据,求最大值,最小值,和,平均 2019-7-3来自ip:18.156.193.207的网友咨询 浏览量:318 手机版 ...

  3. C语言中输入一组正整数,以-1作为结束标记,统计输入正整数的个数,并计算其平均值。

    今天在做一道编程题时遇到这样一种输入方式:不知道输入个数为多少,苦思之下终于想出将scanf放入循环之内的方式. 雕虫小技不足挂齿. 请笑纳: 题目要求 输入一组正整数,以-1作为结束标记,统计输入正 ...

  4. java 从控制台输入一个正整数_编程输出该正整数各位数字之和_C语言 从键盘上输入一个正整数,计算并输出该数的各位数字之和...

    点击查看C语言 从键盘上输入一个正整数,计算并输出该数的各位数字之和具体信息 答:思路:定义变量a接受键盘输入和变量sum保存a的各位数字之和,依次对a进行除10操作,并把a除10的余数加到sum中, ...

  5. C语言入门实战(2):求平面上任意两点之间的距离

    这是<C语言入门实战>系列的第2篇. 上一篇:C语言入门实战(1):准备开发环境.快速上手main()函数 下一篇:C语言入门实战(3):秒数转换为时:分:秒 文章目录 题目 提示 参考代 ...

  6. [c++]输入一组数据,逆序输出

    [c++]输入一组数据,逆序输出 输入一组数据,然后逆序输出. 代码如下: #include<iostream> using namespace std; int a[100]; int ...

  7. C语言实现逆序数线性代数,线性代数之求逆序数

    线性代数之求逆序数 在线性代数中,经常要求序列的逆序数,即所有逆序之和.在一个排列中若较大的数字排在较小数字的左边,则成这两个数字构成一个逆序.求解过程用C语言描述如下: #define N 5 in ...

  8. c语言输入一批正整数 求其中的偶数和,编程,输入一批整数,先求出其中的偶数和及奇数和,然后输出偶数和与奇数和的差...

    设计一个程序,要求输入三个整数,能求出其中最大的数并输出 #includeintmain{inti;inta1,a2,a3;printf("输入三个数:\n");scanf(&qu ...

  9. c语言输入一批正整数 求其中的偶数和,编写程序,输入一批正整数(以零或负数为结束标志),求其中的偶数和。...

    2119: (难度:☆☆☆☆★) 求偶数和 时间限制: 1 Sec 内存限制: 128 MB 提交: 175 解决: 80 [提交][状态][讨论版] 题目描述 编写程序,输入一批正整数(以零或负数为 ...

  10. python输入一个三位整数、求逆序数_输入一个三位正整数,要求其输出对应的逆序数...

    针对" 输入一个三位正整数,要求其输出对应的逆序数 "的问题,下面由网络工程师-黎明为您解答: 1.第一步,我们第一要写开头: 2.#include 3.voidmain() 4. ...

最新文章

  1. Android应用中通过AIDL机制实现进程间的通讯实例
  2. 一文读懂 JAVA 异常处理
  3. nacos 怎么配置 里的配置ip_Nacos-服务注册地址为内网IP的解决办法
  4. NYOJ 5287 异 形 卵
  5. Linux基本命令 (一)
  6. 资深架构专家聊架构之道:规划、简化和演化
  7. 单调栈求全1(或全0)子矩阵的个数 洛谷P5300与或和 P3400仓鼠窝
  8. opengl 矩阵投影代码 shade_LookAt、Viewport、Perspective矩阵
  9. 普通的Shader-序列帧相关
  10. 【C/C++】为什么INT_MAX(整形最大值)减去INT_MIN(整形最小值)等于-1
  11. 卸载360天擎企业版需要密码
  12. 阿里云无影云桌面服务关联角色设置及删除方法
  13. 激活mathtype
  14. 一篇文章读懂NHTSA自动驾驶分级(转)
  15. 在aws云将本地虚拟机镜像上传
  16. Excel单元格首位数字为“0”不显示的问题
  17. 团队任务3每日立会(2018-10-23)
  18. Android 监听wifi总结
  19. 网络安全(2) -- 关于一次XSS攻击-图片(img标签)的onerror事件
  20. wifi+vcam项目丢帧机制调整

热门文章

  1. 动态规划-打气球的最大分数(python实现)
  2. Office 2010 安装程序包的语言不受系统支持
  3. chrome浏览器扩展打包成crx
  4. segno-纯Python语言的二维码和微二维码生成器
  5. 来曲唑十二烷基硫酸钠/苯丁酸氮芥/层状双金属氢氧化物纳米杂化物
  6. linux rpm 装 mac,linux之 rpm,yum
  7. 带你十分钟做出一个自己的手机APP
  8. 在vue项目中开发环境的跨域配置
  9. 你有多久没有看过星星
  10. moment解读常用操作及语句——subtract、add、calendar