首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
给定程序中,函数fun的功能是:将形参指针所指结构体数组中的三个元素按Bum成员进行升序排列。 请在程序的下画线处填入正确的内容并把下画线删除,使程序得出正确的结果。 注:卷:不得增行或删行,也不得更改程序的结构! 试题程序: #include<stdio
给定程序中,函数fun的功能是:将形参指针所指结构体数组中的三个元素按Bum成员进行升序排列。 请在程序的下画线处填入正确的内容并把下画线删除,使程序得出正确的结果。 注:卷:不得增行或删行,也不得更改程序的结构! 试题程序: #include<stdio
admin
2019-04-14
46
问题
给定程序中,函数fun的功能是:将形参指针所指结构体数组中的三个元素按Bum成员进行升序排列。
请在程序的下画线处填入正确的内容并把下画线删除,使程序得出正确的结果。
注:卷:不得增行或删行,也不得更改程序的结构!
试题程序:
#include<stdio.h>
typedef struct
int num;
char name[10];
}PERSON;
/* * * * * * found * * * * * */
void fun(PERSON____1____)
{
/* * * * * * found * * * * * */
____2____temp;
if(std[0].num>std[1].num)
{
temp=std[0];
std[0]=std[1 j;
std[1]=temp;
}
if(std[0].num>std[2].Hum)
{
temp=std[0];
std[0]=std{2];
std[2]=temp;}
if(std[1].num>std[2].num)
{
temp=std[1];
std[1]=std[2];
std[2]=temp;
}
}
main( )
{
PERSON std[]={5,″Zhanghu″,2,″WangLi″,6,″LinMin″};
int i;
/* * * * * * found * * * * * */
fun(___3___);
printf(″\nThe result is:\n″);
for(i=0;i<3;i+ +)
printf(″%d,%s\n″,std
.num,std
.name);
}
选项
答案
(1)std[] (2)PERSON (3)std
解析
本题考查:数据类型的定义;数组元素的操作;函数参数的传递。
要使用函数对整个数组进行操作时,应使用数组名作为函数的实参。当使用数组名作实参时,函数传递的实际上是数组的首地址,而并非数组本身,此时形参除了可以定义为指针变量外,还可以定义为数组,并且数组可以不指定大小。但无论用哪种形式,程序在编译时都将其作为一个指针变量处理。
填空1:定义形参变量引用数组std,此时形参可以定义为指针变量,也可以定义为数组。由下文可知,程序是通过数组下标对数组元素进行操作的,因此形参应使用数组形式,而非指针形式。
填空2:程序使用变量temp交换结构体数组元素的值,因而temp应定义为PERSON型。
填空3:程序通过函数fun对数组std进行操作,因此函数的实参应为std。
转载请注明原文地址:https://kaotiyun.com/show/Y9Rp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
以下程序段给数组所有的元素输入数据,请选择正确答案填入。#include<stdio.h>main(){inta[10]=0;while(i<10)scan("%d
数据处理的最小单位是()。
诊断和改正程序中错误的工作通常称为【】。
以下程序运行后的输出结果是______。intd=1:fun(intp){staticintd=5;d+=p;printf("%d",d);returnd;}main(){inta=3
若运行以下程序时,从键盘输入ADescriptor(表示回车),则下面程序的运行结果是#includemain(){charc;intv0=1,v1=0,v2=0;do{switch(c=getchar()){
数字字符’0’的ASCII值为48,若有以下程序:#include<stdio.h>main()chara=’1’,b=’2’;printf("%c,",b++);
下面的叙述正确的是()。
若有以下定义语句,则不移动指针p,并且通过指针p引用值为98的数组元素的表达式是【】。intw[10]={23,54,10,33,47,98,72,80,61},*p=w;
现有以下结构体说明和变量定义,如图所示,指针p、q、r分别指定一个链表中连续的3个结点。structnode{hardata;structnode*next;}*p,*q,*r;现要将q和r所指结点交换前后位
组成C语言程序的是()。
随机试题
下列股票可以在证券交易所上市的是()
毛泽东把农民阶级分为【】
磁共振检查前先测量受检者的体重,并输入计算机,其目的是
孕妇,33岁,妊娠36周,近10天自觉头晕、乏力、心悸及食欲减退。护理体检:面色苍白,心率106次/分,胎位、胎心及骨盆测量均正常,血红蛋白82g/L,血细胞比容0,25,诊断为缺铁性贫血。该患者2周后拟行剖宫产,术前查血红蛋白60g/L,此时正确的处
办理汇兑的程序包括()。
在反向市场上,由于期货价格小于现货价格,所以到交割月份期货价格和现货价格不能趋于一致。()
按照我国企业会计准则的规定,下列关于合并资产负债表的抵销的表述中,正确的有()。
关于职业责任,正确的说法是()。
毛泽东在《关于正确处理人民内部矛盾的问题》一文中特别指出,工人阶级同民族资产阶级的矛盾属于()
Manyofthemostdamagingandlife-threateningtypesofweather--torrentialrains,severethunderstorms,andtornadoes--beginqu
最新回复
(
0
)