2015-05-14 5 views
-7
#include <iostream> 
#include<iomanip> 
using namespace std; 
int main() 
{ 
    const int NUMROWS=3; 
    const int NUMCOLS=4; 
    int i,j; 
    int val[NUMROWS][NUMCOLS]={8,16,9,52,27,6,14,25,2,10};//multiply each element by 10 and display it 
    cout<<"\nDisplay or multiplied elements"; 
    for(i=0; i<NUMROWS;i++) 
    { 
     val[i][j]=val[i][j]*10; 
    }//end of inner loop 
    }//end of outer loop 
    cout<endl; 
    return 0; 
    } 

Это ошибки, которые я получил. Что я сделал неправильно 16: 5: ошибка: «cout» не называет тип 17: 5: ошибка: ожидаемый неквалифицированный идентификатор до «возврата» 18: 5: ошибка: ожидаемая декларация перед «} 'токеномПочему этот код не компилируется

+4

'соиЬ user463035818

+2

Отступ вы код. Есть конец 2 циклов, но только один цикл в коде. –

+0

У вас также есть внешняя закрывающая скобка перед 'cout EdChum

ответ

1

есть две проблемы:

}//end of outer loop 
cout<endl; 

Во-первых, в то время как ваш комментарий говорит «конец внешнего цикла», распорка фактически закрывает main, так что код неверен. Вот почему вы получаете ошибку на cout не называет тип.

После того, как вы удалите эту скобку, вы получите огромную ошибку компиляции, начиная с:

error: no match for ‘ operator< ’ in ‘ std::cout < std::endl

потому, что вы написали cout < endl;, когда вы имели в виду cout << endl;

1

Опечатки:

cout<endl; 

У вас не хватает < Это должно было быть:

cout<<endl; 

Поместите выше внутри main, в настоящее время он находится вне сферы main.

Другие вопросы:

val[i][j]=val[i][j]*10; 

j здесь неинициализированным.

}//end of outer loop 

Вы не определили ни одного внешнего for loop.

0

Он не компилируется, потому что это не действительная программа на C++.

Одна из проблем заключается в том, что у вас больше закрывающих кронштейнов, чем открытие. Я бы предложил использовать редактор исходного кода, который указывает, какие брекеты принадлежат друг другу.

1

Я считаю, что вам не хватает for петли для j индекса:

for(i=0; i<NUMROWS;i++) 
{ 
    for(j=0; j<NUMCOLS;j++) 
    { 
     val[i][j]=val[i][j]*10; 
    }//end of inner loop 
}//end of outer loop 

Также обратите внимание, что вы пропустили < характер cout<endl; должен быть cout<<endl;

2

Вы пропустили ваш внутренний цикл и ваш cout после того, как двойной цикл не хватает второй моркови. Вероятно, следует искать что-то вроде этого:

int main() 
{ 
    const int NUMROWS=3; 
    const int NUMCOLS=4; 
    int i,j; 
    int val[NUMROWS][NUMCOLS]={8,16,9,52,27,6,14,25,2,10};//multiply each element by 10 and display it 
    cout<<"\nDisplay or multiplied elements"; 
    for(i=0; i<NUMROWS;i++) 
    { 
     for(j=0; j<NUMCOLS;j++) 
     { 
      val[i][j]=val[i][j]*10; 
     }//end of inner loop 
    }//end of outer loop 
    cout<<endl; 
    return 0; 
} 
Смежные вопросы