Вот что я пробовал:Умножьте элементы на вторичной диагонали массива. Borland C
#include <conio.h>
#include <stdio.h>
// calculeaza produsul elementelor diagonalei secundare ale unei matrici
// 1 2 3
// 5 4 2
// 6 5 8 == 13
void main(){
int a[20][20], i, j, n, p;
printf("Dati numarul de linii si coloane a matricei:");
scanf("%d", &n);
for(i=1; i<=n; i++)
for(j=1; j<=n; j++){
printf("a["<<i<<","<<j<<"]=");
scanf(a[i][j]);
}
p=1;
for(i=1; i<=n; i++)
for(j=1; j<=n; j++)
if(i+j == n+1){
p=a[i][j];
}
printf("Produsul=%d", p);
getch();
}
я получаю 3 ошибки, хотя:
1.Illegal use of pointer, line 13.
2.Can not convert 'int' to 'const char *', line 14.
3.Type mismatch in parameter '_format' in call to 'scanf(const char *,...)'.
Я не могу понять это, я сделал это в C++, но не может заставить его работать в C.
Вы смешиваете 'C 'и' C++ ',' printf ("a [" << i << "," << j <<"]=");' -> 'printf (" a [% d,% d] = ", i, j);' и 'scanf (a [i] [j]); '->' scanf ("% d", & a [i] [j]); ' –
Ну, я знаю, что я смешивал, потому что я не знаю много о C, так или иначе спасибо , которые решили проблему с ошибками. –