下列程序的输出结果是【 】。 int t(int x,int y,int cp,int dp) { cp=x* x+y*y; dp=x*x-y*y; } main() { in

admin2009-02-15  18

问题 下列程序的输出结果是【  】。
    int t(int x,int y,int cp,int dp)
    {      cp=x* x+y*y;
           dp=x*x-y*y;
    }
    main()
    {    int a=4,b=3,c=5,d=6;
         t(a,b,c,d);
         printf("%d%d\n",c,d);
    }

选项

答案56

解析 本题中a,b,c,d是实参,x,y,cp,dp是形参。C语言规定,实参变量对形参变量的数据传递是“值传递”,即单向传递,只由实参传给形参,而不能由形参传回来给实参。在内存中,实参单元与形参单元是不同的单元。在调用函数时,绐形参分配存储单元,并将实参对应的值传递给形参,调用结束后,形参单元被释放,实参单元仍保留并维持原值。因此,程序的输出结果是56。
转载请注明原文地址:https://kaotiyun.com/show/n3Xp777K
0

最新回复(0)