当前位置: 首页 > news >正文

牛客网刷题 | BC94 反向输出一个四位数

目前主要分为三个专栏,后续还会添加:

        专栏如下:                 C语言刷题解析       C语言系列文章       我的成长经历

感谢阅读!

初来乍到,如有错误请指出,感谢!


 描述

将一个四位数,反向输出。

输入描述:

一行,输入一个整数n(1000 <= n <= 9999)。

输出描述:

针对每组输入,反向输出对应四位数。

示例1


解题思路 : 

存放这几个数字

然后取模的方式来实现

1234 % 10 = 4

(1234/10) % 10 = 3

(1234/100) % 10 = 2

1234/1000= 1


理解题目要求: 题目要求我们输入一个四位数,并将其每一位数字反向输出。这意味着如果输入是1234,输出应该是4321。

输入处理: 首先,我们需要从用户那里获取输入。在C语言中,我们可以使用scanf函数来实现这一点。我们需要确保输入是一个四位数,即1000到9999之间的整数。

分离每一位数字: 为了反向输出数字,我们需要先获取每一位数字。在C语言中,我们可以使用模运算符%来获取个位数,然后通过整除运算符/来去掉已经处理过的位数。

构建反向数字: 接下来,我们需要构建反向的数字。我们可以通过将每一位数字乘以它们在反向数字中的位置对应的10的幂次来实现这一点。例如,个位数乘以1000(因为它现在是千位),十位数乘以100,百位数乘以10。

输出结果: 一旦我们构建了反向数字,我们就可以将其输出。在C语言中,我们可以使用printf函数来输出结果。

考虑边界条件: 虽然题目已经限定了输入是一个四位数,但在实际编程中,我们可能需要考虑其他边界条件,比如输入的验证,确保用户输入的是一个有效的整数。


代码 1:

/*  解题思路 :  用数组存放这几个数字 然后取模的方式来实现1234 % 10 = 4(1234/10) % 10 = 3(1234/100) % 10 = 21234/1000= 1  
*/
//笨方法...请各位大佬见谅# include <stdio.h>
int main (){int n = 0;scanf("%d",&n);//用户输入if (n <= 9999 && n >= 1000) //数据范围{int a = n%10;//千位int b = (n/10)%10;//百位int c = (n/100)%10;//十位int d = n/1000;//个位printf("%d%d%d%d\n",a,b,c,d);//按照从后往前顺序打印}return 0;
}

 代码 2:

这代码.......我竟无言以对

天才!

#include<stdio.h>
int main()
{int a,b,c,d;scanf("%1d%1d%1d%1d",&a,&b,&c,&d);printf("%d%d%d%d\n",d,c,b,a);return 0;
}

代码 3 :

#include<stdio.h>int main(){
int a;
scanf("%d",&a);
int i,b;
for(i=1;i<=4;i++)
{b=a%10; a=a/10;printf("%d",b);
}
return 0;
}#include<stdio.h> // 包含标准输入输出库,用于进行输入输出操作int main() // 定义主函数
{int a; // 定义一个整型变量a,用于存储用户输入的四位数scanf("%d", &a); // 使用scanf函数从标准输入读取一个整数并存储到变量a中int i, b; // 定义两个整型变量i和b,其中i用于循环计数,b用于存储每轮循环中的个位数数字for(i = 1; i <= 4; i++) // 定义一个for循环,循环4次,因为我们需要输出四位数的每一位{b = a % 10; // 计算a的个位数,即将a与10取模,结果赋值给ba = a / 10; // 将a除以10,去掉个位数,为下一次循环做准备printf("%d", b); // 输出变量b,即当前的个位数}return 0; // 程序正常结束并返回0
}

代码 4:

#include<stdio.h> // 包含标准输入输出库,用于进行输入输出操作int main() // 主函数入口
{int a = 0; // 定义一个整型变量a并初始化为0,用于存储输入的四位数scanf("%d", &a); // 使用scanf函数从标准输入读取一个整数并存储到变量a中while (a) // 当变量a非0时,进入循环{printf("%d",a%10); // 使用printf函数输出a除以10的余数,即个位数a = a / 10; // 将a除以10并赋值给a自身,实现去掉个位的效果}return 0; // 程序正常结束并返回0
}

知识点 : 

头文件包含: #include<stdio.h>

这个预处理指令告诉编译器包含标准输入输出库,它是进行输入输出操作所必需的。

主函数定义: int main()

