如何用C语言编写一个程序,接收一个长度为10的整数数组Xi1O,将其中的所有非正整数元素替换为1,然后输出处理后的数组?
时间: 2024-11-09 11:29:49 浏览: 6
在C语言中,你可以通过遍历数组并检查每个元素是否是非正整数来实现这个功能。以下是一个简单的示例程序:
```c
#include <stdio.h>
#define SIZE 10 // 数组的大小
void replaceNegativeWithOne(int arr[SIZE]) {
for (int i = 0; i < SIZE; i++) {
if (arr[i] <= 0) { // 检查元素是否小于等于0
arr[i] = 1; // 如果是,将其替换为1
}
}
}
void printArray(int arr[SIZE]) {
for (int i = 0; i < SIZE; i++) {
printf("%d ", arr[i]);
}
printf("\n");
}
int main() {
int Xi1O[SIZE]; // 假设这是一个未初始化的数组
// 你可以在这里对数组Xi1O进行填充,例如:
for (int i = 0; i < SIZE; i++) {
Xi1O[i] = i + 1; // 这里只是一个示例,假设你有具体的值
}
replaceNegativeWithOne(Xi1O); // 替换负数和零为1
printArray(Xi1O); // 输出处理后的数组
return 0;
}
```
在这个程序中,`replaceNegativeWithOne` 函数负责遍历数组并修改元素,`printArray` 函数则用于打印处理后的数组。记得在实际运行前给 `Xi1O` 数组赋实际的数值。
阅读全文