Дан Двумерный Массив Из N Строк И M Столбцов.вывести Строки,в Которых

01.06.2014
6
0
#1
Дан двумерный массив ,вывести строки,в которых нет нулевых элементов.Есть программа,но вместо строк,подходящих по условию,выдаются строки,которых не было в матрице.Где ошибка в коде?Язык -C

Код:
#include <stdio.h>
#include <conio.h>

void main (void)
{
int n,m,i,j,k;
int a[10][10];
//ввод матрицы
printf("\n Vvedite kolochestvo strok i stolbcov: ");
scanf("%d %d",&n,&m);
printf(" Vvedite matricy %d*%d postrochno \n",n,m);


{
for (i = 1; i <= n; i++)
{
for (j = 1; j <= m; j++)
scanf("%d",&a[i][j]);
}

}
//вывод матрицы
for(i=1;i<=n;i++)
{

for(j=1;j<=m;j++)
printf("%d ",a[i][j]);
printf("\n");
}





for(i=1;i<=n;i++)
k=0;
{
for(j=1;j<=m;j++)
if(a[i][j]!=0)
k++;}
if(k==m)
{
printf("Nylevie stroki:\n");
for(j=1;j<=m;j++)
{
printf(" %d", a[i][j]);
printf("\n");}
}

getch();
}
 
R

rrrFer

#2
Как попало фигурные скобки ставишь потому что:
Код:
#include <stdio.h>


int main (void)
{
int n,m,i,j,k;
int a[10][10];
//ввод матрицы
printf("\n Vvedite kolochestvo strok i stolbcov: ");
scanf("%d %d",&n,&m);
printf(" Vvedite matricy %d*%d postrochno \n",n,m);


{
for (i = 1; i <= n; i++)
{
for (j = 1; j <= m; j++)
scanf("%d",&a[i][j]);
}

}
//вывод матрицы
for(i=1;i<=n;i++)
{

for(j=1;j<=m;j++)
printf("%d ",a[i][j]);
printf("\n");
}

for(i=1;i<=n;i++) {
k=0;
for(j=1;j<=m;j++)
if(a[i][j]!=0)
k++;
if(k==m)
{
printf("NeNylevie stroki:\n");
for(j=1;j<=m;j++)
{
printf(" %d", a[i][j]);
}
printf("\n");
}
}
}
 
01.06.2014
6
0
#3
Как попало фигурные скобки ставишь потому что:
Код:
#include <stdio.h>


int main (void)
{
int n,m,i,j,k;
int a[10][10];
//ввод матрицы
printf("\n Vvedite kolochestvo strok i stolbcov: ");
scanf("%d %d",&n,&m);
printf(" Vvedite matricy %d*%d postrochno \n",n,m);


{
for (i = 1; i <= n; i++)
{
for (j = 1; j <= m; j++)
scanf("%d",&a[i][j]);
}

}
//вывод матрицы
for(i=1;i<=n;i++)
{

for(j=1;j<=m;j++)
printf("%d ",a[i][j]);
printf("\n");
}

for(i=1;i<=n;i++) {
k=0;
for(j=1;j<=m;j++)
if(a[i][j]!=0)
k++;
if(k==m)
{
printf("NeNylevie stroki:\n");
for(j=1;j<=m;j++)
{
printf(" %d", a[i][j]);
}
printf("\n");
}
}
}

Программа заработала,но как сделать,чтобы фраза"ненулевые строки" печаталась только один раз?