首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有以下程序 #include <stdio.h> void swap(int *a,int *b) {int t,*tp; t=*a;*a=*b;*b=t; tp=a;a=b;b=tp; printf("%d,%d,",*a,
有以下程序 #include <stdio.h> void swap(int *a,int *b) {int t,*tp; t=*a;*a=*b;*b=t; tp=a;a=b;b=tp; printf("%d,%d,",*a,
admin
2022-04-01
19
问题
有以下程序
#include <stdio.h>
void swap(int *a,int *b)
{int t,*tp;
t=*a;*a=*b;*b=t;
tp=a;a=b;b=tp;
printf("%d,%d,",*a,*b);
}
main()
{int i=3,j=7,*p=&i,*q=&j;
swap(p,q);
printf("%d,%d,%d,%d",i,j,*P,*q);
}
程序执行后的输出结果是( )。
选项
A、3,7,3,7,3,7
B、7,3,7,3,7,3
C、3,7,3,7,7,3
D、3,7,7,3,7,3
答案
D
解析
main()函数中,首先定义两个整型变量i和j,初值为3和7,并将i的地址赋给p,j的地址赋给q,传给swap()函数。swap()函数接收两个整型指针变量a,b,然后使用整型变量t交换a、b所指向的值并输出。通过指针变量的交换改变了实参i、j的值,使得i=7,j=3;指针变量cp交换a和b的值,由于a、b的值是p,q值的拷贝,所以这次交换只改变了形参a,b的值,对实参p,q的值没有改变,此时指针变量a指向i,指针变量b指向i。函数最后输出*a和*b,所以输出3,7;由于swap()函数改变了p和q指向的值,昕以main()函数输出i的值为7,j的值为3,术p的值为i,*q的值为j,所以程序输出:3,7,7,3,7,3,本题答案为D。
转载请注明原文地址:https://kaotiyun.com/show/H1kp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
有以下程序#includevoidfun(char*t,char*s){while(*t!=0)t++;while((*t++=*s++)!=0);}main(){charss[10
若有定义语句:char*s1="OK",*s2="ok";以下选项中,能够输出"OK"的语句是
以下程序段中的变量已正确定义:for(i=0;i<4;i++,i++)for(k=1;k<3;k++);printf("*");程序段的输出结果是()。
以下叙述中正确的是
设有定义:struet{charmark[12];intnum1;doublenum2;}t1,t2;,若变量均已正确赋初值,则一中错误的是()。
下列关于栈的叙述中正确的是()。
在软件开发中,需求分析阶段产生的主要文档是
下面不能作为软件需求分析工具的是
以下程序函数f的功能是:当flag为1时,进行由小到大排序:当flag为0时,进行由大到小排序voidflintb[],intn,intflag)main(){inti,j,t;
下列对软件测试和软件调试叙述中错误的是()。
随机试题
1.题目名称:三相异步电动机的绝缘测试。2.题目内容:(1)测量定子绕组间和绕组对地的绝缘电阻,并将测试结果填入表I一7内。(2)判别定子绕组的首、尾端。(3)将电动机作三角形连接(或作星形连接)。3.时
现代产品是一个整体概念,产品的造型属于()
对银行存款已入账而企业未入账的未达账项,企业应当()。
A、手术B、随访C、药物治疗D、补充血容量E、消除病因慢性胃炎胃黏膜活检示肠上皮组织转化时()
患者因急性肠梗阻开腹探查证实为降结肠肿物所致,发现近端肠管充血水肿严重。下列哪种术式不宜采用
处方限量规则中()
残疾人专用品及残疾人组织和单位进口货物属法定减免范畴。()
纳税人取得的以下所得或发生的以下事项应按照“工资、薪金所得”缴纳个人所得税的有()。
甲并非既通晓国学又通晓西学。若此为真,则可推知()。
8个房间共用一只空气开关,一只空气开关只能允许同时使用6台空调。现有8个房间各安装了一台空调,问在一天(24小时)内平均每个房间最多可使用空调多少小时?()
最新回复
(
0
)