C语言中:将一维数组中的n(n<=50)个数按逆序存放。怎么编程?
1个回答
展开全部
思路就是将
数组中第一个和最后一个换位置
第二个和倒数第二个换位置
以此类推
源代码如下:
#include<stdio.h>
int main(){
int n; //n个数字
int i; //循环变量
int num[50];
scanf("%d",&n);
for(i=0;i<n;i++) scanf("%d",&num[i]);
for(i=0;i<n/2;i++){
int t; //交换值的中间变量
t=num[i];
num[i]=num[n-i-1]; //注意是n-i后还要-1
num[n-i-1]=t; //因为当n为5的时候,num[0]对应的是[4]而不是[5]
}
for(i=0;i<n;i++){
printf("%d ",num[i]);
}
return 0;
}
追问
要出结果是不是要在光标框那输入数据?(自学新手不太懂)还有,要输入多少个数?
追答
当然也可以在定义数组的同时直接确定数组元素
例如:int num[]={1,2,3,4,5};
此时n=sizeof(num)/sizeof(num[0]);
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询