无限循环不打印所有值

Inifinite loop not printing all values

本文关键字:打印 无限循环      更新时间:2023-10-16
#include<iostream.h>
#include<conio.h>
void main()
{   
    clrscr();
    int a,b;
    a=0;
    cin>>b;
    do
    {
    if (b==1)
        cout<<"case1a " ;
    else if (b==2)
        cout<<"case 1b ";
        a=a+1;
    }
    while(a=0);
    cout<<"Interval";
    do
    {
    if (b==1)
        cout<<"case 2a";
    else if (b==2)
        cout<<"case 2b";
        a=a-1;
    }
    while(a=1);
    getch();
}

上面的代码创建了一个无限循环。预期的输出是"case1a case2a case3a case4a"无限次,但程序只无限次打印"case1a"

那么我该如何纠正这个问题并获得我想要的输出呢?

PS 我使用 shift+break 暂停输出以查看屏幕上打印的内容

while(a=0)应该while(a==0)

您的第二while也是如此.

您将赋值运算符=与相等运算符==混淆了。

while 语句后没有分号 ( ; )。