C语言:从键盘输入长度为10的字符串,除第一和最后一个字符外按降序排序,编写函数指针传递完成,咋写?

如题所述

代码文本:

#include "stdio.h"

#define N 10

void myf(char *p){

char i,j,k,n;

for(n=0;p[n];n++);

for(n--,i=1;i<n-1;i++){

for(j=(k=i)+1;j<n;j++)

if(p[k]<p[j])

k=j;

if(k!=i)

j=p[k],p[k]=p[i],p[i]=j;

}

}

int main(int argc,char *argv[]){

char s[N+1];

printf("Enter a string(length 10)...\n");

scanf("%10s",s);

printf("After ordering:\n");

myf(s);

puts(s);

return 0;

}

温馨提示:答案为网友推荐,仅供参考
第1个回答  2020-06-12
10个字符,除去首位,还又8个,
降序排列,那就要比大小,比大小一定要2层循环,一层不行的
For(i=1,i<10,i++)
For(j=i+1,j<10,j++)
If S[i]>s[j]
替换

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网