有以下程序 #include void fun(int *s, int n1, int n2) { int i, j, t; i=n1; j=n2; while( i

admin2021-02-25  26

问题 有以下程序
#include
void fun(int *s, int n1, int n2)
{
int i, j, t;
i=n1; j=n2;
while( i{
t=s; s=s[j]; s[j]=t; i++; j--;
}
}
main()
{
int a[10]={1,2,3,4,5,6,7,8,9,0}, k;
fun(a,0,3); fun(a,4,9); fun(a,0,9);
for(k=0;k<10;k++)
printf("%d", a[k]);
printf("\n");
}
程序的运行结果是( )。

选项 A、5678901234
B、4321098765
C、0987654321
D、0987651234

答案A

解析 函数fun()的功能是将数组s中下标为n1和n2之间的数据逆序,所以调用语句fun( a,0,3 ); fun( a,4,9 ); fun( a,0,9 );结束后,是先将数组p中下标为0至3之间的元素逆序,然后将下标为4至9之间的元素逆序,再将整个数组逆序,答案选A)。
转载请注明原文地址:https://jikaoti.com/ti/3yz0FFFM
0

最新回复(0)