这是C语言程序的入口点,每个C程序都从main函数开始执行。

变量声明: int a; int i, b;

int是整型数据的声明,表示这些变量将存储整数。

a用来存储用户输入的四位数。

i用作for循环的计数器。

b用来存储每次循环中提取的数字。

输入函数: scanf("%d", &a);

scanf是一个标准库函数,用于从标准输入(通常是键盘)读取数据。

"%d"是一个格式字符串,指定要读取的数据类型是整数。

&a是变量a的地址,告诉scanf函数在哪里存储读取的数据。

for循环: for(i = 1; i <= 4; i++)

for循环是一种控制流语句,用于重复执行一段代码直到满足特定条件。

初始化表达式i = 1设置循环计数器的初始值。

循环条件i <= 4决定循环何时继续执行。

迭代表达式i++在每次循环结束时更新计数器的值。

取模运算: b = a % 10;

%是取模运算符,用于获取两个数相除的余数。

这里用来获取a的个位数。

整数除法: a = a / 10;

/是整数除法运算符,用于计算两个数相除的整数结果。

这里用来去掉a的个位数,为输出下一个位做准备。

输出函数: printf("%d", b);

printf是一个标准库函数,用于将数据输出到标准输出(通常是屏幕)。

"%d"是一个格式字符串,指定要输出的数据类型是整数。

b是要输出的变量。

程序结束: return 0;

return语句用于从main函数返回一个值。

返回值0通常表示程序正常结束。

  

相关文章:

牛客网刷题 | BC94 反向输出一个四位数

目前主要分为三个专栏&#xff0c;后续还会添加&#xff1a; 专栏如下&#xff1a; C语言刷题解析 C语言系列文章 我的成长经历 感谢阅读&#xff01; 初来乍到&#xff0c;如有错误请指出&#xff0c;感谢&#xff01; 描述 将一个四位数&…...

记一次MySQL执行修改语句超时问题

异常问题 原因分析 这个问题发生在开发环境&#xff0c;怀疑是提交事务时终止项目运行&#xff0c;没有提交该事务&#xff0c;造成死锁 调试该事务时时间太长&#xff0c;为什么说有这个原因呢&#xff0c;因为通过查找日志显示 The client was disconnected by the server …...

linux fork()函数调用原理

在Linux中,fork函数用于创建一个新的进程,该进程是调用进程的子进程。fork函数的实现涉及用户态和内核态之间的交互。下面我将详细说明fork函数在代码流程中的原理和用户态与内核态的交互过程。 用户态调用fork函数: 用户程序调用fork函数,该函数是libc库提供的一个封装函数…...

【电控笔记5.9】编码器脉冲计算速度MT法

总结 编码器的脉冲计算速度可以使用多种方法,其中一种常用的方法是“MT法” (Measuring Time Method),即测量时间法。该方法通过测量编码器脉冲间的时间来计算速度。这种方法在高精度速度测量中非常有效,特别是在速度较低时。 MT法计算速度的基本原理 MT法的基本原理是通过…...

go-zero 实战(4)

中间件 在 userapi 项目中引入中间件。go项目中的中间可以处理请求之前和之后的逻辑。 1. 在 userapi/internal目录先创建 middlewares目录&#xff0c;并创建 user.go文件 package middlewaresimport ("github.com/zeromicro/go-zero/core/logx""net/http&q…...

go语言泛型Generic最佳实践 --- slices包

在go的内置包slices中&#xff0c; 所有的函数函数都使用了泛型&#xff0c; 各种各样的泛型&#xff0c; 可以说这个包绝对是go语言泛型学习的最佳实践之一&#xff01; 来&#xff0c;先来瞄一眼&#xff0c;看看这个slices包里面的函数原型定义&#xff1a; func BinarySe…...

【神经网络结构可视化】使用 Visualkeras 可视化 Keras / TensorFlow 神经网络结构

文章目录 Visualkeras介绍下载安装代码示例1、导入必要的库2、创建VGG16神经网络模型3、可视化神经网络结构4、完整代码5、使用教程 可视化自己创建的神经网络结构1、导入要的库2、创建自己的神经网络模型3、可视化神经网络结构图4、完整代码 Visualkeras介绍 Visualkeras是一…...

nvm安装nodejs/npm/nvm笔记

