Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Divil
8 / 8 / 2
Регистрация: 11.04.2012
Сообщений: 611
#1

Ввод в двумерный массив из консоли - C++

04.03.2013, 18:20. Просмотров 514. Ответов 9
Метки нет (Все метки)

Всем привет!
Надо было реализовать ввод из консоли в массив целых чисел.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <clocale>
#include <stdio.h>
#include <iostream>
#include <conio.h>
using namespace std;
void main(void){
    setlocale(LC_ALL, "Russian");
    int array[3][3];
    printf("Введите матрицу 3*3:\n");
    for(int i=1; i<=3; ++i){
        for(int j=1; j<=3; ++j){
            scanf("%d", &array[i][j]);
        }
    }
    for(int i=1; i<=3; i++){
        for(int j=1; j<=3; j++){
            printf("%d ", array[i][j]);
        }
        printf("\n");
    }
    getch();
}
Вот то, что у меня получилось...
В данном коде ввод осуществляется так: "число <ENTER> переход на след. строку" и т.д. пока не кончится...
а как сделать так чтобы ввод осуществлялся как в матрице?: т.е. допустим вводим числа 1-9:
1 2 3<ENTER> переход на след. строку
4 5 6<ENTER> переход на след. строку
7 8 9<ENTER> переход на след. строку
Заранее благодарен за помощь!
P.S. как использовать chartooem???
Понимаю, что на данный вопрос тем просто море, но! я читал и нифига не понимаю как его использовать?!
Буду очень благодарен, если мне покажут на выше указанном коде КАК это сделать.
Просто в универе С++ 6, а у меня 10...и в 6 версии setclocale походу не поддерживается(((
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.03.2013, 18:20
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Ввод в двумерный массив из консоли (C++):

Как с консоли можно ввести двумерный массив строчных символов? - C++
Например, есть char str ; Как можно ввести 2 строки? И будет ли символ ‘\0’ в конце каждой строки или только в одной?

Ввод данных в двумерный динамический массив - C++
Добрый вечер! Осваиваю уже третий день двумерные массивы в С++, но каким образом они создаются до сих пор не понятно. У меня было...

Ввод данных из файла в двумерный массив - C++
Здравствуйте! Я написал такую программу: #include &lt;iostream&gt; #include &lt;fstream&gt; using namespace std; int main() { int...

Динамический ввод и вывод данных в двумерный массив - C++
Не могу реализовать ввод и вывод данных двумерного массива используя указатель на указатель, в чём проблема? cin &gt;&gt; *(*(p+n*i)+j); ...

Двумерный динамический массив. Ввод размера с клавиатуры - C++
Что я делаю не так? Хочу с клавиатуры вводить размерность двумерного динамического массива, вылетает в исключение в VS или выводит что...

Как поместить строки разной длинны в двумерный массив? (файловый ввод/вывод) - C++
Всем доброго времени суток! Есть файл с нескольким количеством строк и все эти строки разной длинны, как мне их поместить в двумерный...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Croessmah
Эксперт CЭксперт С++
13221 / 7493 / 845
Регистрация: 27.09.2012
Сообщений: 18,412
Записей в блоге: 3
Завершенные тесты: 1
04.03.2013, 18:35 #2
Цитата Сообщение от Divil Посмотреть сообщение
а как сделать так чтобы ввод осуществлялся как в матрице?
ну так и вводите их на одной строчке. В чем проблема то?
Ввели три числа, нажали enter
1
Divil
8 / 8 / 2
Регистрация: 11.04.2012
Сообщений: 611
04.03.2013, 18:56  [ТС] #3
Мда...перезанимался, вот глючю))) а что насчет остальных вопросов?)
0
Croessmah
Эксперт CЭксперт С++
13221 / 7493 / 845
Регистрация: 27.09.2012
Сообщений: 18,412
Записей в блоге: 3
Завершенные тесты: 1
04.03.2013, 19:56 #4
CharToOem это функция из WinAPI. Посмотрите ее сигнатуру, там все предельно ясно
1
Divil
8 / 8 / 2
Регистрация: 11.04.2012
Сообщений: 611
04.03.2013, 21:53  [ТС] #5
Понял) благодарю, разобрался...
только вот...
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#include <stdio.h>
#include <math.h>
#include <windows.h>
#include <conio.h>
void main(void){
    float xa, ya, s, I, xb, yb;
    char t[]="Введите координаты точки А:\nxa=";
    CharToOem(t,t);
    printf("%s", t);
    scanf("%f", &xa);
    printf("ya=");
    scanf("%f", &ya);
    char l[]="Введите расстояние между точками s=";
    CharToOem(l,l);
    printf("%s", l);
    scanf("%f", &s);
    char z[]="Введите дирекционный угол I=";
    CharToOem(z,z);
    printf("%s", z);
    scanf("%f", &I);
    xb=xa+s*cos(I);
    yb=ya+s*sin(I);
    char m[]="Координаты точки B:\nxb=%.3f\nyb=%.3f\n";
    CharToOem(m,m);
    printf("%s", xb, yb);
    getch();
}
Программа работает, но выдает ошибки подобного типа при компиляции на С++ 10:
error C2664: CharToOemW: невозможно преобразовать параметр 1 из "char [37]" в "LPCWSTR"
что это значит?
0
Croessmah
Эксперт CЭксперт С++
13221 / 7493 / 845
Регистрация: 27.09.2012
Сообщений: 18,412
Записей в блоге: 3
Завершенные тесты: 1
04.03.2013, 22:37 #6
Это значит, что невозможно преобразовать )))
Если работаете в студии, то отключите Юникод в настройках проекта.
1
Divil
8 / 8 / 2
Регистрация: 11.04.2012
Сообщений: 611
04.03.2013, 22:42  [ТС] #7
Огромное спасибо!)
0
alsav22
5419 / 4815 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
05.03.2013, 04:15 #8
Цитата Сообщение от Divil Посмотреть сообщение
и в 6 версии setclocale походу не поддерживается
А такое поддерживается?
C++
1
2
3
4
5
6
7
8
#include <windows.h>
 
int main()
{
  SetConsoleCP(1251);
  SetConsoleOutputCP(1251);
  ...
}
В свойствах консоли выбрать шрифт: Lucida Console.
1
Divil
8 / 8 / 2
Регистрация: 11.04.2012
Сообщений: 611
05.03.2013, 22:49  [ТС] #9
alsav22, будет пара проверю, благодарю!
0
Croessmah
Эксперт CЭксперт С++
13221 / 7493 / 845
Регистрация: 27.09.2012
Сообщений: 18,412
Записей в блоге: 3
Завершенные тесты: 1
06.03.2013, 02:36 #10
Цитата Сообщение от alsav22 Посмотреть сообщение
setclocale
без 'c' - просто setlocale
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
06.03.2013, 02:36
Привет! Вот еще темы с ответами:

Как правильно создать двумерный массив указателей с использованием calloc? и ввод данных в него - C++
Как правильно создать двумерный массив указателей с использованием calloc и ввести в него данные?

Ввод в консоли - C++
Возникла проблема: необходимо при вводе в консоли сделать так, чтобы при нажатии enter вводил значение по умолчанию. Также необходима...

Ввод текста в консоли - C++
Здравствуйте. Задание: Ввести текст, поменять местами 5й и 7й символы. #include &lt;conio.h&gt; #include &lt;iostream.h&gt; #define SIZE...

Ввод строки с консоли - C++
Всем привет, такой вопрос. Нашел годный пример. Как реализовать ввод строки &quot;5*3-9/3&quot; вручную с консоли? Заранее благодарен. ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
06.03.2013, 02:36
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru