首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有以下程序 #include typedef struct stu { char name[10]; char gender; int score; } STU; void f(STU *a, STU *b) { b = a; printf("%s,%
有以下程序 #include typedef struct stu { char name[10]; char gender; int score; } STU; void f(STU *a, STU *b) { b = a; printf("%s,%
admin
2019-07-14
32
问题
有以下程序
#include
typedef struct stu {
char name[10];
char gender;
int score;
} STU;
void f(STU *a, STU *b)
{ b = a;
printf("%s,%c,%d,", b->name, b->gender, b->score);
}
main()
{ STU a={"Zhao", ’m’, 290}, b={"Qian", ’f’, 350};
f(&a,&b);
printf("%s,%c,%d\n", b.name, b.gender, b.score);
}
程序的运行结果是( )。
选项
A、Zhao,m,290,Qian,f,350
B、Qian,f,350,Zhao,m,290
C、Qian,f,350,Qian,f,350
D、Zhao,m,290,Zhao,m,290
答案
A
解析
函数f()虽然为地址传参,但是形参只是实参的一个副本,若形参和实参为地址,则形参指针指向的变化不能影响到实参指针的指向,所以该函数不能改变&b的值,也不能改变b中的值,所以在函数f()内,语句"b = a;"将当前b的指针指向a指向的结构体变量内存空间,所以输出结果为"Zhao,m,290,",但是主函数中b的值没有改变,输出结果为"Qian,f,350",答案选A。
转载请注明原文地址:https://kaotiyun.com/show/i8Rp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
以下选项中叙述正确的是()。
设有以下说明和语句:intx[3][4],(*p)[4];p=a;,则与表达式*(*p+2)等价的选项是()。
下列给定程序中函数fun的功能是:统计substr所指的字符串在sir所指的字符串中出现的次数。例如,若字符串为aaas1kaaas,子字符串为as,则应输出2。请改正程序中的错误,使它能得出正确的结果。注意:不要改动main函数,不得增行或删行,
下列给定程序中,函数fun的功能是:计算如下公式直到,并且把计算结果作为函数值返回。例如,若形参e的值为1e-3,则函数返回值为0.551690。请在下画线处填入正确的内容并将下画线删除,使程序得出正确的结果。注意:部分源程序给出如下。不得增行
下列关于栈的叙述正确的是()。
软件设计中划分模块的一个准则是( )。
以下选项中非法的C语言字符常量是
以下选项中,合法的一组C语言数值常量是()。
下列对于软件测试的描述中正确的是()。
随机试题
在冰雪路面上行车,必须降低车速、加大安全距离。
建立国际政治经济新秩序必须遵守的原则是
以下镇痛药不属于麻醉药品的是
重度二尖瓣狭窄表现为主动脉瓣关闭不全表现为
适用假释如果有特殊情况,经最高人民法院核准可以不受有期徒刑执行原判刑期1/2以上、无期徒刑实际执行13年以上的限制。这种特殊情况是指:()
一般情况下,建设项目的每个单项影响评价的工作等级()相同。
通货膨胀率是衡量()的宏观经济目标。
根据合同法律制度的规定,下列情形中,买受人应当承担标的物灭失风险的有()。
在数据通信中,为了提高线路利用率,一般使用多路复用技术。最基本的多路复用技术有频分多路复用、时分多路复用和码分多路复用等,目前ADSL采用的是上【】多路复用技术。
关于网络操作系统的基本任务,下列说法中错误的是______。
最新回复
(
0
)