C++ 变量和常量的划分不起作用
C++ division of variable and constant not working
我已经到处检查答案,但我不明白为什么如果我输入 stnumber 作为 123,它不会显示为 1.23,而是 1,如果我输入 0.123,它也会显示为 1。我刚开始学习 C++,所以我可能犯了一个我不理解的明显错误,如果是这样,我为此道歉。这不是 main() 函数的一部分,因此 return stnumber 将其发回。编辑:我现在把整个程序放在这里。
#include <iostream>
int stsc()
{
std::cout << "enter your number" << std::endl;
long double stnumber = 1.0;
std::cin >> stnumber;
for (;;) {
if (stnumber >= 1.0) {
if (stnumber < 10.0) {
return stnumber;
}
stnumber = stnumber / 10.0;
}
if (stnumber < 1.0) {
stnumber = stnumber * 10.0;
}
}
}
int stsc()
是问题所在。做到这一点
long double stsc()
该函数返回一个整数值,并且您的变量 stnumber 在打印之前被舍入。
我已经到处检查答案,但我不明白为什么如果我输入 stnumber 作为 123,它不会显示为 1.23,而是 1,如果我输入 0.123,它也会显示为 1。我刚开始学习 C++,所以我可能犯了一个我不理解的明显错误,如果是这样,我为此道歉。这不是 main() 函数的一部分,因此 return stnumber 将其发回。编辑:我现在把整个程序放在这里。
#include <iostream>
int stsc()
{
std::cout << "enter your number" << std::endl;
long double stnumber = 1.0;
std::cin >> stnumber;
for (;;) {
if (stnumber >= 1.0) {
if (stnumber < 10.0) {
return stnumber;
}
stnumber = stnumber / 10.0;
}
if (stnumber < 1.0) {
stnumber = stnumber * 10.0;
}
}
}
int stsc()
是问题所在。做到这一点
long double stsc()
该函数返回一个整数值,并且您的变量 stnumber 在打印之前被舍入。