#include <stdio.h>
#include <string.h>
int main()
{
int n, i, j;
char a[10];
for(n = 123; n < 330; n++) {
sprintf(a, "%d", n * 1000000 + n * 2 * 1000 + n * 3);
for(j = 0, i = '1'; i <= '9'; memchr(a, i++, 9) && j++);
if (j == 9)
printf("%d %d %d \n", n, n * 2, n * 3);
}
return 0;
}
主要是学到了 menchr函数和sprintf两个函数 。挺好的 本来这个题 直接暴力出的解,看见计算机都算的很慢,就百度到如此之大神代码,稍加修改。完美了!
本文通过一个C语言程序示例介绍了如何巧妙地使用sprintf和memchr函数来解决特定问题。通过对数字进行字符串处理,该程序实现了快速查找包含1至9所有数字的数,并展示了如何利用这些函数提高代码效率。
2331





