C++ 小数点不显示
我打算让用户只输入正整数值,但我意识到输出是错误的。例如,我输入的最大值为100.6,显示的最大值仅为100。我相信问题来自atoi。有人能看看我的代码,告诉我出了什么问题吗C++ 小数点不显示,c++,C++,我打算让用户只输入正整数值,但我意识到输出是错误的。例如,我输入的最大值为100.6,显示的最大值仅为100。我相信问题来自atoi。有人能看看我的代码,告诉我出了什么问题吗 #include<iostream> #include<string> using namespace std; int main() { const int SIZE = 12; string month[SIZE] = { "Jan",
#include<iostream>
#include<string>
using namespace std;
int main()
{
const int SIZE = 12;
string month[SIZE] = { "Jan", "Feb", "Mar","April","May","June","July","August","Sept","October","Nov","Dec"};
string highestMonth, lowestMonth;
char temp[SIZE];
double rainFall[SIZE], total = 0.0, average, highest, lowest;
bool flag;
int i = 0;
do{
flag = false;
cout << "Enter rainfall for " << month[i] << " : ";
cin >> temp;
for (int j = 0; j < strlen(temp); j++)
{
if (!isdigit(temp[j]))
{
if (temp[j] == '.')
continue;
cout << "Enter positive integer value only" << endl;
flag = true;
break;
}
}
if (flag == false)
{
rainFall[i] = atoi(temp);
total += rainFall[i];
i++;
}
} while (i < SIZE);
average = total / 12.0;
lowest = rainFall[0];
lowestMonth = rainFall[0];
for (int i = 1; i < SIZE; i++)
{
if (rainFall[i] < lowest)
lowest = rainFall[i];
lowestMonth = rainFall[i];
}
highest = rainFall[0];
highestMonth = rainFall[0];
for (int i = 1; i < SIZE; i++)
{
if (rainFall[i]>highest)
highest = rainFall[i];
highestMonth = rainFall[i];
}
cout << "Total rainfall:" << total << endl;
cout << "Average:" << average << endl;
cout << "Highest:" << highest << " in " << highestMonth << endl;
cout << "Lowest:" << lowest << " in " << lowestMonth << endl;
system("pause");
return 0;
}
#包括
#包括
使用名称空间std;
int main()
{
常数int SIZE=12;
字符串月份[大小]={“一月”、“二月”、“三月”、“四月”、“五月”、“六月”、“七月”、“八月”、“九月”、“十月”、“十一月”、“十二月”};
字符串最高月份,最低月份;
字符温度[大小];
双降雨量[大小],总量=0.0,平均值,最高值,最低值;
布尔旗;
int i=0;
做{
flag=false;
coutatoi将数字的字符串表示形式转换为整数,因此将“100.6”转换为100
您可以使用atofatoi将数字的字符串表示形式转换为整数,以便将“100.6”转换为100
您可以使用atofatoi将数字的字符串表示形式转换为整数,以便将“100.6”转换为100
您可以使用atofatoi将数字的字符串表示形式转换为整数,以便将“100.6”转换为100
如果输入有小数点,并且没有代码处理小数点输入,则可以使用atof将标志设置为true
if (flag == false)
{
rainFall[i] = atoi(temp);
total += rainFall[i];
i++;
}
如果标志
为false,此代码将处理输入,但如果标志
为true,则没有处理小数的类似代码。如果输入有小数点,并且没有处理小数输入的代码,则将标志
设置为true
if (flag == false)
{
rainFall[i] = atoi(temp);
total += rainFall[i];
i++;
}
如果标志
为false,此代码将处理输入,但如果标志
为true,则没有处理小数的类似代码。如果输入有小数点,并且没有处理小数输入的代码,则将标志
设置为true
if (flag == false)
{
rainFall[i] = atoi(temp);
total += rainFall[i];
i++;
}
如果标志
为false,此代码将处理输入,但如果标志
为true,则没有处理小数的类似代码。如果输入有小数点,并且没有处理小数输入的代码,则将标志
设置为true
if (flag == false)
{
rainFall[i] = atoi(temp);
total += rainFall[i];
i++;
}
如果标志
为假,此代码将处理输入,但如果标志
为真,则没有处理小数的类似代码。请制作一个最小代码示例,仅显示所描述问题所需的内容。请制作一个最小代码示例,仅显示所描述问题所需的内容。示例请制作一个最小代码示例,仅显示您所描述的问题所需的内容。请制作一个最小代码示例,仅显示您所描述的问题所需的内容