C语言练习day8

变种水仙花

变种水仙花_牛客题霸_牛客网

题目:

思路:我们拿到题目的第一步可以先看一看题目给的例子,1461这个数被从中间拆成了两部分:1和461,14和61,146和1,不知道看到这大家有没有觉得很熟悉的样子,没错,它拆分的时候是按照每一位来逐渐往右增加来拆分的,换数学中的说法就是,最高位往右增加,其实在转换一下就是按照位数(个位,十位......)这种来增加。因此,这个规律我们也可以总结出来了,就是个位 乘以 其它位(原来的数除去个位后的位数)+十位 乘以 其它位 + 百位 乘以 其它位.......知道这个后在来写这个题目,我们就会发现就不难了。5位数,我们用循环产生就可以了。

代码演示:

打印从1到最大的n位数

题目:

输入数字 n,按顺序打印出从 1 到最大的 n 位十进制数。比如输入 3,则打印出 1、2、3 一直到最大的 3 位数 999。

  1. 用返回一个整数列表来代替打印

  2. n 为正整数,0 < n <= 5

思路:其实,这个题目是比较简单的。我们就拿3这个例子来讲吧。我们要打印的最大数不超过三位数,就可以理解为小于四位数,四位数就可以联系到十的四次方,再往后就可以联系到pow函数的幂次,到这里,这个题目也就解决了。

代码演示:

这里因为篇幅有限,我就不把结果展示了,大家可以自己在编译器上写写。

计算日期到天数转换

计算日期到天数转换_牛客题霸_牛客网

题目:

思路:要判断某年某月某日是该年的第几天。首先,我们要判断该年是否为闰年(因为可能为2月,2月的天数是不确定的,因此,我们就要知道是否为闰年),如果是闰年的话,2月就要加一天。其次,再判断是几月(这里我们其实可以定义一个数组的,用来表示某月的天数),看看是几月,再来算过去的天数,至于剩下的天数,我们直接加上就可以了。

代码演示:

注意:像这种重复计算的,一般都可以用循环来解决(计算多少天,月份知道了,算天数就需要重复算),如果题目做多了,大家自己就可以知道什么题用什么方法了。

相关推荐
叫我木子1 小时前
c语言,识别到黑色就自动开枪,4399单击游戏狙击战场,源码分享,豆包ai出品
c语言·人工智能·游戏
l1t1 小时前
对expat库XML_Parse函数调用优化的测试
xml·c语言·解析器·expat
l1t3 小时前
利用美团龙猫添加xlsx的sheet.xml读取sharedStrings.xml中共享字符串输出到csv功能
xml·c语言·数据结构·人工智能·算法·解析器
l1t4 小时前
how to build tbox xml into the demo
xml·linux·c语言·parser·tbox
九皇叔叔4 小时前
【2】标识符
c语言
野生的编程萌新5 小时前
【C++深学日志】从0开始的C++生活
c语言·开发语言·c++·算法
Hello_Embed8 小时前
STM32HAL 快速入门(二十四):I2C 编程(一)—— 从 OLED 显示初识 I2C 协议
c语言·stm32·单片机·嵌入式硬件·学习
晨非辰11 小时前
#C语言——刷题攻略:牛客编程入门训练(十一):攻克 循环控制(三),轻松拿捏!
c语言·开发语言·经验分享·学习·visual studio
嫣语岁月12 小时前
【BMS电池管理】基于BQ76920与STM32的BMS设计开发
c语言·vscode·stm32·单片机·嵌入式硬件
PAK向日葵17 小时前
【C/C++】面试官:手写一个memmove,要求性能尽可能高
c语言·c++·面试