C++在if函数中添加变量

C++ Adding variables in if functions

本文关键字:添加 变量 函数 if C++      更新时间:2023-10-16

我用C++做的工作相当初级,我很难理解我写的一个简单程序做错了什么。到目前为止,我已经正确地写出了一些程序,但我对如何在IF函数中放置可变占位符感到困惑。当然,假设这就是它正常工作的原因。

首先介绍一下程序应该如何运行。用户输入一个4位代码,只要代码的最后一位是"7",它就会显示"原产地:佛罗里达州"。IF功能的第二部分是,如果用户输入一个4位数字,并且代码的最后一位是"4",则应显示"原产地:加利福尼亚州"。我用else语句结束了它,让任何其他条目显示"无效"。我遇到的问题是弄清楚如何为代码的前3位数字添加可变数字,当最后一位数字输入"7"或"4"时,会显示某个"原点"。我在互联网上找了又找导游寻求帮助,但运气很差。如果有人能帮助我,我将非常感谢你的帮助。

下面是我写的代码,当然错误在IF语句中:

#include <cstdlib>
#include <iostream>
using namespace std;
int main()
{
int Digits = 0;
cout << " ..:::Grocery Program:::.. " << endl;
cout << " ..::Created By Justin::.. " << endl;
cout << "n";   
cout << " Enter the orange's 4-digit code: ";
cin >> Digits;
if ( Digits == 7 )
{
cout << " Origin: Florida ";
}
else if ( Digits == 0004 )
{
cout << " Origin: California ";
}
else
{
cout << " Origin: Invalid ";
}
cout << "n";   
cout << "n";   
cout << "n";   
cout << "n";   
cout << "n";       
system("pause");
return 0;
}

一个有用的"技巧"是使用模(%)运算符来获取数字。说你想得到最后一个。。。

int n = 1234;
int last_digit = n % 10; // last_digit == 4

要得到倒数第二个数字,请将数字除以10(这会使最后一个数字消失),然后执行相同的操作:

n /= 10;
int second_to_last = n % 10; // second_to_last == 3

看看这是否有帮助:首先,您可能需要验证输入的位数是否为4,类似于以下内容://"number"是无符号的int,因此我们排除了输入-ve数字的可能性int位数=0;while(number){数字/=10;数字++;}

如果数字!=4显示无效,否则使用@Faranpath提到的Modulo运算符检查最后一位数字。是的,还有一件事你需要保存号码,因为你以后需要它来检查最后一位。