首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有以下程序 #include <stdio.h> #include <string.h> typedef struct stu { char name[10];
有以下程序 #include <stdio.h> #include <string.h> typedef struct stu { char name[10];
admin
2020-11-27
42
问题
有以下程序
#include <stdio.h>
#include <string.h>
typedef struct stu {
char name[10];
char gender;
int score;
} STU;
void f( char name[10],char gender,int score )
{ strcpy( name, "Sun" );
gender = ’m’;
score = 370;
}
main( )
{ STU b={"Zhao", ’m’, 290}, a={"Qian", ’f’, 350};
b=a;
printf( "%s,%c,%d,", b.name, b.gender, b.score );
f( b.name, b.gender, b.score );
printf( "%s,%c,%d\n", b.name, b.gender, b.score );
}
程序运行后的输出结果是
选项
A、Qian,f,350,Sun,f,350
B、Qian,f,350,Qian,f,350
C、Qian,f,350,Sun,m,370
D、Zhao,m,290,Sun,m,370
答案
A
解析
C语言函数参数传递大致分为:1、值传递过程中,被调函数的形参作为被调函数的局部变量处理,即在内存的堆栈中开辟空间以存放由主调函数放进来的实参的值,从而成为了实参的一个拷贝。值传递的特点是被调函数对形参的任何操作都是作为局部变量进行,不会影响主调函数的实参变量的值。
2、地址传递过程中,被调函数的形参虽然也作为局部变量在堆栈中开辟了内存空间,但是这时存放的是由主调函数放进来的实参变量的地址。被调函数对形参的任何操作都被处理成间接寻址,即通过堆栈中存放的地址访问主调函数中的实参变量。正因为如此,被调函数对形参做的任何操作都影响了主调函数中的实参变量。
结构体中name是数组,做实参传递,会退化为指针,因此调用f(),b.name发生修改,其他的成员,传递的是拷贝,不会被修改。因此输出Sun,f,350。故答案为A选项。
转载请注明原文地址:https://www.kaotiyun.com/show/SY3p777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
在下列选项中,没有构成死循环的程序段是()。
以下选项中,合法的是
设循环队列存储空间为Q(1:50),初始状态为front=rear=50。经过一系列入队和退队操作后,front=rear=25,则该循环队列中元素个数为
有以下程序#includevoidf(int*q){inti=0;for(;i<5;i++)(*q)++;}main(){inta[5]={1,2,3,4,5},i;f(a);for(i=0;i<5;i++)printf("%d,",a[
以下程序用来统计文件中字符的个数(函数feof用以检查文件是否结束,结束时返回非零)#includemain(){FILE*fp;longnum=0;fp=fopen("fname.dat","r");while(_______
有三个关系R、S和T如下:由关系R和S通过运算得到关系T,则所使用的运算为()。
下列关于C语言文件的叙述中正确的是
下面对类-对象主要特征描述正确的是
以下标识符不是关键字的是()。
以下不能用于描述算法的是
随机试题
什么是“会议大使”?简言之,即为一个城市_____会议的专业人士。欧美等发达国家早已有“会议大使”,他们为各国争取来了大量高层次、大规模的国际会议。填入画横线部分恰当的一项是()。
婴儿出生后,卵圆孔解剖上关闭的年龄大多是
有关民事诉讼的地域管辖规定,叙述正确的有()。
工作定义的方法包括()。
J曲线越短,其与横轴相交的时间(),投资者获取所希望的收益回报的所需的时间()。
客户交易结算资金第三方存管制度是按照()的原则,设计、实施了新的客户交易结算资金第三方存管制度。Ⅰ.保障客户资产安全Ⅱ.防止风险传递Ⅲ.方便投资者Ⅳ.有利于证券公司业务创新
通过态度预测行为的时候应该注意的因素有()。
审计报告日期是指()。
知觉的理解性体现的加工方式是
WhatistheWomandoing?
最新回复
(
0
)