实验 p29 【2】题:
输入一个正整数n(1<n<=10),再输入n个整数存入一维数组,按逆序重新存放数组元素后再输出。
程序运行示例:
Input n:5
Input 5 integers:4 6 5 7 1
Output:1 7 5 6 4
。
。
。
先来谈谈个人理解,逆序存放我觉得应该是改变数组内的值,而不只是单纯的逆序输出
所以代码如下:
#include<stdio.h>
#define N 10
int main()
{
int a[N];
int n,t,b=0,c,t1;
printf("Input n:");
scanf("%d",&n);
printf("Input %d integers:",n);
for(t=0;t<n;t++)
scanf("%d",&a[t]);
printf("Output:");
if(n%2==1)
b=(n-1)/2;
else
b=n/2;
for(t1=0;t1<b;t1++)
{
c=a[t1];
a[t1]=a[n-t1-1];
a[n-t1-1]=c;
}
for(t=0;t<n;t++)
printf(" %d",a[t]);
return 0;
}
当然,如果我理解有误,这题只需要单纯的逆序输出的话
printf输出用for( t=n-1 ; t>=0 ; t-- )就好,简单粗暴有效( = = )