首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
给定程序中,函数fun的功能是:将形参指针所指结构体数组中的三个元素按num成员进行升序排列。 请在程序的下画线处填入正确的内容并把下画线删除,使程序得出正确的结果。 注意:部分源程序给出如下。 不得增行或删行,也不得更改程序的结构! 试题程序: #inc
给定程序中,函数fun的功能是:将形参指针所指结构体数组中的三个元素按num成员进行升序排列。 请在程序的下画线处填入正确的内容并把下画线删除,使程序得出正确的结果。 注意:部分源程序给出如下。 不得增行或删行,也不得更改程序的结构! 试题程序: #inc
admin
2020-06-16
68
问题
给定程序中,函数fun的功能是:将形参指针所指结构体数组中的三个元素按num成员进行升序排列。
请在程序的下画线处填入正确的内容并把下画线删除,使程序得出正确的结果。
注意:部分源程序给出如下。
不得增行或删行,也不得更改程序的结构!
试题程序:
#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];
std[1]=temp;}
if(std[0].num>std[2].num)
{temp=sta[0];std[0]=std[2];
std[2]=temp;)
if(std[1].num>std[2].hum)
{ 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("The result is":);
for(i=0;i<3;i++)
printf("%d,%s",std
.num,std
.name);
}
选项
答案
(1)std[] (2)PERSON (3)std
解析
本题考查:数据类型的定义;数组元素的操作;函数参数的传递。
要使用函数对整个数组进行操作时,应使用数组名作为函数的实参。当使用数组名作实参时,函数传递的实际上是数组的首地址,而并非数组本身,此时形参除了可以定义为指针变量外,还可以定义为数组,并且数组可以不指定大小,但无论用哪种形式,程序在编译时都将其作为一个指针变量处理。
填空1:定义形参变量引用数组std,此时形参可以定义为指针变量,也可以定义为数组。由下文可知,程序是通过数组下标对数组元素进行操作的,因此形参应使用数组形式,而非指针形式。
填空2:程序使用变量temp交换结构体数组元素的值,因而temp应定义为PERSON型。
填空3:程序通过函数fun对数组std进行操作,因此函数的实参应为std。
转载请注明原文地址:https://kaotiyun.com/show/6iCp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
有两个关系R和T如下:则由关系R得到关系T的操作是
有两个关系R和S如下:则由关系R得到关系S的操作是
设有定义:structcomplex{intreal,unreal;}datal={1,8},data2;则以下赋值语句中错误的是
有以下程序intflintx);main(){intn=1,m;m=f(f(f(n)));printf("%\n",m);}intf(intx){returnx*2;}程序运
有以下程序段charname[20];Intnum;scanf("name=%snum=%d",name,&num);当执行上述程序段,并从键盘输入:name=Lilinum=1001后,name的值为
有以下程序#includemain(){inta1,a2;charc1,c2;scanf("%d%c%d%c",&a1,&c1,&a2,&c2);printf("%d,%c,%d,%c",a1,c1,a
若有定义inta;floatb;doublec;程序运行时输入:345能把值3输入给变量a、4输入给变量b、5输入给变量c的语句是
若有以下程序main(){inta=6,b=0,c=0;for(;a&&(1)==0);){b+=a;a-=c++;}printf("%d,%d,%d\n",a,b,c);}则程序的输出结果
以下叙述正确的是
以下选项中关于程序模块化的叙述错误的是
随机试题
简述劳动安全卫生立法的作用。
合议庭应当提请院长决定提交审判委员会讨论决定的案件有
A.褪黑素B.卵泡刺激素C.黄体生成素D.促甲状腺激素E.促肾上腺皮质激素延缓性成熟的是
某宗工业用地面积为5000m2,容积率为1.0,楼面地价为800元/m2,若城市规划部门批准将该地块改为商住用地,容积率为8.0,其中商业用途建筑面积占40%,楼面地价为3000元/m2,居住用途建筑面积占60%,楼面地价为1000元/m2。该宗地块上理论
打开报表平台,设置报表格式并保存文件。打开考生文件夹下的“管理费用明细表-1.srp”报表,设置A1单元格的文字为“黑体”,16号字,A1单元格内容修改为“2014年管理费用明细表”。
关于“节约”的说法中,正确的是()。
立定跳远是发展下肢()的运动项目。
威海卫之战
ATM技术的主要特征有:信元传输、面向连接、【 】和服务质量。
Comparisonsweredrawnbetweenthedevelopmentoftelevisioninthe20thcenturyandthediffusionofprintinginthe15thand
最新回复
(
0
)