为了账号安全,请及时绑定邮箱和手机立即绑定

c++问题求解,一个for循环为了不存入相同数据。

c++问题求解,一个for循环为了不存入相同数据。

C++
汪汪一只猫 2018-07-21 18:18:56
case 1:             for(i=0;i<s1;i++)             {                 if(st1[i]==(char)token)                     break;             }             if(i==s1)             {                 st1[s1++]=(char)token;                 str4+=' ';                 str4+=token;             }             break;第一次循环后,s1=1,并存入一个,然后读第二个时,i=0,第一个if判断不相同。就直接跳到下一个if判断,我原来想法是for循环结束再下一个if判断,怎么解决?
查看完整描述

1 回答

?
UYOU

TA贡献1878条经验 获得超4个赞

问题一:阁下的想法和初始想法不符合啊
for(i=0;i<s1;i++) 
{
//判断原数组中是否含有相同元素
//含有则退出
if(st1[i]==(char)token)
break;
}

                     if(i==s1)//for循环未经过break,所以 i==s1

        要求:我原来想法是for循环结束再下一个if判断,怎么解决?

额。。
增加个标志怎么样?
case 1:
bool flag =true;
for(i=0;i<s1;i++)
{
if(st1[i]==(char)token)
flag=false;
}
if(flag)
{
st1[s1++]=(char)token;
str4+=' ';
str4+=token;
}
break;
如何


查看完整回答
反对 回复 2018-07-27
  • 1 回答
  • 0 关注
  • 760 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信