#include <stdio.h> void sum( int *a ) { a[0] = a[1]; } int main() { int aa[10] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 }, i; for ( i = 2; i >= 0; i-- ) sum( &aa[i] ); printf( "%d", aa[0] ); return(0); }
时间: 2024-02-01 18:04:07 浏览: 40
这段代码的输出结果是2。
代码中定义了一个sum函数,该函数将传入的指针a指向的数组的第一个元素的值修改为该数组的第二个元素的值。在main函数中,定义了一个长度为10的整型数组aa,并初始化为{1,2,3,4,5,6,7,8,9,10}。然后通过循环调用sum函数,每次传入一个数组元素的地址,对数组进行修改。具体来说,第一次调用sum函数时,传入的是&aa[2],即数组aa的第三个元素的地址,此时sum函数将该元素的值修改为4;第二次调用sum函数时,传入的是&aa[1],即数组aa的第二个元素的地址,此时sum函数将该元素的值修改为3;第三次调用sum函数时,传入的是&aa[0],即数组aa的第一个元素的地址,此时sum函数将该元素的值修改为2。最后,输出aa[0]的值,即2。
相关问题
2 上机调试下面的程序,记录系统给出的出错信息,并指出错误原因。 #include <stdio.h> void main() { int x,y; printf("%d\n",sum(x+y)); int sum(a,b); { int a,b; return(a+b); } }
这段程序存在以下两个错误:
1. 函数 `sum` 没有进行声明,因此编译器无法识别。解决方法是在 `main` 函数之前添加函数声明,如下所示:
```c
#include <stdio.h>
int sum(int a, int b); // 声明 sum 函数
void main() {
int x, y;
printf("请输入两个整数:");
scanf("%d %d", &x, &y);
printf("%d\n", sum(x, y));
}
int sum(int a, int b) {
return a + b;
}
```
2. 函数 `sum` 中的参数 `a` 和 `b` 与函数声明时的参数名不一致,应该修改为 `int sum(int x, int y)` 或者修改函数体中的参数名为 `a` 和 `b`。
修改后的程序如下:
```c
#include <stdio.h>
int sum(int x, int y);
void main() {
int x, y;
printf("请输入两个整数:");
scanf("%d %d", &x, &y);
printf("%d\n", sum(x, y));
}
int sum(int a, int b) {
return a + b;
}
```
在进行编译时,会提示 `warning: return type of 'main' is not 'int'`,这是因为 `main` 函数应该返回一个整型值,应该将 `void main()` 改为 `int main()`。因此,最终的程序如下:
```c
#include <stdio.h>
int sum(int x, int y);
int main() {
int x, y;
printf("请输入两个整数:");
scanf("%d %d", &x, &y);
printf("%d\n", sum(x, y));
return 0;
}
int sum(int a, int b) {
return a + b;
}
```
修改后,程序可以正常运行。
#include<stdio.h> void main(){ int n,i,sum=0; /**********Program**********/ /********** End **********/ printf("%d\n",sum); }
#include<stdio.h>是C语言中的一个预处理指令,它的作用是引入标准输入输出库(stdio.h),以便在程序中使用输入输出函数。
在你给出的代码中,你定义了一个main函数,该函数是C程序的入口函数。在main函数中,你声明了一些变量,包括n、i和sum,并将sum初始化为0。
在/**********Program**********/和/********** End **********/之间的部分是你需要填写的代码。根据你的需求,你可以在这个部分编写任意的C语句来实现你想要的功能。
最后,在printf函数中使用了格式化字符串"%d\n"来输出sum的值。"%d"表示输出一个整数,"\n"表示换行。
相关推荐
![application/octet-stream](https://img-home.csdnimg.cn/images/20210720083646.png)
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![application/msword](https://img-home.csdnimg.cn/images/20210720083327.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)