例题:下列给定程序中,函数fun的功能是:用冒泡法对5个字符串按由小到大的顺序进行排序。
注意:不要改动main函数,不能增行或删行,也不能更改程序的结构。
代码如下:
#include<stdio.h>
#include<string.h>
#define MAX 20
void fun(char*str[5])
{
int i,j;
char*p;
for(i=0;i<5;i++)
{
for(j=i+1;j<5;j++)
{
if(strcmp(*(str+i),*(str+j))>0)
{
p=*(str+i);
*(str+i)=*(str+j);
*(str+j)=p;
}
}
}
}
main()
{
int i;
char*str[5],s[5][MAX];
for(i=0;i<5;i++)
str[i]=s[i];
printf("\nEnter 5 sting(1 sting at each line):\n");
for(i=0;i<5;i++)
scanf("%s",str[i]);
fun(str);
printf("The strings after sorting:\n");
for(i=0;i<5;i++)
printf("%s ",str[i]);
printf("\n");
}
输出运行窗口如下:
本周其他练习
C语言编程>第二十一周 ① 下列给定程序中,函数fun的功能是:比较两个字符串,将长的字符串的首地址作为函数值返回。
C语言编程>第二十一周 ② 请补充main 函数,该函数的功能是:把一维数组中的元素逆置,结果仍然保存在原数组中。
C语言编程>第二十一周 ③ 下列给定程序中,函数fun的的功能是:为一个偶数寻找两个素数,这两个素数之和等于该偶数,并将这两个素数通过形参指针传回主函数。
C语言编程>第二十一周 ④ 请补充main函数,该函数的功能是:打印出1~99中满足个位数字的平方等于其本身的所有数。
C语言编程>第二十一周 ⑤ 下列给定程序中,函数fun的功能是:用冒泡法对5个字符串按由小到大的顺序进行排序。
C语言编程>第二十一周 ⑥ 请补充main函数,该函数的功能是:从键盘输入一个字符串,即一个指定,然后把这个字符及其后面的所有字符全部删除,结果仍然保存在原串中。
C语言编程>第二十一周 ⑧ 请补充main函数,该函数的功能是:输出方程组a+b=52,a+2b=60的一组正整数解。本题的结果是a=44,b=8。
越努力越幸运!
加油,奥力给!!!