vs2015循环内容不显示

本人小白,使用vs2015。用电脑运行一下代码时,无法输出循环的内容,用手机安装的编译器却可以。

代码:

#include<iostream>
using namespace std;
int main()
{
    int sum;
    int number;
    int i;
    int a, b;
    int sum1;
    string p = "___";
    cout << "输入题目数:";
    cin >> number;
    cout << "四则运算题目数:" << number << endl;
    for (i = 0; i<number; i++)//控制程序的题目数
    {
        a = rand() % 1000;//产生随机数
        b = rand() % 10;
        sum = a / b;
        sum1 = a % b;
        if (a == 0 || b == 0 || b == 1 || a <= 40)
        {
            continue;
        }
        else if (sum1 == 0)
        {
            cout << a << "÷" << b << "=" << sum << endl;
        }
        else
        {
            continue;
        }
    }
    return 0;
}

int sum1;

这里的分号应该是英文的;

sum=a/b;

这一句有可能b=0所以会报错

rand()函数是不是需要把系统时间设置为种子?不然你每次产生的都是相同的式子。

 

下面的代码我在你的代码的基础上修改的:

#include<iostream>
#include<cstring>
#include<ctime>
using namespace std;
int main()
{
    int sum;
    int number;
    int i;
    int a, b;
    int sum1;
    string p = "___";
    cout << "输入题目数:";
    cin >> number;
    cout << "四则运算题目数:" << number << endl;
    srand(time(NULL));
    for (i = 0; i < number; i++)//控制程序的题目数
    {
        a = rand() % 1000;//产生随机数
        b = rand() % 10;
        /*sum = a / b;
        sum1 = a % b;*/
        if (a != 0 && b != 0 && b != 1 && a > 40 && a % b == 0) {
            sum = a / b;
            cout << a << "÷" << b << "=" << sum << endl;
        }
        else i--;//假如不符合要求那么这一次循环就不算,所以i--,这样就保证一定可以输出number个。

//如果没有i--,可能运气不好,重复number次一个式子都不符合,那就输出不了。
        /*if (a == 0 || b == 0 || b == 1 || a <= 40)
        {
            continue;
        }
        else if (sum1 == 0)
        {
            cout << a << "÷" << b << "=" << sum << endl;
        }
        else
        {
            continue;
        }*/
    }
    return 0;
}

我也是c++新手,希望我的回答能帮助到你

for (i = 0; i<number; i++) //控制程序的题目数

 

你在循环的内部把number 和其他值打印出来看看,有什么变化。

 cout << “number:" << number <<  endl;