C语言 输入一组数字,利用交换法将数字倒序
四五又十 2019-03-09 03:47:23
今天学习C语言的函数一节时,看到书上利用了这个方法求10个数字,我将其改编成n个数字,本人也是初学C语言,希望大佬指正,我的Q Q:15379990340。
C语言 输入一组数字,利用交换法将数字倒序
例如输入
5 6 9 8 4 0 2
样例输出
2 0 4 8 9 6 5
下面是代码:
#include <stdio.h>
int main()
{
//将要进行反序的数字变为数组
int count,i,j;
int num[100];
printf("请输入要输入的数字长度\n");
scanf("%d",&count);
printf("请输入数字\n");
for(i=0;i<=count-1;i++)
{
scanf("%d",&num[i]);
}
void inv(int *array,int n); //定义函数倒序函数inv
inv(num,count);
for(j=0;j<=count-1;j++) //输出已经倒序的数组
{
printf("%d\t",num[j]);
}
return 0;
}
void inv(int *array,int n) //函数inv
{
int i,j,m,temp;
m=(n-1)/2; //计算交换的次数,若数组为奇数,则中间数与自己交换
for(i=0;i<=m;i++)
{
j=n-1-i;
temp=array[i]; //交换如第一个数与最后一个数交换
array[i]=array[j];
array[j]=temp;
}
return ;
}
```