有以下程序: #include<stdio.h> struet S {int n;int a[20];}; void f(street S*p) { int i,j,t; for(i=0;i<p->n-1;i++) for(j=i+1;j<p->n;j++

admin2020-11-23  22

问题 有以下程序:
#include<stdio.h>
struet S
{int n;int a[20];};
void f(street S*p)
{
int i,j,t;
for(i=0;i<p->n-1;i++)
for(j=i+1;j<p->n;j++)
if(p->a>p->a[j])
{
t=p->a
p->a=p->a[j];
p->a[j]=t;
}
}
main()
{
int i:
struct S s={10,{2,3,1,6,8,7,5,4,10,9}};
f(&s);
flor(i=0;i<s.n;i++)
printf("%d,",s.a);
}
程序的运行结果是(    )。

选项 A、2,3,1,6,8,7,5,4,lO,9,
B、10,9,8,7,6,5,4,3,2,1,
C、1,2,3,4,5,6,7,8,9,10,
D、10,9,8,7,6,1,2,3,4,5,

答案C

解析 本题中子函数f的功能是对结构体变量s中第二个成员数组中的所有数据进行从小到大的冒泡排序,所以结果是C选项。
转载请注明原文地址:https://kaotiyun.com/show/ww3p777K
0

最新回复(0)