作业帮 > 综合 > 作业

#include int d=1; void fun (int p) { int d=5 ; d+=p++; print

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/05/19 21:00:50
#include int d=1; void fun (int p) { int d=5 ; d+=p++; printf( "%d " ,d ) ; }
main ()
{ int a=3 ;
fun(a);
d+=a++;
printf("%d\n" ,d );
}
1 执行结果:
8 4
2 分析:
#include
int d=1; //全局变量d
void fun (int p)
{
\x09int d=5 ; //部分变量d,与全局变量d是不同的两个变量.
\x09d+=p++;
\x09printf( "%d " ,d ) ;
}
void main ()
{
\x09int a=3 ;
\x09fun(a); //执行函数调用,输出8.
\x09d+=a++; //全局d,实值为1,执行后d=4.
\x09printf("%d\n" , d ); //输出4.
}
再问: //执行函数调用,输出8。 是怎么出来的 不理解 。。 没有P的值 怎么求出的d 啊 p不用管吗? 谢谢。
再答: fun(a); //这行进行函数调用,会将a的值3传给p的,然后在执行函数体。
再问: 还请问这个怎么做谢谢 #include int d=1; int fun (int p) { static int d=5 ; d+=p; printf ("% d" , d); return d ; } main () {int a=3; printf ("%d\n" , fun (a+ fun (d) )) }