回复 楼主 zzzmx
#include <stdio.h>
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=*p2;
*p2=*p1;
*p1=temp;
}
}
main()
{
int i,n;
char *p, num[20];
printf("input n:");
scanf("%d",&n);
getchar();//这个是把缓冲区的回车键取出来,不然第一个字符就会是回车,当然屏幕不会输出的fflush(stdin)或者用这个
printf("please input these numbers:\n");
//gets(num);
for(i=0;i<n;i++)
{
scanf(" %c",&num[i]);//因为下面这个scanf(" %c",&num[i]);这里%c前面加空格,是为了屏蔽enter,tab 空格键的
}
for(i=0;i<n;i++)
printf("%c",num[i]);
printf("\n");
p=num;
sort(p,n);
printf("now,the sequence is:\n");
for(i=0;i<n;i++)
printf("%c",num[i]);
printf("\n");
}
图片附件: 游客没有浏览图片的权限,请
登录 或
注册