二、自定义一个函数fun(int x),用于判断某一个整数x是否满足条件第1位数和第4位数相同,第2位数与第3位数相同的所有四位数:如果是,返回1,否则返回0。主程序调用此函数,输出1000到9999之间满足条件的所有数,每输出8个换行 二、自定义一个函数fun(int x),用于判断某一个整数x是否满足条件第1位数和第4位数相同,第2位数与第3位数相同的所有四位数:如果是,返回1,否则返回0。主程序调用此函数,输出1000到9999之间满足条件的所有数,每输出8个换行用c语言实现
时间: 2024-03-15 07:47:48 浏览: 74
以下是代码实现:
```c
#include <stdio.h>
int fun(int x) {
int a = x / 1000; // 取第1位数
int b = x % 1000 / 100; // 取第2位数
int c = x % 100 / 10; // 取第3位数
int d = x % 10; // 取第4位数
if (a == d && b == c) { // 判断是否满足条件
return 1;
} else {
return 0;
}
}
int main() {
int count = 0; // 记录满足条件的数的个数
// 循环遍历1000到9999之间的所有数
for (int i = 1000; i <= 9999; i++) {
if (fun(i)) { // 判断是否满足条件
printf("%d ", i);
count++;
if (count % 8 == 0) { // 每输出8个换行
printf("\n");
}
}
}
return 0;
}
```
解释一下代码:
首先定义了一个函数 `fun`,用于判断某一个整数是否满足条件。在函数中,先分别取出这个整数的四个位数,然后判断是否满足条件,如果满足则返回1,否则返回0。
然后在主程序中,使用一个变量 `count` 记录满足条件的数的个数,依次遍历1000到9999之间的所有数,每遍历一个数就调用函数 `fun` 判断是否满足条件,如果满足则输出这个数,并将计数器 `count` 加1。同时,每输出8个数就换行一次。
注意,输出的数之间需要加一个空格,可以使用 `%d ` 格式化输出。同时,每输出8个数就需要换行一次,可以使用 `count % 8 == 0` 判断是否需要换行。
阅读全文