Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 11.04.2012, 19:29   #1
Riona
Пользователь
 
Регистрация: 29.03.2012
Сообщений: 14
По умолчанию двумерный массив,язык СИ

Дана квадратная матрица размерностью N. Найти минимум по столбцам.
Я написала программу,вот она:
Код:
#include <stdio.h>;
void main()
{
int a[100][100];
int b[100];
int i,j,n,min,p;
clrscr();
printf ("BBEDITE RA3MEPHOCTb MATPICI N = ");
scanf ("%i",&n);
printf ("BBEDITE ELEMENbI MACCIBA: \n");
for (i=0; i<n; i++)
for (j=0; j<n; j++)
{
printf ("a[%i][%i]: ",i,j);
scanf ("%i",&a[i][j]);
}
for (i=0; i<n; i++)
{
min=100000;
p=1;
for (j=0;j<n; j++)
{
p=a[j][i];
if (p<min) min=p;
}
}
printf ("min=%i",min);
getch ();
}
ошибок нет,но не выводит то,что мне надо что бы не вводила выводит на экран "31072" укажите мне на ошибку,пожалуйста.

Последний раз редактировалось ACE Valery; 12.04.2012 в 13:19.
Riona вне форума Ответить с цитированием
Старый 11.04.2012, 19:38   #2
Asdprom
Форумчанин
 
Регистрация: 05.02.2011
Сообщений: 119
По умолчанию

обнулите переменные.
оригинальный у вас "птичий язык"
Если хотите писать на Русском
Код:
#include <locale.h>
#include <iostream>
...
int main()
{
setlocale(LC_ALL , "RUS");
std::cout<<"Я пишу на Русском!!!";
system ( " pause " );
return 0;
}

Последний раз редактировалось Asdprom; 11.04.2012 в 19:45.
Asdprom вне форума Ответить с цитированием
Старый 11.04.2012, 20:07   #3
Riona
Пользователь
 
Регистрация: 29.03.2012
Сообщений: 14
По умолчанию

это все же не решит мою основную проблему,а проблема у меня заключается в нахождении минимума по столбцам)
Riona вне форума Ответить с цитированием
Старый 11.04.2012, 20:12   #4
Asdprom
Форумчанин
 
Регистрация: 05.02.2011
Сообщений: 119
По умолчанию

В смысле? Вы попробовали обнулить переменные?
Сейчас подумаю по поводу минимума по столбцам...
Asdprom вне форума Ответить с цитированием
Старый 11.04.2012, 20:20   #5
Riona
Пользователь
 
Регистрация: 29.03.2012
Сообщений: 14
По умолчанию

p=1;
for (j=0;j<n; j++)
{
p=a[j][i];
if (p<min) min=p;
}
}
printf ("min=%i",min);
getch ();
}




изменила p=0 (вместо р=1) все равно не то,что нужно считает,в самой программе ошибка
Riona вне форума Ответить с цитированием
Старый 11.04.2012, 20:22   #6
Asdprom
Форумчанин
 
Регистрация: 05.02.2011
Сообщений: 119
По умолчанию

ладно - придется запускать компилятор...
Asdprom вне форума Ответить с цитированием
Старый 11.04.2012, 20:28   #7
Asdprom
Форумчанин
 
Регистрация: 05.02.2011
Сообщений: 119
По умолчанию

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

void main()
{
int a[100][100];
int b[100];
int i,j,n,min,p;
i=j=n=min=p=0;
printf ("BBEDITE RA3MEPHOCTb MATPICI N = ");
scanf ("%i",&n);
printf ("BBEDITE ELEMENbI MACCIBA: \n");
for (i=0; i<n; i++)
for (j=0; j<n; j++)
{
printf ("a[%i][%i]: ",i,j);
scanf ("%i",&a[i][j]);
}
for (i=0; i<n; i++)
{
min=100000;
p=1;
for (j=0;j<n; j++)
{
p=a[j][i];
if (p<min) min=p;
}
}
printf ("min=%i",min);
getch ();
}
какие вы вводили данные?
Asdprom вне форума Ответить с цитированием
Старый 11.04.2012, 20:28   #8
Asdprom
Форумчанин
 
Регистрация: 05.02.2011
Сообщений: 119
По умолчанию

У меня 1. получилась. хотя был и 0.
Asdprom вне форума Ответить с цитированием
Старый 11.04.2012, 20:35   #9
Riona
Пользователь
 
Регистрация: 29.03.2012
Сообщений: 14
По умолчанию

i=j=n=min=p=0;

эту строку обязательно?сейчас попробую с исправлениями прокомпилировать и напишу потом,что получилось)
Riona вне форума Ответить с цитированием
Старый 11.04.2012, 20:35   #10
Asdprom
Форумчанин
 
Регистрация: 05.02.2011
Сообщений: 119
По умолчанию

Все прекрасно работает!
Вот код адаптированный под вашу версию компилятора:
Код:
// lalala.cpp : Defines the entry point for the console application.
//


#include <stdio.h>


void main()
{
int a[100][100];
int b[100];
int i,j,n,min,p;
i = 0;
j = 0;
n = 0;
min = 0;
p = 0;

clrscr();

printf ("BBEDITE RA3MEPHOCTb MATPICI N = ");
scanf ("%i",&n);
printf ("BBEDITE ELEMENbI MACCIBA: \n");
for (i=0; i<n; i++)
for (j=0; j<n; j++)
{
printf ("a[%i][%i]: ",i,j);
scanf ("%i",&a[i][j]);
}
for (i=0; i<n; i++)
{
min=100000;
p=1;
for (j=0;j<n; j++)
{
p=a[j][i];
if (p<min) min=p;
}
}
printf ("min=%i",min);
getch ();
}
Asdprom вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Дан массив чисел В[0:N]. Записать подряд в массив А элементы массива В, имеющие четные индексы,(язык си++) yury.zanilov Помощь студентам 9 15.03.2012 21:55
Массив - Нужно написать массив и распечатать на экран с конца в начало(язык С++) econ Помощь студентам 1 29.05.2011 22:02
Одномерный массив и Двумерный массив eugene1437 Общие вопросы C/C++ 15 25.05.2011 19:17