将N个数按输入时顺序的逆序排列用指针完成

如题所述

#include<stdio.h>

int main()

{

void sort(char*p,int m);

int i,n;

char*p,num[20];

printf("input n:");

scanf("%d",&n);

printf("please input these numbers:\n");

for(i=0;i<n;i++)

scanf("%d",&num<i>);

p=&num[0];

sort(p,n);

printf("Now,the sequence is:\n");

for(i=0;i<n;i++)

printf("%d",num<i>);

return 0;

}

void sort(char*p,int m)

{

int i;

char temp,*p1,*p2;

for(i=0;i<m/2;i++)

{

p1=p+i;

p2=p+(m-1-i);

temp=*p1;

*p1=*p2;

*p2=temp;

}

}

扩展资料:

printf用法

printf()函数的调用格式为:printf("<格式化字符串>",<参量表>)。

其中格式化字符串包括两部分内容:一部分是正常字符,这些字符将按原样输出;另一部分是格式化规定字符,以"%"开始,后跟一个或几个规定字符,用来确定输出内容格式。

参量表是需要输出的一系列参数,其个数必须与格式化字符串所说明的输出参数个数一样多,各参数之间用","分开,且顺序一一对应,否则将会出现意想不到的错误。

比如:

int a=1234;

printf("a=%d\n",a);

输出结果为a=1234。

//以下程序用于获得输入值i,j并将其输出(i,j之间以逗号隔开)

#include<stdio.h>

int main()

{

int i,j;

scanf("%d%d",&i,&j);

printf("i=%d;j=%d",i,j);

温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-06-10
#include<stdio.h>
#define N 10

int main(){
int a[N], *p=a;
int i;
for(i=0; i<N; i++)
scanf("%d",*(p+i));
for(i=N-1; i>=0; i--)
printf("%5d",*(p+i));
printf("\n");
return 0;
}
第2个回答  2015-06-10
#include <stdio.h>
void reverse(int a[],int n)
{ int *p;
for(p=a+n-1;p>=a;p--)
printf("%4d",*p);
printf("\n");
}
main()
{ int a[20],n;
int i;
printf("Input the length of array:");
scanf("%d",&n);
printf("Input the number of array:");
for(i=0;i<n;i++)
scanf("%d",&a[i]);
reverse(a,n);
}本回答被网友采纳
相似回答