Программирование - это просто
Advertisement
Главная arrow Уроки программирования arrow Уроки Visual C++ arrow Microsoft visual c++ 2008. Урок 8. Массивы.
28.02.2024 г.
Главное меню
Главная
Интернет магазин
Программные продукты
Биржевые роботы
Искусственный интеллект
Математика и информатика
1С:Предприятие
Уроки C#
Уроки Delphi
Уроки программирования
Web-программирование
Дизайн и графика
Компьютер для блондинок
Исходники
Статьи
Платный раздел
Рассказы про компьютеры
Хитрости и секреты
Системный подход
Размышления
Наука для чайников
Друзья сайта
Excel-это не сложно
Все о финансах
.
Microsoft visual c++ 2008. Урок 8. Массивы. Печать E-mail
Автор megabax   
22.11.2010 г.
New Page 1

Microsoft visual c++ 2008. Урок 8. Массивы.

Предположим, перед нами стоит такая задача: подсчитать, сколько каждой из цифр от 0 до 9 содержится в текстовом файле. Если мы будем использовать материалы прошлых уроков, то нам понадобиться создать 10 счетчиков. Для каждой из цифр. Согласитесь. это не очень удобно. Если бы нам пришлось считать элементы, которых, скажем, 100 или больше. Тут вообще вешалки полные получаются. К счастью, в С++ есть такое понятие, как массивы.  Вот на них то мы и реализуем наш пример с подсчетом цифр:

#include "stdafx.h"
#include <conio.h>
#include <stdio.h>
#define eof -1
#define maxind 10


int _tmain(int argc, _TCHAR* argv[])
{
     int c; //для ввод символа
     int nd[maxind]; //для подсчета количества обнаруженных в файле цифр. Для 0 индекс 0, для 1 - 1 и так далее до 9.
     int i;
     for(i=0; i<maxind; i++) nd[i]=0; //обнуление элементов массива
     printf("Input string and press <ENTER>\n");

     while((c=getchar())!=eof) {
            if(c>='0'&&c<='9') ++nd[c-'0']; //если нашли цифру, увеличим на 1 соответствующий счетчик
     };
     printf("Count of digits:\n");
     for(i=0; i<maxind; i++) printf("digit: %d is count %d\n",i,nd[i]);
     printf("Press any key to continue");
     _getch();
     return 0;
}

Запустим нашу программу на тестирование:

Microsoft visual c++ 2008. Урок 8. Одномерные массивы.

И, в заключении, несколько комментариев к коду.

Массив для подсчета цифр у нас объявлен вот так:

 int nd[maxind];

В квадратных скобках  мы указали количество элементов в массиве. Через такие же скобки происходит и обращение к элементам массива. Для самого первого элемента обращение будет [0], для второго [1] и так далее, счет идет с нуля. Вместо цифры может быть переменна, таким образом, зная количество элементов в массиве мы может обойти его в цикле.

Мы в своей программе использовали одномерный массив. Но бывают еще и многомерные массивы.  Он может быть объявлен, например, так:

 int nd[10][12];

Обращение к такому массиву происходит уже по двум индексам:

nd[i][j]=myvar;

Количество индексов (размерность) может быть сколько угодно. Даже десять и больше.

 


Скриншоты, помеченные знаком *, являются цитатами и иллюстрациями  в соответствии со ст. 1274 ГК РФ программного продукта "Microsoft Visual C++ Express Edition", авторское право на который принадлежит корпорации Microsoft.. 


Последнее обновление ( 12.02.2014 г. )
 
« След.   Пред. »
 
© 2024 Программирование - это просто
Joomla! - свободное программное обеспечение, распространяемое по лицензии GNU/GPL.
Русская локализация © 2005-2008 Joom.Ru - Русский Дом Joomla!
Design by Mamboteam.com | Powered by Mambobanner.de
Я принимаю Яндекс.Деньги