首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有以下程序: # include <stdio.h> typedef struct { int b, p; } A; void f(A c) /* 注意:c是结构变量名 */ { int j; c.b += 1; c.p+=2; }
有以下程序: # include <stdio.h> typedef struct { int b, p; } A; void f(A c) /* 注意:c是结构变量名 */ { int j; c.b += 1; c.p+=2; }
admin
2021-02-25
88
问题
有以下程序:
# include <stdio.h>
typedef struct { int b, p; } A;
void f(A c) /* 注意:c是结构变量名 */
{ int j;
c.b += 1; c.p+=2;
}
main()
{ int i;
A a={1,2};
f(a);
printf("%d,%d\n", a.b, a.p);
}
程序运行后的输出结果是( )。
选项
A、2,4
B、1,2
C、1,4
D、2,3
答案
B
解析
结构体变量可以作为函数的参数和返回值。作为函数的实参时,可以实现函数的传值调用。当使用结构体变量作为函数的形参时,实参也应该是结构体变量名以实现传值调用,实参将拷贝副本给形参,在被调用函数中改变形参值对于调用函数中的实参没有影响。所以选择B。
转载请注明原文地址:https://kaotiyun.com/show/p2tp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
若主函数中有定义语句:inta[10],b[10],c;,在主函数前定义的fun函数首部为:voidfun(intx[]),则以下选项中错误的调用语句是()。
有以下程序#includemain(){doublex=2.0,y;if(x0.0)y=0.0;elseif((x<5.0)&&(!x))y=1.0/(x+2.0);elseif(x<10.0)
有以下程序:#include<stdio.h>#defineS(x)x*xvoidmain(){intk=5,j=2;printf(″%d,%d\n″,S(k+j+2),S(j+k+2));}程序的运行结果是()。
若变量已正确定义,有以下程序段i=0;doprintf("%d,",i);while(i++);printf("%d\n",i);其输出结果是
若char*line[5];,则以下叙述中正确的是()。
结构化程序设计中,下面对goto语句使用描述正确的是
若有定义语句:chara=’\82’;则变量a
以下结构体说明和变量定义中,正确的是
有3个关系R、S和T如下:则关系T是由关系R和S通过某种操作得到的,该操作为()。
以下语句中存在语法错误的是()。
随机试题
断路故障检查分别用_______和_______。
按照《地表水环境质量标准》,下列关于地表水水域环境功能类别表述正确的是()。
项目总承包模式下,监理工作的特点有()。
LIBOR利率为()类型的利率。
存在到期不能支付债务的企业集团,仍然可以发行金融债券。()
在资产负债风险管理阶段中出现的重要分析手段有()。
某企业产品入库后发生可修复废品一批,生产成本为14万元,返修过程中发生材料费为l万元、人工费用为2万元、制造费用为3万元,废品残料作价为0.5万元已回收入库。假定不考虑其他因素,该批可修复废品的净损失为()万元。
下列不属于企业资金运动表现的是()。
下列关于缓刑考验期限的表述,正确的是().
问题解决
最新回复
(
0
)