填空题
下列程序的输出结果是______。
int t(int x,int y,int cp,int dp)
{cp=x% y+y*y;
dp=x+x-y*y;
}
main()
{ im a=4,b=3,c=9,d=8;
t(a,b,c,d);
printf("%d%d/n",c,d);
}
【正确答案】
1、98
【答案解析】[解析] 本题的考查点是函数的调用。
本题中a,b,c,d是实参,x,y,cp,dp是形参。C语言规定,实参变量对形参变量的数据传递是“值传递”,即单向传递,只由实参传给形参,而不能由形参传回来给实参。在内存中,实参单元与形参单元是不同的单元。在调用函数时,给形参分配存储单元,并将实参对应的值传递给形参,调用结束后,形参单元被释放,实参单元仍保留并维持原值。因此,程序的输出结果是98。