A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© jiangenhao 中级黑马   /  2014-4-24 22:23  /  1050 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 jiangenhao 于 2014-4-26 00:42 编辑

下面程序的功能是在字符串s中找出最大的字符并放在第一个位置上,并将该字符前的原字符往后顺序移动,如:boy&girl变成ybo&girl。请选择填空。
#include "stdio.h"
#include "string.h"
    main()
    {
        char s[80], *t, max, *w;
        t=s;
        gets(t);
        max=*(t++);
        while (*t!='\0')
        {
            if (max<*t)
            { max=*t;  w=t; }
            t++;
        }
        t=w;
        while (【1】)
        {
            *t=*(t-1);
            【2】;}
        *t=max;
        puts(t);
    }

评分

参与人数 1技术分 +1 收起 理由
jing迪 + 1

查看全部评分

4 个回复

倒序浏览
你那个地址貌似总出错 我写了个你参考下
#include "stdio.h"
#include "string.h"
int   main()
    {
        char s[]="boy&girl";
int t, max,i=0,length=0;
puts(s);
length=strlen(s);
max=s[0];
for(i=0;i<length;++i){
if(max<s[i]){
max=s[i];
t=i;
}
}
for(i=t;i>0;i--){
s[i]=s[i-1];
}
s[0]=max;

        puts(s);
return  0;
    }
回复 使用道具 举报
我想知道空里面填什么 这是 我们一道作业题 坐不上了 老师也不讲 请教大家
回复 使用道具 举报
谁能指点一下啊 做不上啊
回复 使用道具 举报
研究明白了 [1]处填 t>0;
[2]处填 t--;
结束提问 了 谢谢大家
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马