这个小程序是用来计算2位数字的第一位和第二位的。但是,当我尝试在数字 99 上使用它时,它会打印 9 和 8,但其他 2 位数字似乎也可以正常工作。这可能是微不足道的,但我在编程方面相对较新。
#include <iostream>
using namespace std;
void test(int num) {
float numValue = (num*1.0) / 10;
cout << numValue << endl;
// prints 9.9
int firstDigit = num / 10;
cout << firstDigit << endl;
// prints 9
int secondDigit = (numValue - firstDigit) * 10;
cout << secondDigit << endl;
// prints 8, supposed to be (9.9 - 9) * 10
}
int main()
{
test(99);
return 0;
}