Documente online.
Zona de administrare documente. Fisierele tale
Am uitat parola x Creaza cont nou
 HomeExploreaza
upload
Upload




Массивы

Rusa


. Давайте напишем прог& 656o1422g #1088;амму подсчета числа появлений каждой цифры, символов пустых промежутков (пробел, табуляции, новая строка) и всех остальных символов. Конечно, такая задача несколько искусственна, но она позволит нам проиллюстрировать в одной прог& 656o1422g #1088;амме сразу несколько аспектов языка «C».



Мы разбили вводимые символы на двенадцать категорий, и нам удобнее использовать массив для хранения числа появлений каждой цифры, а не десять отдельных переменных. Вот один из вариантов прог& 656o1422g #1088;аммы:

main

int ndigit[10];

ndigit является массивом из десяти целых. В языке «C» индексы массива всегда начинаются с нуля (а не с 1, как в ФОРТРАНЕ или PL/1/, так что элементами массива являются:

ndigit ndigit ndigit

for

Индекс может быть любым целым выражением, которое, конечно, может включать целые переменные, такие как I , и целые константы.

Эта конкретная прог& 656o1422g #1088;амма сильно опирается на свойства символьного представления цифр. Так, например, в прог& 656o1422g #1088;амме проверка:

if c >= '0' && c <= '9')...



c

c

char int int, Tак что в арифметических выражениях переменные типа CHAR по существу идентичны переменным типа int

c

c ndigit



if (c >= '0' && c <= '9')

++ndigit[c-'0'];

else if(c == ' ' || c == '\n' || c == '\t')

++nwhite;

else

++nother;

if (

else if (условие)

оператор-2;

else

оператор-3;

часто встречаются в прог& 656o1422g #1088;аммах как средство выражения ситуаций, в которых осуществляется выбор одного из нескольких возможных решений.

Прог& 656o1422g #1088;амма просто движется сверху вниз до тех пор, пока не удовлетворится какое-нибудь условие; тогда выполняется соответствующий «оператор»

else else и соответствующий «оператор» опущены (как в прог& 656o1422g #1088;амме подсчета слов), то никаких действий не производится. Между начальным if else



else if

оператор .

switch (переключатель), который рассматривается в главе 4, представляет другую возможность для записи разветвления на несколько вариантов, этот оператор особенно удобен, когда проверяемое выражение является либо просто некоторым целым, либо символьным выражением, совпадающим с одной из некоторог& 656o1422g #1086; набора констант. Версия этой прог& 656o1422g #1088;аммы, использующая оператор switch

. Напишите прог& 656o1422g #1088;амму, печатающую гистограмму длин слов из файла ввода. Самое легкое - это начертить гистограмму горизонтально; вертикальная ориентация требует больших усилий.






Document Info


Accesari: 949
Apreciat: hand-up

Comenteaza documentul:

Nu esti inregistrat
Trebuie sa fii utilizator inregistrat pentru a putea comenta


Creaza cont nou

A fost util?

Daca documentul a fost util si crezi ca merita
sa adaugi un link catre el la tine in site


in pagina web a site-ului tau.




eCoduri.com - coduri postale, contabile, CAEN sau bancare

Politica de confidentialitate | Termenii si conditii de utilizare




Copyright © Contact (SCRIGROUP Int. 2025 )