一个将单词排序的程序,用了选择排序却执行不了,请各位帅气鱼油帮我看一下。
#include<stdio.h>#include<string.h>
#define LEN 10
#define N 10
void sort(char words);
int main(void)
{
int i=0;
char words;
printf("请输入%d个单词:\n",N);
while(i<N)
{
scanf("%s",words);
i++;
}
sort(words);
return 0;
}
void sort(char words)
{
int i=0;
int j,k;
char *tmp;
for(i=0;i<(N-1);i++)
{
k=i;
for(j=i+1;j<N;j++)
{
if(strcmp(words,words)==1)
{
k=j;
}
}
strcpy(tmp,words);
strcpy(words,words);
strcpy(words,tmp);
}
for(i=0;i<N;i++)
{
printf("%s ",words);
}
}
一个简单地将N个单词进行排序的程序,自己用了冒泡法跟插入法都可以执行,唯独用这个选择排序执行不了,还请各位大佬有空帮我看一下,多谢!{:10_254:} 临时变量tmp,改为数组定义,char tmp; ZYLong 发表于 2018-12-4 00:00
临时变量tmp,改为数组定义,char tmp;
谢谢您的帮助,可以执行了,请问我这里用指针为什么执行不了呢?我在其他排序方法中也用指针,不过不知道为什么到这里就执行不了了。{:10_257:} 提一句,复杂度可以降一降。
页:
[1]