#include <stdio.h>
int wei(int n)
{
int i = 0;
while (1)
{
i++;
if (n == 0) break;
n /= 10;
}
return i - 1;
}
int pw10(int n)
{
int x = 1;
for (int i = 1; i < n; i++)
x *= 10;
return x;
}
int main()
{
int i = 8;
while(1)
{
int j = pw10(wei(i)) * 8 + i / 10;
if (i * 4 == j)
{
printf("%d", i);
break;
}
i += 10;
}
return 0;
}
205128
给你个 python 版本的参考
n = 8 # 初始以8开始
a = 8 # 同样以8 开始
while a / n != 4: # 如果 a 除 n 不等于4,就继续,你用 c 的话注意类型
n += 10 # n 每次加个10
p = n # 临时变量 p 与 n 值相同
w = 0 # 记录位数
while p > 9: # 当 p 大于 9,位数加1,p减去一位(除10)
p //= 10
w += 1
a = n // 10 + 8 * 10 ** w # 更新 a 的值,为 n 除10后,加上 8 乘位数
print(n,a)
1.编写一个实现把个位数移动到最前面的函数
思路:while 每次除以10取整,直到商为0,就算出了位数
再解释下:未知数X/10+8*位数 算出换位后的数
2.从8开始+1挨个试验,直到移动后/移动前=4
这样就用笨办法算出了结果
本篇文章大致总结了指针在日常学习中的简单使用,如果看完对大家有所帮助的话,希望大家点赞收藏+关注,感谢各位大佬们的支持,若文章出现错误,也请大佬们及时指正。
最后附上完整板书:
2021_12_28 指针/指针.png · 李兴宇/C语言 - Gitee.com全部代码:2021_12_28 指针/2021_12_28 指针/test.c · 李兴宇/C语言 - Gitee.com
看完的小伙伴可以练一练下面这两个例题:
指针练习一:[ C语言指针练习一 ] 使用指针打印数组内容,写一个函数打印arr数组的内容,不使用数组下标,使用指针。_小白又菜的博客-CSDN博客
指针练习二: