在不使用循环和数组的情况下,显示六个整数中的最小偶数和奇数

时间:2018-01-26 23:52:59

标签: c++ logic

所以我正在尝试为我的课做一个作业,但由于某种原因,我不能让输出与我需要的相匹配。我必须制作一个程序,要求6个整数并显示最小的偶数和奇数。将有3个甚至输入和3个奇数但订单未知,我们不能使用循环或数组。这个样本就是我到目前为止的样子,但我似乎无法理解为什么a和b不起作用。

int a, b, c, d, e, f, smallEven=0, smallOdd=0;
cout<<"Enter a number:\n";
cin>>a;

if (a%2==0)
    smallEven=a;
else if (a%2==1)
    smallOdd=a;

cout<<"Enter a number:\n";
cin>>b;

if (b%2==0)
    if (smallEven=0)
        smallEven=b;
    else if (b<smallEven)
        smallEven=b;
else if (b%2==1)
    if (smallOdd=0)
        smallOdd=b;
    else if (b<smallOdd)
        smallOdd=b;

cout<<smallEven;
cout<<smallOdd;

1 个答案:

答案 0 :(得分:2)

之所以没有做到你期望的是你在两个地方使用赋值运算符(=)而不是比较运算符的等式(==):

if (b%2==0)
    if (smallEven=0)   // should be == here
        smallEven=b;
    else if (b<smallEven)
        smallEven=b;
else if (b%2==1)
    if (smallOdd=0)    // should be == here
        smallOdd=b;
    else if (b<smallOdd)
        smallOdd=b;