关于C语言的一个题目,跪求详细解释,谢谢,题目如图

2024-11-27 00:36:24
推荐回答(6个)
回答1:

5634。fun1中a,b是形参,调用后输出56。因为你定义了a=1,b=2为全局变量,他们的作用域是整个程序,所以调用fun2时,就将全局变量a改为了3,b改为4。接着就输出了34

回答2:

#include
int a=1,b=2;//在函数外部定义的,是全局变量
//题不规范,缺少函数的ANSI C原型声明
void fun1(int a,int b);
void fun2();
void fun1(int a,int b)
{printf("%d %d",a,b);}
void fun2()
{a=3;b=4;}
main()
{
fun1(5,6);//传递的是实参,改变了a和b的值
//输出“5空格6”,并且a=5,b=6
fun2();//因为a、b是全局变量,fun2函数对a、b的改变在main函数中仍然有效
printf("%d %d\n",a,b);//接着“5空格6”后面输出“3空格4回车”
//所以输出是5 63 4
}

回答3:

5,6
3,4
我用VC6.0运行过了,函数fun1,先执行输出5,6然后执行fun2此时a,b被重新赋值为3,4然后输出
若有帮助 望采纳!

回答4:

结果是5612

回答5:

56
12

回答6:

结果:1,2 3,4