Собственно само заданьице.
Задана матрица Q(3,3). Если на главной диагонали стоит нуль, то соответствующую строку заменить единицами.
Кодъ:
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int main()
{
int Q[3][3],i=0,j=0;
srand(time(NULL));
for (i=0;i
Другие языки программирования и технологии
Товарищи, залип на Си. Не могу найти косяк, помогите плиз.
#include <time.h>
#include <stdio.h>
#include <stdlib.h>
int main() {
int q[3][3], r, c;
srand(time(NULL));
puts("matrix:");
for (r = 0; r < 3; ++r) {
for (c = 0; c < 3; ++c) printf("%d ", q[r][c] = rand() % 3);
putchar('\n');
}
for (r = 0; r < 3; ++r) if (q[r][r] == 0) for (c = 0; c < 3; ++c) q[r][c] = 1;
puts("\nresult:");
for (r = 0; r < 3; ++r) {
for (c = 0; c < 3; ++c) printf("%d ", q[r][c]);
putchar('\n');
}
return 0;
}
#include <stdio.h>
#include <stdlib.h>
int main() {
int q[3][3], r, c;
srand(time(NULL));
puts("matrix:");
for (r = 0; r < 3; ++r) {
for (c = 0; c < 3; ++c) printf("%d ", q[r][c] = rand() % 3);
putchar('\n');
}
for (r = 0; r < 3; ++r) if (q[r][r] == 0) for (c = 0; c < 3; ++c) q[r][c] = 1;
puts("\nresult:");
for (r = 0; r < 3; ++r) {
for (c = 0; c < 3; ++c) printf("%d ", q[r][c]);
putchar('\n');
}
return 0;
}
Код - на pasebin.com, сюда - ссылку.
Вот это
23. do j++,Q[j]=1;
24. while (j!=3);
и это
30. do j++, printf("%d ", Q[j]);
31. while (j!=3);
сначала делает, а потом проверяет.
и что оно делает с Q[ i][ 3] за пределами массива?
(про пролезание кода - [ i] без пробела включает курсив. мейл многое считает метками форматирования текста)
23. do j++,Q[j]=1;
24. while (j!=3);
и это
30. do j++, printf("%d ", Q[j]);
31. while (j!=3);
сначала делает, а потом проверяет.
и что оно делает с Q[ i][ 3] за пределами массива?
(про пролезание кода - [ i] без пробела включает курсив. мейл многое считает метками форматирования текста)
страно что этот код вообще компилируется
обозначена матрица int Q[3][3] - правильно
присвоение элемента Q[j]= rand()%4; - косяк, так как должен быть указан второй индекс : прим. Q[j]
if (Q==0) тут вообще непонятно какой элемент вы хотели сравнить
вообщем по списку добавьте к каждой Q по второму индексу для начала
обозначена матрица int Q[3][3] - правильно
присвоение элемента Q[j]= rand()%4; - косяк, так как должен быть указан второй индекс : прим. Q[j]
if (Q==0) тут вообще непонятно какой элемент вы хотели сравнить
вообщем по списку добавьте к каждой Q по второму индексу для начала
Похожие вопросы
- Помогите плиз, написать прогу на Си++! Срочно очень нужно!
- Помогите плиз написать программу(язык Си)
- Помогите блок написать. На Си написать, как найти первое по алфавиту слово в строке.
- Кто поможет, плиз, перевести изображение текста в ворд (у меня нет файнридера) ?
- Я хотел бы научиться программированию, но в нэте трудно найти книги которые мне помогут: ) Помогите плиз:)
- Для тех кто разбирается в Turbo Pascal 7.0 помогите плиз))))
- Я начинающий программист, так что пока не очень смыслю в этом деле. Помогите плиз найти ошибки в коде. Язык php.
- Помогите плиз задолбала эта ошибка!
- Помогите плиз поставить загрузку с CD
- Помогите плиз!!Задача в Паскале