永发信息网

求助: 用C语言把一组数组倒序排列输出? 1,2,3,4,5,6

答案:3  悬赏:30  手机版
解决时间 2021-04-08 03:37
  • 提问者网友:太高姿态
  • 2021-04-07 10:55
求助: 用C语言把一组数组倒序排列输出? 1,2,3,4,5,6
最佳答案
  • 五星知识达人网友:不如潦草
  • 2021-04-07 11:21
你现在的数组是否是升序的?还是杂乱的?
另外,你倒序是必须要倒序排列数据还是仅仅是倒序输出而已,如果仅仅是输出可以不排序, 从后往前打印就行了。

下面这个例子是将升序数据倒序排列并输出
#include <stdio.h>

#define N 6

int main(void)
{
int num[N] = {1, 2, 3, 4, 5, 6};
int i, temp;

for (i = 0; i < N / 2; i++) { // 将升序数据倒序排列
temp = num[i];
num[i] = num[N - 1 - i];
num[N - 1 - i] = temp;
}

for (i = 0; i < N; i++) { // 循环输出倒序后的数据
printf("%d\n", num[i]);
}

return 0;
}
全部回答
  • 1楼网友:掌灯师
  • 2021-04-07 13:50
#include<stdio.h> #include<stdlib.h> #include<string.h> int main(void) { char str[81]; int i,j; char ch,*p=str; printf("输入字符串:"); gets(str); for(i=0,j=strlen(str)-1;i<j;i++,j--) { ch=*(p+i);*(p+i)=*(p+j);*(p+j)=ch; } printf("逆向排序后的结果是:%s\n",str); system("pause"); return 0; }希望能帮到你,祝你愉快!
  • 2楼网友:妄饮晩冬酒
  • 2021-04-07 12:15

这是个将数组x的元素倒置的函数,并没有排序功能,如果原来是增序的,通过该函数会啊改为减序的,相反则反。

m = (n - )/2; // m保存的是这个数组元素个数的一半

i = x;    // i指向数组的第一个元素

j = x + n - 1; // j指向数组的最后的元素

在循环体中,首先交换i和j所指的元素的位置,增加i值的同时,减小j的值。

我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