1 安装nvm, 指定路径nvm路径&#xff1a; D:\Program_Files\nvm\nvm指定路径nodejs 路径&#xff1a; D:\Program_Files\nvm\nodejs 2 进入nvm安装路径找到settings.xml文件,追加2行&#xff0c;设置镜像 node_mirror: https://npmmirror.com/mirrors/node/ npm_mirror: ht…...

微信小程序源码-基于Java后端的小区租拼车管理信息系统毕业设计(附源码+演示录像+LW)

大家好&#xff01;我是程序员一帆&#xff0c;感谢您阅读本文&#xff0c;欢迎一键三连哦。 &#x1f49e;当前专栏&#xff1a;微信小程序毕业设计 精彩专栏推荐&#x1f447;&#x1f3fb;&#x1f447;&#x1f3fb;&#x1f447;&#x1f3fb; &#x1f380; Python毕业设…...

嵌入式进阶——LED呼吸灯(PWM)

&#x1f3ac; 秋野酱&#xff1a;《个人主页》 &#x1f525; 个人专栏:《Java专栏》《Python专栏》 ⛺️心若有所向往,何惧道阻且长 文章目录 PWM基础概念STC8H芯片PWMA应用PWM配置详解占空比 PWM基础概念 PWM全称是脉宽调制&#xff08;Pulse Width Modulation&#xff09…...

一文读懂:http免费升级https

背景&#xff1a; 随着现在全民网络安全意识的日益提升&#xff0c;各个网站需要实现的https数量也随之提升&#xff0c;那么如何将原本网站的http访问方式升级为https呢&#xff1f; 该内容为如何免费将网站的http访问升级为https访问 论https的加密逻辑&#xff1a; 步骤 …...

算法刷题笔记 高精度除法(C++实现)

文章目录 题目描述求解思路实现代码 题目描述 给定两个非负整数&#xff08;不含前导0&#xff09;A&#xff0c;B&#xff0c;请你计算 A/B 的商和余数。 输入格式 共两行&#xff0c;第一行包含整数A&#xff0c;第二行包含整数B。 输出格式 共两行&#xff0c;第一行输…...

按月爬取天气数据可视化展示

从天气网分析,可以查询每个月的天气情况,这里按照url规则,传入年月,获取数据,最后进行可视化展示,最终效果: 下面是获取过程: 第一步: import requestsdef get_weather(month):url = f"https://lishi.tianqi.com/nanning/{month}.html"response = reques…...

VMware安装Ubuntu系统(超详细)

一.Ubuntu官网下载镜像 Ubuntu官网&#xff1a;Enterprise Open Source and Linux | Ubuntu 二.安装Ubuntu系统 选择文件->创建虚拟机新建虚拟机&#xff08;ControlN&#xff09;&#xff0c;这里直接选择典型即可 选择稍后安装系统 选择linux Ubuntu 64位 填写虚拟机名称…...

数据清洗操作及众所周知【数据分析】

各位大佬好 &#xff0c;这里是阿川的博客 &#xff0c; 祝您变得更强 个人主页&#xff1a;在线OJ的阿川 大佬的支持和鼓励&#xff0c;将是我成长路上最大的动力 阿川水平有限&#xff0c;如有错误&#xff0c;欢迎大佬指正 前面的博客 数据分析—技术栈和开发环境搭建 …...

炫酷gdb

在VS里面调试很方便对吧&#xff1f;&#xff08;F5直接调试&#xff0c;F10逐过程调试--不进函数&#xff0c;F11逐语句调试--进函数&#xff0c;F9创建断点&#xff09;&#xff0c;那在Linux中怎么调试呢&#xff1f; 我们需要用到一个工具&#xff1a;gdb 我们知道VS中程…...

windows 7 10 11快捷键到启动页面

1.快速打开用户启动文件夹 shell:startup 方式2&#xff1a;快速打开系统启动文件夹 shell:Common Startup shell:Common Startup...

[处理器芯片]-6 超标量CPU实现之浮点运算

1 浮点运算单元FPU 超标量CPU中的浮点运算单元是专门处理浮点数运算的关键组件。浮点运算单元的设计涉及多个复杂的子模块和技术&#xff0c;以保证高效、准确地执行浮点数的加减法、乘法、除法、平方根等操作。 1&#xff09;浮点数术语 浮点数通常采用IEEE 754标准表示&…...

又有人叫嚣:AI取代前端,来给你几张图,看能不能憋死AI。

总有自媒体人&#xff0c;为了些许流量&#xff0c;在大放厥词&#xff0c;说截个图给AI&#xff0c;AI就能输出前端代码&#xff0c;这是啥都敢说&#xff0c;吹牛不上税。 我来给你几张贝格前端工场日常接的大数据项目相关的图&#xff0c;你让AI生成代码&#xff0c;取代前…...

ISCC2024个人挑战赛WP-WEB

&#xff08;非官方解&#xff0c;以下内容均互联网收集的信息和个人思路&#xff0c;仅供学习参考&#xff09; 还没想好名字的塔防游戏 GET /world.js HTTP/1.1 Host: 101.200.138.180:17345 Accept: text/html,application/xhtmlxml,application/xml;q0.9,image/avif,i…...

C++:std::is_convertible

C++标志库中提供is_convertible,可以测试一种类型是否可以转换为另一只类型: template <class From, class To> struct is_convertible; 使用举例: #include <iostream> #include <string>using namespace std;struct A { }; struct B : A { };int main…...

盘古信息PCB行业解决方案:以全域场景重构,激活智造新未来

一、破局&#xff1a;PCB行业的时代之问 在数字经济蓬勃发展的浪潮中&#xff0c;PCB&#xff08;印制电路板&#xff09;作为 “电子产品之母”&#xff0c;其重要性愈发凸显。随着 5G、人工智能等新兴技术的加速渗透&#xff0c;PCB行业面临着前所未有的挑战与机遇。产品迭代…...

【WiFi帧结构】

文章目录 帧结构MAC头部管理帧 帧结构 Wi-Fi的帧分为三部分组成&#xff1a;MAC头部frame bodyFCS&#xff0c;其中MAC是固定格式的&#xff0c;frame body是可变长度。 MAC头部有frame control&#xff0c;duration&#xff0c;address1&#xff0c;address2&#xff0c;addre…...

通过Wrangler CLI在worker中创建数据库和表

官方使用文档&#xff1a;Getting started Cloudflare D1 docs 创建数据库 在命令行中执行完成之后&#xff0c;会在本地和远程创建数据库&#xff1a; npx wranglerlatest d1 create prod-d1-tutorial 在cf中就可以看到数据库&#xff1a; 现在&#xff0c;您的Cloudfla…...

django filter 统计数量 按属性去重

在Django中&#xff0c;如果你想要根据某个属性对查询集进行去重并统计数量&#xff0c;你可以使用values()方法配合annotate()方法来实现。这里有两种常见的方法来完成这个需求&#xff1a; 方法1&#xff1a;使用annotate()和Count 假设你有一个模型Item&#xff0c;并且你想…...

ffmpeg(四):滤镜命令

FFmpeg 的滤镜命令是用于音视频处理中的强大工具&#xff0c;可以完成剪裁、缩放、加水印、调色、合成、旋转、模糊、叠加字幕等复杂的操作。其核心语法格式一般如下&#xff1a; ffmpeg -i input.mp4 -vf "滤镜参数" output.mp4或者带音频滤镜&#xff1a; ffmpeg…...

第25节 Node.js 断言测试

Node.js的assert模块主要用于编写程序的单元测试时使用&#xff0c;通过断言可以提早发现和排查出错误。 稳定性: 5 - 锁定 这个模块可用于应用的单元测试&#xff0c;通过 require(assert) 可以使用这个模块。 assert.fail(actual, expected, message, operator) 使用参数…...

C# 类和继承(抽象类)

抽象类 抽象类是指设计为被继承的类。抽象类只能被用作其他类的基类。 不能创建抽象类的实例。抽象类使用abstract修饰符声明。 抽象类可以包含抽象成员或普通的非抽象成员。抽象类的成员可以是抽象成员和普通带 实现的成员的任意组合。抽象类自己可以派生自另一个抽象类。例…...

[Java恶补day16] 238.除自身以外数组的乘积

给你一个整数数组 nums&#xff0c;返回 数组 answer &#xff0c;其中 answer[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积 。 题目数据 保证 数组 nums之中任意元素的全部前缀元素和后缀的乘积都在 32 位 整数范围内。 请 不要使用除法&#xff0c;且在 O(n) 时间复杂度…...

GitHub 趋势日报 (2025年06月06日)

&#x1f4ca; 由 TrendForge 系统生成 | &#x1f310; https://trendforge.devlive.org/ &#x1f310; 本日报中的项目描述已自动翻译为中文 &#x1f4c8; 今日获星趋势图 今日获星趋势图 590 cognee 551 onlook 399 project-based-learning 348 build-your-own-x 320 ne…...