#include<stdio.h> #define N 20 void inputarr (int *p, int *n); void outputarr (int *p,int n); void swap(int *a, int *b); void swaparr(int *a, int n, int *b,int m); int main() { int i,n=0,m=0; int a[N],b[N]; //printf("请输入数组a,以-1结束:\n"); inputarr(a,&n); //printf("请输入数组b,以-1结束:\n"); inputarr(b,&m); swaparr(a, n, b, m); //printf("数组a中所有元素:\n"); outputarr (a,m); //printf("数组b中所有元素:\n"); outputarr (b,n); return 0; } /********** Begin **********/ /********** End **********/
时间: 2023-07-23 14:07:25 浏览: 96
C语言车票管理系统源程序文件.doc
以下是代码的完整实现,包括了输入数组、输出数组、交换两个数字和交换两个数组的函数:
```c
#include <stdio.h>
#define N 20
void inputarr(int *p, int *n) {
int i = 0, num;
while (i < N) {
scanf("%d", &num);
if (num == -1) {
break;
}
*(p + i) = num;
i++;
}
*n = i;
}
void outputarr(int *p, int n) {
int i;
for (i = 0; i < n; i++) {
printf("%d ", *(p + i));
}
printf("\n");
}
void swap(int *a, int *b) {
int temp = *a;
*a = *b;
*b = temp;
}
void swaparr(int *a, int n, int *b, int m) {
int i;
for (i = 0; i < n && i < m; i++) {
swap(a + i, b + i);
}
}
int main() {
int n = 0, m = 0;
int a[N], b[N];
printf("请输入数组a,以-1结束:\n");
inputarr(a, &n);
printf("请输入数组b,以-1结束:\n");
inputarr(b, &m);
swaparr(a, n, b, m);
printf("数组a中所有元素:\n");
outputarr(a, n);
printf("数组b中所有元素:\n");
outputarr(b, m);
return 0;
}
```
这个程序的功能是输入两个数组,然后交换它们的前n和前m个元素,最后输出交换后的两个数组。
阅读全文