acm中字符串处理问题

GCC-pig 2011-04-19 04:06:35
1235: 盐荒子孙2
Time Limit: 1 Sec Memory Limit: 128 MB
Submit: 9 Solved: 2
[Submit][STATUS][Web Board]
Description


没有盐,做饭只能用酱油。

将所有的salt替换为soy sauce,不管大小写。

Input
包含salt的英文语料

Output
用soy sauce替换salt后的输出

Sample Input
Salt is necessary
Water is not sAlt as salT
as you can make it soy-bean
sauce can be saLt
soy-bean sauce only
bean soy-bean sauce
Sample Output
soy sauce is necessary
Water is not soy sauce as soy sauce
as you can make it soy-bean
sauce can be soy sauce
soy-bean sauce only
bean soy-bean sauce
HINT

Source


//这个程序哪里有问题
#include <stdio.h>
#include <string.h>
int main()
{
int i;
char a[1000];

while(gets(a))
{

for(i=0;i<strlen(a);i++)
{
if(a[i]!='s'&&a[i]!='S')
{
continue;
}
if(a[i+1]!='a'&&a[i+1]!='A')
{
continue;
}
if(a[i+2]!='l'&&a[i+2]!='L')
continue;
if(a[i+3]!='t'&&a[i+3]!='T')
{
continue;
}
else
{
a[i]='1';
a[i+1]='1';
a[i+2]='1';
a[i+3]='1';
i=i+3;
}

}
for(i=0;i<strlen(a);i++)
{
if(a[i]=='1')
{
printf("soy sauce");
i=i+3;
}
else
printf("%c",a[i]);
}
printf("\n");
}

return 0;
}
...全文
176 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
Ulfsaar 2011-04-19
  • 打赏
  • 举报
回复
把你的代码改了下,你试试

#include <stdio.h>
#include <string.h>
int main()
{
int i;
char a[1000];

while(gets(a))
{

for(i=0;i<strlen(a);i++)
{
if(a[i]!='s'&&a[i]!='S')
{
continue;
}
if(a[i+1]!='a'&&a[i+1]!='A')
{
continue;
}
if(a[i+2]!='l'&&a[i+2]!='L')
continue;
if(a[i+3]!='t'&&a[i+3]!='T')
{
continue;
}
else
{
a[i]= -1;
i=i+3;
}

}
for(i=0;i<strlen(a);i++)
{
if(a[i]== -1)
{
printf("soy sauce");
i=i+3;
}
else
printf("%c",a[i]);
}
printf("\n");
}

return 0;
}

Ulfsaar 2011-04-19
  • 打赏
  • 举报
回复
else
{
a[i]='1';
a[i+1]='1';
a[i+2]='1';
a[i+3]='1';
i=i+3;
}

知道你哪错了,你的程序是检测到salt之后就将它都替换为1,第二遍遍历的时候再将1替换掉
这样的话,只要是输入串中有1,结果就不对
Ulfsaar 2011-04-19
  • 打赏
  • 举报
回复
报的是什么错?
原题链接?

64,642

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

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