这道c程序题,谢谢
1个回答
展开全部
重点关注点为:q++这种操作是在当下语句进行后,进行q=q+1操作。
就例如d+=q++ 是在进行d=d+q 操作之后,再进行的q=q+1。
同时,因为函数的形参传递的是参数值,并非地址。所以在函数中进行的q++操作,在函数进行操作后,并不会反馈给a,即主函数中的变量a不会由于函数进行a=a+1操作。
对于两个d的问题,你可以如此理解:
当函数中有同名的变量名时,以最近的变量为准,即在函数中由于有d的定义,故而使用函数中定义的d的值,即d=5
而在主函数中没有d的相关定义,即以全局变量d的值为准(如果有的话就以主函数中的为准)
故而两次输出为:
函数中的d=d+a(形参名为q)=8
进行函数操作后(因为传递的是值,并不是指针)值并不会变化的a 与全局变量d的和,为4(操作方式与函数中的同理)
没有换行操作,故而显示84
(如有疑问或歧义可以提出,望采纳)
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询