#c
#c
Вопрос:
Мой профессор говорит, что в моем коде отсутствуют эти два аспекта
- необходимо сначала инициализировать переменные со значениями по умолчанию -2
- в вашей программе отсутствуют операторы присваивания переменных -3
Однако я не уверен, что они означают.
Я установил для своих переменных int значение по умолчанию 0, но я не знаю, как присвоить им новые значения.
#include <iostream>
#include <iomanip>
#include <string>
using namespace std;
int main ()
{
string theatre = "AMC Universal CityWalk";
string present = "Presenting";
string movie = "A Star is Born Encore";
string show = "Show time";
string time = "PM";
string day = "Date";
string room = "Theatre";
string rating = "PG-13";
string admission = "Adult Admission";
string ad = "Don't forget to get your free small popcorn"
" with 4 tickets or more!!!";
/*
int timeHour = 3;
int timeMinute = 20;
int dateMonth = 04;
int dateDay = 12;
int dateYear = 2019;
int roomNumber = 10;
float price = 12.75;
*/
int timeHour = 0;
int timeMinute = 0;
int dateMonth = 0;
int dateDay = 0;
int dateYear = 0;
int roomNumber = 0;
float price = 0.0;
cout << "tt" << theatre << endl;
cout << "ttt" << present << endl;
cout << "tt" << movie << endl;
cout << show << ": " << timeHour << ":" << timeMinute << " " << time;
cout << "t" << day << ": " << dateMonth << "/" << dateDay << "/" <<
dateYear << endl;
cout << room << ": " << roomNumber;
cout << "ttt" << rating << endl;
cout << admission << ": $" << price << endl;
cout << ad << endl;
}
Мне нужно распечатать значения, которые находятся в разделе с комментариями, но я не могу понять, как присвоить переменным int новые значения.
Комментарии:
1.
int timeHour = 3;
это объявление переменной с инициализацией.timeHour = 0;
это присвоение переменной. Второе должно появиться после первого, потому что присвоение не может быть выполнено, когда переменная еще не объявлена.int timeHour = 3; /* some stuff left out */ int timeHour = 0;
это переопределение переменной, которое запрещено (ошибка компилятора). Не допускается определять переменную дважды в одной и той же области видимости (грубо говоря). Итак, вы видите, что не так, когда вы раскомментируете остальную часть кода?2. Вы должны спросить их, что они означают. И если вам нужно присвоить значение, просто присвоите его.
variable = value;
3. Похоже, вы просите людей порассуждать о том, что ваш профессор подразумевает под этими утверждениями. Мне кажется, что вы присваиваете значения целым числам, поэтому вам, вероятно, нужно поговорить с вашим профессором, чтобы выяснить, чего они хотят, а затем задать конкретный вопрос о том, чего вы пытаетесь достичь.
4. Кстати.
std::string
это класс с конструктором по умолчанию. Следовательно,std::string rating;
это объявление с конструкцией по умолчанию.int
это так называемый тип POD . Типы POD не обеспечивают построение по умолчанию. Следовательно,int hour;
объявляет переменную, но оставляет ее неинициализированной. (Это может иметь любое значение.) Когда в C используются типы POD, их инициализация всегда является привычкой для предотвращения неинициализированных переменных.
Ответ №1:
сначала прочитайте это https://en.wikipedia.org/wiki/Assignment_ (computer_science) и если вы хотите задать новое значение переменным, сделайте вот так:
int timeHour = 0;
timeHour = 10;