
一道C语言题,急……
编写一个书名排序程序,输入10个书名存入一个二维数组,用函数voidsortstring(char*是)实现他们的字典顺序,在主函数输出结果。因为我还是一个初学者,希望简...
编写一个书名排序程序,输入10个书名存入一个二维数组,用函数
void sortstring(char *是)实现他们的字典顺序,在主函数输出结果。
因为我还是一个初学者,希望简单明了一些…… 展开
void sortstring(char *是)实现他们的字典顺序,在主函数输出结果。
因为我还是一个初学者,希望简单明了一些…… 展开
1个回答
展开全部
本题的一个完整的c程序如下,在win-tc和Dev-c++下调试通过。每个书名设定不超过80字符,书名中间可以有空格等。
#include<stdio.h>
#include<string.h>
#include<conio.h>
#define N 10
main()
{
void sort(); /*声明排序函数*/
int i;
char s[N][80],*p[N];
printf("Please input %d strings one by one:\n",N);
for(i=0;i<N;i++)
{gets(s[i]);
p[i]=s[i];
}
sort(p);
printf("The sequence after sort is:\n");
for(i=0;i<N;i++)
printf("%s\n",p[i]);
getch();
}
void sort(char *a[N]) /*排序函数*/
{
char *temp;
int i,j;
/* 选择排序 */
for(i=0;i<N-1;i++)
for(j=i+1;j<N;j++)
if(strcmp(a[i],a[j])>0)
{
temp=a[i];
a[i]=a[j];
a[j]=temp;
}
}
#include<stdio.h>
#include<string.h>
#include<conio.h>
#define N 10
main()
{
void sort(); /*声明排序函数*/
int i;
char s[N][80],*p[N];
printf("Please input %d strings one by one:\n",N);
for(i=0;i<N;i++)
{gets(s[i]);
p[i]=s[i];
}
sort(p);
printf("The sequence after sort is:\n");
for(i=0;i<N;i++)
printf("%s\n",p[i]);
getch();
}
void sort(char *a[N]) /*排序函数*/
{
char *temp;
int i,j;
/* 选择排序 */
for(i=0;i<N-1;i++)
for(j=i+1;j<N;j++)
if(strcmp(a[i],a[j])>0)
{
temp=a[i];
a[i]=a[j];
a[j]=temp;
}
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |