Другие языки программирования и технологии
Помогите ответить на вопрос по С++
Определить причину сообщения компилятора об ошибке при трансляции следующего кода. Укажите способ устранения данной ошибки. int i, j; int main (int i1; int i2); int main (void) {return min(i,j);} int min(int i1; int i2) {return i1> i2 ? i2:i1)}{}
Вообще написано что-то несуразное!
Давайте по порядку.
Сначала вы определяете две переменные
int i,j;
Это глобальные переменные. По умолчанию они инициализируются значением 0. Поэтому определять между двумя нулями наименьший ноль бессмысленно. Наверное в теле функции main должно быть присвоение каких-то значений этим переменным перед вызовом функции min().
Далее у вас идет
int main (int i1; int i2);
Как я могу догадаться, на самом деле это должен был быть прототип ( то есть объявление) функции min(), а не main()!:)
Кроме того аргументы функции должны разделяться не точкой с запятой, а запятой.
Поэтому правильно будет
int min (int i1, int i2);
Далее у вас следует тело главной функции main().
int main (void)
{return min(i,j);}
Здесь все правильно синтаксически, только обычно не лепят все в одну строку, а фигурные скобки ставят на отдельной строке
int main (void)
{
return min(i,j);
}
Так более читабельно.
Последние строки относятся к определению функции min().
int min(int i1; int i2)
{return i1> i2? i2:i1)}{}
КАк я уже писал, аргументы функции разделяются запятой, а не точкой с запятой.
Во втором предложении в конце строки непонятные фигурные скобки!
Правильно должно быть так
int min(int i1, int i2)
{
return i1> i2? i2:i1;
}
Давайте по порядку.
Сначала вы определяете две переменные
int i,j;
Это глобальные переменные. По умолчанию они инициализируются значением 0. Поэтому определять между двумя нулями наименьший ноль бессмысленно. Наверное в теле функции main должно быть присвоение каких-то значений этим переменным перед вызовом функции min().
Далее у вас идет
int main (int i1; int i2);
Как я могу догадаться, на самом деле это должен был быть прототип ( то есть объявление) функции min(), а не main()!:)
Кроме того аргументы функции должны разделяться не точкой с запятой, а запятой.
Поэтому правильно будет
int min (int i1, int i2);
Далее у вас следует тело главной функции main().
int main (void)
{return min(i,j);}
Здесь все правильно синтаксически, только обычно не лепят все в одну строку, а фигурные скобки ставят на отдельной строке
int main (void)
{
return min(i,j);
}
Так более читабельно.
Последние строки относятся к определению функции min().
int min(int i1; int i2)
{return i1> i2? i2:i1)}{}
КАк я уже писал, аргументы функции разделяются запятой, а не точкой с запятой.
Во втором предложении в конце строки непонятные фигурные скобки!
Правильно должно быть так
int min(int i1, int i2)
{
return i1> i2? i2:i1;
}
Вы дважды описали main.
int i, j;
int min (int i1, int i2);
int main (void)
{return min(i,j);}
int min(int i1, int i2)
{return i1> i2? i2:i1)}
int min (int i1, int i2);
int main (void)
{return min(i,j);}
int min(int i1, int i2)
{return i1> i2? i2:i1)}
Похожие вопросы
- помогите ответить на вопрос по ивт(вопрос внутри)-писать"поищи в гугль/яндексе не обязательно и так ясно что искала уже
- Помогите ответить на вопрос по предмету БД (Базы Данных)
- Помогите ответить на вопросы к тесту по информатике!
- Помогите ответить на вопросы по информатике очень прошу Вас. хотябы на некоторые я уже не могу (
- помогите ответить на вопросы по Adobe Photoshop и Adobe InDesign пожалуйста)
- Помогите пожалуйста ответить на вопрос
- Помогите мне, ПОЖАЛУЙСТА ОТВЕТИТЬ НА ВОПРОС!!! ОЧЕНЬ СССРРРРОООЧЧЧЧЧННООО!!!!
- Технология файлов Windows. помогите ответить на данный экзаменационный вопрос)
- Задание 1 Ответьте на вопросы. Какие возможности предоставляет пользователям ОС Windows 7?
- Просьба ответить на вопрос а не рекомендовать снести винду