C程序设计第六章作业 5

程序员成长之旅 · 程序员成长之旅/C语言/习题(C语言程序设计)/第六章习题 · 298 字

问:

将一组排好序的数组以逆序(相反)的方式排序

答:

#include<stdio.h> //奇数版

int main() {

int i = 0, j = 0;

int Num[10] = { 1,2,3,4,5,6,7,8,9};

int Temp1 = 0, flag = 0;

printf("Original data is :\n");

for (i = 0; i < 10; i++) {

printf("%d\t", Num[i]);

}

printf("\n");

flag = 8;//指向最后一个数据

for (i = 0; i <4; i++) {

Temp1 = Num[i];

Num[i] = Num[flag];

Num[flag] = Temp1;

flag--;//每次数据指向-1

}

printf("New data is :\n");

for (i = 0; i < 9; i++) {

printf("%d\t", Num[i]);

}

}

运行截图:

#include<stdio.h> //偶数版

int main() {

int i = 0, j = 0;

int Num[10] = { 1,2,3,4,5,6,7,8,9,10 };

int Temp1 = 0, flag = 0;

printf("Original data is :\n");

for (i = 0; i < 10; i++) {

printf("%d\t", Num[i]);

}

printf("\n");

flag = 9;//指向最后一个数据

for (i = 0; i < 5; i++) {

Temp1 = Num[i];

Num[i] = Num[flag];

Num[flag] = Temp1;

flag--;//每次数据指向-1

}

printf("New data is :\n");

for (i = 0; i < 10; i++) {

printf("%d\t", Num[i]);

}

}

运行截图: