#include <stdio.h> int fun(int array[3][3]) { int i,j,arr[3][3] ; memcpy(arr, array, 9*sizeof(int)) ; for(i = 0 ; i < 3 ; i++) for(j = 0 ; j < 3 ; j++) /**************found**************/ array[i][j] = ___1___ ; } main() { int i,j;
时间: 2023-07-06 21:30:31 浏览: 107
下面是完整的代码,并且已经填好了空缺的部分:
```c
#include <stdio.h>
#include <string.h> // 添加头文件
int fun(int array[3][3])
{
int i,j,arr[3][3];
memcpy(arr, array, 9*sizeof(int)); // 添加memcpy函数
for(i = 0 ; i < 3 ; i++)
for(j = 0 ; j < 3 ; j++)
array[i][j] = arr[i][2-j]; // 填空1
}
int main() // 修正:添加返回值类型int
{
int i,j;
int array[3][3] = {1,2,3,4,5,6,7,8,9};
printf("Original array:\n");
for(i = 0 ; i < 3 ; i++)
{
for(j = 0 ; j < 3 ; j++)
printf("%d\t", array[i][j]);
printf("\n");
}
fun(array);
printf("Result array:\n");
for(i = 0 ; i < 3 ; i++)
{
for(j = 0 ; j < 3 ; j++)
printf("%d\t", array[i][j]);
printf("\n");
}
return 0; // 修正:添加返回值0
}
```
该程序的功能是将一个3×3的数组按列翻转后输出。其中,函数fun的参数是一个3×3的数组。
修正如下:
1. 在函数fun中,应该先将数组array复制到一个新的数组arr中,然后再按列翻转更新数组array。
2. 在main函数前面,应该添加头文件`<string.h>`,以便使用memcpy函数。
3. 在main函数中,应该添加返回值类型int,并在程序末尾添加返回值0。
阅读全文