用c语言编写:1编写带有函数的程序,函数fun功能是求出能整除x且不是偶数的各个整数,顺序存放在数组pp中,这些除数的个数通过形参返回。 例如:若x值为30,则有4个数符合要求,是1,3,5,15。*
时间: 2023-06-14 19:07:27 浏览: 100
```
#include <stdio.h>
void fun(int x, int pp[], int *count) {
*count = 0;
for (int i = 1; i <= x; i++) {
if (x % i == 0 && i % 2 != 0) {
pp[*count] = i;
(*count)++;
}
}
}
int main() {
int x = 30;
int pp[100];
int count;
fun(x, pp, &count);
printf("能整除%d且不是偶数的整数有%d个:\n", x, count);
for (int i = 0; i < count; i++) {
printf("%d ", pp[i]);
}
printf("\n");
return 0;
}
```
运行结果:
```
能整除30且不是偶数的整数有4个:
1 3 5 15
```
相关问题
用C语言:|编写带有函数的程序,函数fun功能是求出能整除x且不是偶数的各个整数,顺序存放在数组p中,这些除数的个数通过形参返回。|
以下是用C语言编写的程序,满足题目要求:
```c
#include <stdio.h>
int fun(int x, int p[]) {
int count = 0;
for (int i = 1; i <= x; i++) {
if (x % i == 0 && i % 2 != 0) {
p[count++] = i;
}
}
return count;
}
int main() {
int x = 20;
int p[100];
int count = fun(x, p);
printf("The divisors that can divide %d and are not even numbers are:\n", x);
for (int i = 0; i < count; i++) {
printf("%d ", p[i]);
}
return 0;
}
```
程序中的 `fun` 函数用于求出能整除 `x` 且不是偶数的各个整数,并将这些除数顺序存放在数组 `p` 中。函数通过返回值返回除数的个数。在主函数中,我们可以调用 `fun` 函数得到除数,并输出结果。
用C语言实现,编写带有函数的程序,函数fun功能是求出 能整除x且不是偶数的各个整数,顺序存放在 数组pp中,这些除数的个数通过形参返回
以下是用C语言实现的程序:
```c
#include <stdio.h>
void fun(int x, int pp[], int *n) {
int i, j = 0;
for (i = 1; i <= x; i++) {
if (x % i == 0 && i % 2 != 0) {
pp[j++] = i;
}
}
*n = j;
}
int main() {
int x = 12;
int pp[100] = {0};
int n;
fun(x, pp, &n);
printf("能整除%d且不是偶数的整数有:\n", x);
for (int i = 0; i < n; i++) {
printf("%d ", pp[i]);
}
printf("\n共%d个\n", n);
return 0;
}
```
程序中的 `fun` 函数功能是求出能整除 `x` 且不是偶数的各个整数,存放在数组 `pp` 中,同时通过形参 `n` 返回这些除数的个数。
在 `fun` 函数中,我们通过循环判断每个数字是否能整除 `x` 且不是偶数,如果符合条件就存放在数组 `pp` 中,并且 `j` 自增,表示找到了一个除数。最后将 `j` 的值赋给 `n`,表示找到的除数的个数。
在 `main` 函数中,我们先定义了一个整数 `x`,表示要求的数值是 `x`。然后定义了一个数组 `pp`,用来存放符合条件的除数。再定义一个整数 `n`,作为形参传递给 `fun` 函数,用来返回除数的个数。
调用 `fun` 函数后,我们通过循环输出数组 `pp` 中存放的除数,最后输出除数的个数。
运行程序,输出结果如下:
```
能整除12且不是偶数的整数有:
1 3
共2个
```
可以看出,程序正确地找到了能整除 `x` 且不是偶数的整数,并存放在了数组 `pp` 中。
阅读全文