C语言编写fun,其功能是:求1~100之间能被8或9整除,但不能同时被8和9整除,,并将其放在a所指的数组中,通过n返回这些数的个数
时间: 2024-11-25 18:22:29 浏览: 67
在C语言中,你可以使用嵌套循环来实现这个功能。首先,你需要创建一个动态数组`a`来存储符合条件的数字,并计算数组的大小`n`。下面是一个示例函数`fun`的实现:
```c
#include <stdio.h>
#include <stdlib.h>
// 功能:找到并存放下标为i的1~100之间能被8或9整除但不能同时被8和9整除的数
int is_valid(int i) {
return (i % 8 == 0 || i % 9 == 0) && (i % 8 != 0 && i % 9 != 0);
}
void fun(int* a, int* n) {
*n = 0; // 初始化计数器
for (int i = 1; i <= 100; ++i) {
if (is_valid(i)) {
a[*n] = i; // 将符合条件的数存入数组
(*n)++;
}
}
}
int main() {
int array[100]; // 假设最多100个符合条件的数
int count;
fun(array, &count); // 调用fun函数
printf("There are %d numbers between 1 and 100 that satisfy the conditions:\n", count);
for (int i = 0; i < count; ++i) {
printf("%d ", array[i]);
}
return 0;
}
```
在这个程序中,`fun`函数会遍历1到100的所有整数,检查每个数是否满足条件,然后将它们存入`array`数组并更新计数器`n`。在`main`函数中,我们动态分配了数组空间并传递给`fun`,最后打印出所有符合条件的数的数量以及具体的数值。
阅读全文
相关推荐
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![rar](https://img-home.csdnimg.cn/images/20241231044955.png)