Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Programmirovanie_na_S__Ch1_Strukturnoe_i_modul.doc
Скачиваний:
14
Добавлен:
22.02.2015
Размер:
553.98 Кб
Скачать

Введение

В настоящем учебно-методическом пособии рассматриваются основы структурного и модульного программирования на алгоритмическом языке высокого уровня С++. Материал излагается в соответствии со стандартом языка ISO/IEC 14882 (1998).

На многочисленных примерах показывается использование конструкций языка и базовых структур данных. Задания для самостоятельной работы позволят изучающим данный материал, закрепить его непосредственно на практике.

Продолжением материала, представленного в этой части, станет пособие, обучающее пользователей основам объектно-ориентированного программирования.

1. Структурное программирование

Традиционная технология программирования складывалась в условиях, когда основными потребителями программ были научные учреждения, вычислительные ресурсы были ограничены, а проблемы сопровождения, по существу, неизвестны. Основными критериями качества программы считалась ее узко понимаемая эффективность и компактность. Со временем сложность программ возросла настолько, что на их разработку уходили годы труда большого коллектива, а в результате программы появлялись с большим опозданием и содержали много ошибок.

Кризис программного обеспечения привел к необходимости создания нового способа разработки программ, который снижал бы общие затраты на протяжении всего цикла – от замысла до завершения эксплуатации. Такая технология появилась в начале 70-х годов ХХ в. и была названа структурным программированием. В его основе лежит сочетание теории программирования и личного опыта высококвалифицированных программистов, а также учет современных требований к программам и промышленного характера их производства.

Структурное программирование – это технология создания программ, позволяющая путем соблюдения определенных правил уменьшить время разработки и количество ошибок, а также облегчить возможность модификации программы. Структурный подход охватывает все стадии разработки проектов: спецификацию, проектирование, собственно программирование и тестирование.

Состав языка

Алфавит языка

Алфавит языка включает:

– строчные и прописные латинские буквы и знак подчеркивания;

– арабские цифры;

– специальные знаки;

– пробельные символы (символ табуляции, перехода на новую строку и пробел).

Из символов алфавита формируются лексемы языка:

– идентификаторы:

– ключевые (зарезервированные) слова;

– знаки операций;

– константы;

– разделители (скобки, точка с запятой, пробельные символы).

Идентификаторы

Идентификатор – имя объекта программы. В имени могут использоваться латинские буквы, цифры и знак подчеркивания. Прописные и строчные буквы различаются, например, max, MAX, Max – три различных имени. Первым символом не может быть цифра, но может быть знак подчеркивания. Нельзя использовать внутри имени пробелы. Длина идентификатора не ограничена по стандарту, но некоторые компиляторы налагают на нее ограничения.

!!! В качестве имени нельзя использовать зарезервированные слова.

Зарезервированные (ключевые) слова

Ключевые слова – это зарезервированные идентификаторы. Их можно использовать только в том смысле, в котором они определены. В табл. 1 представлен список зарезервированных (ключевых) слов языка С++.

Знаки операций

Знак операции – это один или несколько символов, определяющих действие над данными (операндами). Внутри знака операции пробелы не допускаются. Операции делятся на унарные (имеющие один операнд), бинарные (два операнда) и тернарную (три операнда). Один и тот же знак может интерпретироваться по- разному, в зависимости от контекста.

Таблица 1

Список ключевых слов С++

Ключевое слово

Ключевое слово

Ключевое слово

Ключевое слово

asm

auto

bool

break

case

catch

char

class

const

const_cast

continue

default

delete

do

double

dynamic_cast

else

enum

explicit

extern

export

false

float

for

friend

goto

if

inline

int

long

mutable

namespace

new

operator

private

protected

public

register

reinterpret_cast

return

short

signed

sizeof

static

static_cast

struct

switch

template

this

threw

true

try

tyopedef

typeid

typename

union

unsigned

using

virtual

void

volatile

wchar_t

while

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]