新手入门,请大家帮帮忙,很简单,谢谢!

dancing_with_wolf 2011-04-19 10:16:53
#include "stdio.h"
void main()
{
char a[100];
//int i=0,j=0;
//char m;

while(scanf("%s",a)!=-1)
{
char m='\0';
int i=0,j=0;
while(a[j]!='\0')
{
if(m<a[j]);
m=a[j];
j++;
}
init:
{
while(a[i]!=m)
{
printf("%c",a[i]);
i++;
}
if(a[i]!='\0')
{printf("%c(max)",a[i++]); if(a[i]!='\0') goto init;}
printf("\n");
}
}
}
这里是在输入一个字符串后,然后在这行字符串中找到ascii中最大的值,并在后面加上max字符,可是编译通过了,结果不对了,大家帮我看看,谢谢。比如,我输入的是dsssa,可是max却是加在a 后面,不是加在三个s后面
...全文
39 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
ysl_2007 2011-04-19
  • 打赏
  • 举报
回复
楼上正确,我也刚刚调出来~
书虫 2011-04-19
  • 打赏
  • 举报
回复

void main()
{
char a[100];
//int i=0,j=0;
//char m;

while(scanf("%s",a)!=-1)
{
char m='\0';
int i=0,j=0;
while(a[j]!='\0')
{
if(m<a[j]) // 多了个;号
m=a[j];
j++;
}
init:
{
while(a[i]!=m && a[i]!='\0') // 少了个判断
{
printf("%c",a[i]);
i++;
}
if(a[i]!='\0')
{
printf("%c(max)",a[i++]);
if(a[i]!='\0')
goto init;
}
printf("\n");
}
}
}


修改如上

33,311

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 新手乐园
社区管理员
  • 新手乐园社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