我的这个程序有点问题,请高手指教一下。感激~
#include<stdio.h>#include<stdlib.h>
#include<string.h>
#define N 100
void sorted(char *line,int n)
{
int i,j;
char *temp,*p[N];
for(i=0;i<n;i++)
{
scanf("%s",line);
p[i]=(char*)calloc(strlen(line),1);
strcpy(p[i],line);
}
for(i=1;i<n;i++)
for(j=0;j<n-1;j++)
{
if(strcmp(p[j],p[j+1])>0)
{
temp=p[i];
p[j]=p[j+1];
p[j+1]=temp;
}
}
}
void main()
{
int i,n;
char line[N];
printf("请输入n= ");
scanf("%d",&n);
printf("请输入%d个字符串:\n",n);
sorted(line,n);
printf("字符串排序后为:\n");
//for(i=0;i<n;i++)
printf("\n %s",line);
// printf("\n %s",line[i]);
printf("\n");
}
字符串的排列问题,就是打印不出排列后的全部字符串。
请高手指教一下。。。qq 285847630 感激不尽。。。