C++ 之后从运行 switch 到 if 语句

标签 c++ if-statement for-loop switch-statement

<分区>

在 C++ 中,我试图在 switch 语句之后使用 if 语句。我如何运行 if 因为它没有运行它。开关只是运行。

输出是:

492.5
490
487.5
485
482.5
480
477.5
475
472.5
470
467.5

下一个输出减少-2.5。

#include <iostream>
#include <cmath>


using namespace std;
int main()
{
    double A(5), B(5), C(0), D(7.5), E(20), V(495), F, G, H, I, J, K, L, M, N, O, P;

    for (int t = 0; t <= 10; t = t + 1)
    {
        switch (t)
        {
            case 0:
            F = A + B + C + D - E + V;
            cout << F << endl;
            break;

            case 1:
            G = A + B + C + D - E + F;
            cout << G << endl;
            break;

            case 2:
            H = A + B + C + D - E + G;
            cout << H << endl;
            break;

            case 3:
            I = A + B + C + D - E + H;
            cout << I << endl;
            break;

            case 4:
            J = A + B + C + D - E + I;
            cout << J << endl;
            break;

            case 5:
            K = A + B + C + D - E + J;
            cout << K << endl;
            break;

            case 6:
            L = A + B + C + D - E + K;
            cout << L << endl;
            break;

            case 7:
            M = A + B + C + D - E + L;
            cout << M << endl;
            break;

            case 8:
            N = A + B + C + D - E + M;
            cout << N << endl;
            break;

            case 9: 
            O = A + B + C + D - E + N;
            cout << O << endl;
            break;

            case 10:
            P = A + B + C + D - E + O;
            cout << P << endl;
            break;

            case 11:
            if (B = B + 5)
            {
                F = A + B + C + D - E + V;
                G = A + B + C + D - E + F;
                H = A + B + C + D - E + G;
                I = A + B + C + D - E + H;
                J = A + B + C + D - E + I;
                K = A + B + C + D - E + J;
                L = A + B + C + D - E + K;
                M = A + B + C + D - E + L;
                N = A + B + C + D - E + M;

                cout << F << endl;
                cout << G << endl;
                cout << H << endl;
                cout << I << endl;
                cout << J << endl;
                cout << K << endl;
                cout << L << endl;
                cout << M << endl;
                cout << N << endl;

            }
        }

    }
    system("pause");
}

最佳答案

您的 for 语句结束于 t == 10..

for (int t = 0; t <= 10; t = t + 1)

而您的if 位于t 为11 的case 中。

......
case 10:
P = A + B + C + D - E + O;
cout << P << endl;
break;
case 11:
if (B == B + 5)
{
.....

因此,将 for-loop 终止条件从 10 提高到 11...

而且你的 if 有问题。即使你的意思是:

.....
if(B == B + 5) {     //doing if(B = B + 5) is adding 5 to B and checking whether its not 0
.....

关于C++ 之后从运行 switch 到 if 语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36609763/

相关文章:

c++ - 从 Objective C 调用带有回调的 C++ 方法

c++ - 使用 C++/SDL2 加载图像 - "unhandled exception", "access violation reading location"

C++:返回类型为 T 且不采用 T 类型参数的模板函数将无法编译

r - 提取向量的位置和值

javascript - jQuery - 检查输入、文本区域和选择的值是否在同一函数中不为空

c - 循环创建随机数,从现有数组读取,然后创建新数组——卡在 While 循环中

python - for循环列表理解中的多个变量

c++ - cmake多库场景

if-statement - Else/If 语句有助于快速

python - 如何在 Python 中的列表上编写索引循环?