| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 428 人关注过本帖
标题:求大神看看。。。。这个break为什么跳不出来?
只看楼主 加入收藏
天坑
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2012-11-22
结帖率:0
收藏
已结贴  问题点数:20 回复次数:7 
求大神看看。。。。这个break为什么跳不出来?
#include<iostream>
using namespace std;
int main()
{
    char a[100] ;
    for(int i=0;i<100;i++)
    {  a[i]=cin.get();
       if(a[i]=='END')
       break ;
       else
       {if(a[i]=='A'||a[i]=='W'||a[i]=='F')
         a[i]='I';
      if(a[i]=='C')
         a[i]='L';
     if(a[i]=='M')
         a[i]='o';
     if(a[i]=='S')
         a[i]='v';
     if(a[i]=='D'||a[i]=='P'||a[i]=='G'||a[i]=='B')
         a[i]='e';
     if(a[i]=='L')
         a[i]='Y';
    if(a[i]=='X')
        a[i]='u'; }}
       for(int j=0;j<100;j++)
           cout<<a[j];
cout<<endl;
return 0;
}
跪求!!
搜索更多相关主题的帖子: include 
2012-11-22 15:39
yuccn
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:何方
等 级:版主
威 望:167
帖 子:6815
专家分:42393
注 册:2010-12-16
收藏
得分:3 
if(a[i]=='END') -> if (strcmp(a,"END") == 0)

我行我乐
公众号:逻辑客栈
我的博客:
https://blog.yuccn. net
2012-11-22 16:00
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9025
专家分:54030
注 册:2011-1-18
收藏
得分:3 
看这种不排版的代码,对眼睛绝对是一种折磨
另外,除了2楼说的,逻辑也多处错乱,a没有字符串尾部的'\0',所以不可以用strcmp比较;a[i]=='C'时a[i]='L',a[i]=='L'时a[i]='Y',干嘛不直接写成a[i]=='C'时a[i]='Y'?如果a没cin.get()到100个字符,你想cout<<a[j]啥个随机值?
2012-11-22 16:38
mmmmmmmmmmmm
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
威 望:8
帖 子:388
专家分:1809
注 册:2012-11-2
收藏
得分:3 
楼主 按crtl+z 可以跳出来的

我们的目标只有一个:消灭0回复!
while(1)
++money;
2012-11-22 22:50
mmmmmmmmmmmm
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
威 望:8
帖 子:388
专家分:1809
注 册:2012-11-2
收藏
得分:0 
用string修改了一下 供参考
程序代码:
#include<iostream>
#include <string>
using namespace std;

int main()
{
    string a;
    while (cin >> a)
    {
        string::size_type i=0;
        for ( ; i!=a.size(); i++)
        {
            if(a[i]=='A'||a[i]=='W'||a[i]=='F')
                a[i]='I';
            if(a[i]=='C')
                a[i]='L';
            if(a[i]=='M')
                a[i]='o';
            if(a[i]=='S')
                a[i]='v';
            if(a[i]=='D'||a[i]=='P'||a[i]=='G'||a[i]=='B')
                a[i]='e';
            if(a[i]=='L')
                a[i]='Y';
            if(a[i]=='X')
                a[i]='u';
        }
        cout<<a<<endl;

    }

    return 0;
}

我们的目标只有一个:消灭0回复!
while(1)
++money;
2012-11-22 22:55
zxd543
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:内蒙古
等 级:贵宾
威 望:17
帖 子:453
专家分:2351
注 册:2012-4-12
收藏
得分:3 
  if(a[i]=='END')//a[]字符类型 只能存一个字符
           break ;

马马虎虎 不吝赐教 我是路过蹭分滴
2012-11-23 23:34
天剑山
Rank: 4
等 级:业余侠客
威 望:3
帖 子:119
专家分:266
注 册:2012-8-3
收藏
得分:3 
汗...应该是和文件结束符比较吧?貌似不是END吧?
2012-11-24 14:24
lyj123
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:60
专家分:152
注 册:2010-11-15
收藏
得分:3 
同意楼上。。。应该是和文件结束符比较!!
    还有没有用文件流的话与文件结束符比较在键盘上做不到,除非手动地输入(就不用比较了)
或者用重定向\管道的方法来实现

相互帮助

2012-11-25 16:33
快速回复:求大神看看。。。。这个break为什么跳不出来?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.020550 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved