标题
单词排序
描述
定义一个二维字符数组str[10][20],行号表示单词序号,列号表示单词最大长度,输入一个正整数N(N≤10),表示单词数,使用函数wd_sort()完成单词的排序,按字母顺序从小到大排列单词,使用指针完成地址传递,主函数完成数组输入和输出。
时间限制
1
内存限制
10000
类别
1
输入说明
输入一个二维字符数组str和一个正整数N,行号表示单词序号,列号表示单词最大长度。
输出说明
格式输出:单词之间空一行。
输入样例
3
word fish egg
输出样例
egg
fish
word
提示
使用指针作形参,实现地址传递。
数组定义后初始化。
使用strcmp()、strcpy()和strlen()函数,头文件string.h。
#include<stdio.h>
#include<string.h>
void wd_sort(char (*str)[20],int N)
{
int i,j;
char temp[20];
for(i=0;i<(N-1);i++)
{
for(j=0;j<(N-i-1);j++)
{
if(strcmp(str[j],str[j+1])>0)
{
strcpy(temp,str[j]);
strcpy(str[j],str[j+1]);
strcpy(str[j+1],temp);
}
}
}
}
int main()
{
int N,i;
char str[10][20];
scanf("%d",&N);
for(i=0;i<N;i++)
{
scanf("%s",&str[i]);
}
wd_sort(str,N);
for(i=0;i<N;i++)
{
printf("%s\n",str[i]);
}
return 0;
}