元素逆置 (邓 2.3)

题目描述:

将一顺序表A中的元素逆置。例如原来顺序表A中的元素是100,90,80,70,60,50,40,逆置后为40,50,60,70,80,90,100。

思路分析:

将顺序表A中的元素输入数组a,若数组a中元素个数为n,将下标为0,1,2,…,(n-1)/2的元素依次与下标为n,n-1,…, (n-1)/2的元素交换,输出数组a的元素。

C语言代码实现:

//逆置
#include<stdio.h>
#include<stdlib.h>
int main()
{
 int i,n;
 int k,a[100]={0};//将数组全部初始化为0
 printf("请输入元素个数n:\n");
 scanf("%d",&n);
 for(i=0;i<=n-1;i++)
 {
   printf("请输入数组元素:");
   scanf("%d",&a[i]);
 }
 printf("逆置前数组中元素为:");
 for(i=0;i<=n-1;i++)
  printf("%d",a[i]);
printf("\n");//换行
 for(i=0;i<=(n-1)/2;i++)
 {k=a[i];//将数组中的第i位移出给k
   a[i]=a[n-1-i];//将数组中的第(n-1-i)位移到第i位
   a[n-1-i]=k;//把由k代表的a[i]移动到第(n-1-i)位
 }
  printf("逆置后数组中元素为:");
  for(i=0;i<=n-1;i++)
  printf("%d",a[i]);
return 0;
}

实现结果:

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/gy99csdn/article/details/82830000
2.3
今日推荐