用c语言写 设m是一个四位数,它的n倍恰好是其反序数(例如:123 的反序数是321)。请使用C语言编写程序实现,当输入一个整数 n(2<=n<=9)时,输出所有满足条件的四位数m。例如输入n-4时,输出m=2178;输入n9时,输出m=1089。
时间: 2024-02-16 16:03:08 浏览: 57
从键盘输入一个三位整数,逆序输出。如输入123,输出321。
好的,以下是使用 C 语言编写的程序,实现你所描述的功能:
```c
#include <stdio.h>
int main() {
int n;
for(n=2; n<=9; n++) {
int m;
for(m=1000; m<=9999; m++) {
int n_times_m = n * m;
if(n_times_m < 1000 || n_times_m > 9999) {
continue;
}
int reversed_m = (m % 10) * 1000 + (m / 10 % 10) * 100 + (m / 100 % 10) * 10 + (m / 1000);
if(reversed_m == n_times_m) {
printf("n=%d, m=%d\n", n, m);
}
}
}
return 0;
}
```
程序中嵌套了两个循环,外层循环遍历 n 的可能取值,内层循环遍历 m 的可能取值。对于每一个 m,我们计算出它的 n 倍,然后判断是否为四位数,如果不是则跳过本次循环。我们还计算出 m 的反序数,判断是否等于 n 倍的值,如果是则输出结果。
阅读全文