早教吧 育儿知识 作业答案 考试题库 百科 知识分享

C语言选择题下列程序能对两个整型变量的值进行交换。以下正确的说法是(4)D。main(){inta=10,b=20;printf("(l)a=%d,b=%d\n",a,b);swap(&a,&b);printf(“(2)a=%d,b=%d\n”a,b);

题目详情
C语言选择题下列程序能对两个整型变量的值进行交换。以下正确的说法是(4) D 。 main() { int a=10,b=20; printf("(l) a=%d,b=%d\n",a,b); swap(&a,&b); printf(“(2)a=%d,b=%d\n”a,b); } swap(int p, int q) { int t; t=p;p=q;q=t;} A. 该程序完全正确 B. 该程序有错,只要将语句swap(&a,&b);中的参数改为a,b即可 C. 该程序有错,只要将swap()函数中的形参p和q以及t均定义为指 针(执行语句不变)即可 D. 以上说法都不对
▼优质解答
答案和解析
首先,A肯定不对,因为这个程序没有实现a,b的交换。 其次,B的做法也无法改变a,b的值。因为调用函数的时候会复制参数的一个副本,函数内部是用这个副本运算,因此,值传递无法改变原始数据的值。 再次,C的意思是改为 swap(int *p, int *q) { int *t; t=p;p=q;q=t;} 这个函数运行时,同样把a,b的地址复制一个副本给p,q,然后将p,q的值(a,b地址的副本)进行了交换,而地址指向的值却没有任何变动,因此无法改变a,b的值。 所以,D.以上说法都不对
看了 C语言选择题下列程序能对两个...的网友还看了以下:

关于功和能,下列说法中正确的是A.物体速度变化,动能一定变化B.物体动能变化,一定有外力做功C.物体  2020-03-30 …

【高中物理】关于物体的内能,下列说法中,正确的是:A理想气体温度升高时,内能可能减少B物体向外界放  2020-05-17 …

关于重力势能,下列说法正确的是A物体做匀速直线运动时.其重力势能一定不变.B只要重力做功,物体的重  2020-05-20 …

有关功和能下列说法正确的是下列关于功和能的关系,下列说法正确的是()A.力对物体做多少功,物体就具  2020-05-20 …

关于物体的动能,下列说法正确的是:A如果物体动能有变化,其速度一定变化.B如果物体速度有变化,其动  2020-06-19 …

如图所示,乒乓球上下振动,振动的幅度愈来愈小,关于乒乓球的机械能下列说法中正确的是[]A.机械能守  2020-07-07 …

关于物体的内能,下列说法正确的是A0℃的冰没有内能B要使物体内能增加,必须使其吸收热量C温度高的物  2020-07-09 …

关于太阳能,下列说法错误的是.A.太阳能电池使用寿命长,不需燃料B.太阳能电池产生的电压低C.太阳  2020-07-29 …

关于弹性势能和重力势能下列说法正确的是()A.重力势能属于物体和地球这个系统,弹性势能属于发生弹性形  2020-11-02 …

关于电能下列说法不正确的是()A.电能也是一种能源,可以与其他形式的能相互转化B.电能的多少可以用电  2020-11-03 …