作业帮 > 综合 > 作业

int a=3; main(){int s=0;{int a=5;s+=a++;}s+=a++;printf("%d\n

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/05/18 04:01:36
int a=3; main(){int s=0;{int a=5;s+=a++;}s+=a++;printf("%d\n",s);}
这个输出为8,
int a=3;//定义全局变量
main()
{int s=0;
{int a=5;
s+=a++;//这里计算后s的值为5,因为a++是先算a的值,然后在加1,所以此时a的值为5,这条语句执行结束后才会变为6!
}
s+=a++;这里的a为全局变量3,而并非局部变量5,局部变量为5的a只在它所在的那条花括号里的快语句中起作用,这也是变量作用域的定义,所以s的值就为5+3=8
printf("%d\n",s);
}