有以下程序: void sott(int a[], int n) { int i, j, t; for(i=0; i<n-1; i++) for(j=i+1; j<n; j++) if(a[i]<a[j]){t=a[i];a

admin2010-09-05  32

问题 有以下程序:    void sott(int a[], int n)    { int  i, j, t;    for(i=0; i<n-1; i++)    for(j=i+1; j<n; j++)    if(a<a[j]){t=a;a=a[j];a[j]=t;)    }    main()    {int aa[10]={1, 2, 3, 4, 5, 6, 7, 8, 9, 10}, I;    sort(aa+2, 5);    for (i=0; i<10; i++)printf("% d", aa);    printf("\n");    }    程序运行后的输出结果是______。

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

答案C

解析 aa+2=aa[2],因此sort(aa+2,5)是从aa[2]开始,依次与后面的元素进行比较,将当前值小于其后一项的值进行互换,循环5次。
转载请注明原文地址:https://kaotiyun.com/show/iuWp777K
0

最新回复(0)