当前位置:网站首页>C语言初级—从键盘接收一个整形并逆序输出
C语言初级—从键盘接收一个整形并逆序输出
2022-08-02 14:03:00 【iccoke】
从键盘接收一个整形并逆序输出
基本思想:从键盘接收一个整形并且逆序输出,大体思路是从键盘输入一个整形,然后获取到这个整形的每一位,最后再将每一位逆序输出
在获取键盘输入的数的每一位之前,首先应该获取键盘输入数的位数
https://blog.csdn.net/iccoke/article/details/125818553?spm=1001.2014.3001.5501
从这可以获取到键盘输入数的位数
具体代码如下
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<math.h>
int main(){
int num;
scanf("%d", &num);
int count = 0;
while (num != 0);
{
num /= 10;
count++;
}得到的count即为键盘输入整形的位数
逆序输出的代码如下
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<math.h>
int main(){
int num;
scanf("%d", &num);
int result = 0;
int count = 0;
int src = num;
while (num != 0);
{
num /= 10;
count++;
}
num = src;
while (count > 0)
{
result += num % 10 * (int)pow(10, count -1);
count--;
num /= 10;
}
printf("%d\n", result);
return 0;
}
我们关注这个代码中的关键几处
int src = num;
num = src;
这两处代码的作用是因为在获取位数和逆序输出的数为同一个数,如果在循环之后直接使用,有可能会出现数据错错误
因此这段代码的作用是记录从键盘接收的整形数并保存,并在逆序输出时使用,防止发生因循环后数据产生错误的情况。
result += num % 10 * (int)pow(10, count -1);
因为pow计算之后默认为double值,而result为int值,无法将一个double值赋给一个int值,这样会发生数据的泄露,因此用(int)对pow计算结果进行强制转换。
同时使用pow等数学函数时,应在头文件加入#include<math.h>。
边栏推荐
猜你喜欢
随机推荐
Flask框架深入一
瑞吉外卖笔记——第10讲Swagger
redis分布式锁和看门狗的实现
Building and getting started with the Flask framework
Haystack的介绍和使用
Error Correction Design Principle of Hamming Check Code
xshell连接虚拟机步骤_建立主机与vm虚拟机的网络连接
第五单元 保持状态
verilog学习|《Verilog数字系统设计教程》夏宇闻 第三版思考题答案(第十章)
第七单元 ORM表关系及操作
Flask framework
网页设计(新手入门)[通俗易懂]
ftp常用命令详解_iftop命令详解
drf视图组件
Programming Specifications - LiteOS
[ROS] (01) Create ROS workspace
云GPU(恒源云)训练的具体操作流程
MarkDown syntax summary
第十四单元 视图集及路由
[ROS] (04) Detailed explanation of package.xml






![[ROS] (01) Create ROS workspace](/img/2a/11e5023ef6d052d98b4090d2eea017.png)

