老大一萌新了 2021-10-21 11:10 采纳率: 100%
浏览 75
已结题

for循环里面的if语句中的break没有跳出循环



```c++
#include<iostream>
#include<string>
#include<iomanip>
#include<fstream>
using namespace std;
void main()//主函数
{
    char ch[1000];
    int N;
    cin >> N;
    cout << "输入字符串:" << endl;
    cin.getline(ch, 1000, '/n');
    for (int i = 0; i < 1000; i++)
    {
        if (ch[i] <= 90 || ch[i] >= 65)
        {
            if ((ch[i] + N % 26) <= 90)
            {
                cout << (char)(ch[i] + N % 26);
            }
            else
                cout << (char)(ch[i] + N % 26 - 90 + 64);
        }
        else if (ch[i]==10||ch[i]==0)
            break;
        else
            cout << (char)ch[i];
    }
    cout << endl;
}

为什么没有跳出循环

```

  • 写回答

2条回答 默认 最新

  • zlebhs 2021-10-21 11:15
    关注

    if (ch[i] <= 90 || ch[i] >= 65),你看你写的这句话。。。这不就是包含了所有的值吗?和你写了一个if (true)一样,这样怎么才能进到else if里的break?

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 10月29日
  • 已采纳回答 10月21日
  • 创建了问题 10月21日