执行下列程序时,如果输入asbr,写出运行结果。
#include<stdio.h>
void fun(t)
char t[];
{char c;int i,j;
for(i=strlen(t)-1;i;i--)
for(j=0;j<i;j++)
if(t[j]<t[j+1])
{ c=t[j]; t[j]=t[j+1]; t[j+1]=c; } }
main()
{ char s[81];
printf("\n Please enter a characterstring:");
gets(s); fun(s); printf("%s\n",s); }
结果:
求大神分析。。。
这是一个对输入字符串按照ASCII大小进行冒泡排序的算法,从大到小排序并输出。
请采纳为最佳,有什么不懂请追问
麻烦把程序运行过程分析一下。尤其是gets(s); fun(s); 和这个void fun(t)是怎么么个意思。
追答get(s)是一个字符串读取函数,读取你输入的字符,fun(s)是调用void fun(t)函数进行排序,程序运行的流程是这样的:通get(s)获得你输入的字符,然后保存在字符数组s[81]中,然后把数组的首地址s传给fun()函数,进行排序,排序结束后输出结果