Я думаю, что этот код не компилируется ни на старых компиляторах, ни на новых, так как в этой строке есть недопустимая двойная кавычка:
cin>>"number2;
Поскольку есть опечатки, не ясно если это оригинальный код, но эта строка:
sum,average;
должна привести к ошибке компиляции, так как вы используете неопределенные переменные. Грамматика K &> R для старых C компиляторов позволяла объявлять функцию без типа, что означало int
. Но это было только для функций. Переменные должны иметь хотя бы один спецификатор типа.
Предполагая, что была опечатка и что последний символ предыдущей строки был ,
, а не ;
, переменные были бы float
, каково ваше ожидание.
Наконец, с исправленными опечатками кажется, что это только проблема форматирования . Форматирование по умолчанию для плавающей запятой в C ++ заключается в использовании целочисленного формата, если значение не имеет значащих десятичных знаков.
Вы можете использовать десятичное представление:
- с
cout<<showpoint<<sum<<endl;
- с
cout<<fixed<<sum<<endl;
. - или с
scientific
презентация, но она будет отображаться как 1.4e + 01