C语言编写有两个数组A和B,他们都有N(<100)个非0整数元素,编写4个函数,分别实现他们的“加减乘除”运算,即根据输入的运算符把对应元素做加减乘除运算,结果放在C数组的对应位置,输出C数组。
时间: 2024-04-11 18:26:23 浏览: 81
以下是使用C语言编写的四个函数,用于实现两个数组A和B的加减乘除运算,并将结果存储在C数组中:
```c
#include <stdio.h>
#define N 100
void addArrays(int A[], int B[], int C[], int n) {
for (int i = 0; i < n; i++) {
C[i] = A[i] + B[i];
}
}
void subtractArrays(int A[], int B[], int C[], int n) {
for (int i = 0; i < n; i++) {
C[i] = A[i] - B[i];
}
}
void multiplyArrays(int A[], int B[], int C[], int n) {
for (int i = 0; i < n; i++) {
C[i] = A[i] * B[i];
}
}
void divideArrays(int A[], int B[], int C[], int n) {
for (int i = 0; i < n; i++) {
if (B[i] != 0) {
C[i] = A[i] / B[i];
} else {
// 处理除以零的情况
printf("Error: Division by zero at index %d\n", i);
C[i] = 0;
}
}
}
int main() {
int A[N] = {1, 2, 3, 4, 5};
int B[N] = {6, 7, 8, 9, 10};
int C[N];
char operator;
printf("Enter an operator (+, -, *, /): ");
scanf("%c", &operator);
switch (operator) {
case '+':
addArrays(A, B, C, N);
break;
case '-':
subtractArrays(A, B, C, N);
break;
case '*':
multiplyArrays(A, B, C, N);
break;
case '/':
divideArrays(A, B, C, N);
break;
default:
printf("Invalid operator!\n");
return 1;
}
printf("C array: ");
for (int i = 0; i < N; i++) {
printf("%d ", C[i]);
}
printf("\n");
return 0;
}
```
上述代码中,我们定义了四个函数 `addArrays`、`subtractArrays`、`multiplyArrays` 和 `divideArrays`,分别用于实现加法、减法、乘法和除法运算。这些函数接受两个输入数组A和B,以及一个输出数组C,以及数组中元素的数量n。运算结果会存储在C数组中,并通过主函数的输出语句进行打印。在除法运算中,我们还添加了对除以零的错误处理。
阅读全文