Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
программирование 1 к ПОВТ.doc
Скачиваний:
32
Добавлен:
20.03.2015
Размер:
1.14 Mб
Скачать

3. В конце работы Вы должны уметь

□ Входить и выходить из среды Турбо Паскаль.

□ Выбирать нужный пункт меню.

□ Получать справку о нужных пунктах меню.

□ Создавать новые окна.

□ Изменять положение и размер окон.

□ Набирать текст, перемещаться вдоль текста.

□ Редактировать текст, используя команды работы с блоками.

□ Запускать программы на выполнение.

□ Открывать и сохранять тексты программ.

Работа 2

Обзор элементов языка С

Цель работы:

- познакомиться со структурой программ на языке C;

  • усвоить некоторые понятия лексики языка C;

  • научиться создавать, вводить и запускать простейшие программы в режиме диалога с компьютером;

  • научиться простейшим приемам вывода на экран таблиц, числовых данных;

  • закрепить навыки работы в инструментальной среде C.

I. Теоретический раздел работы

1.1. Введение

Процесс создания программы относится к одной из наиболее сложных сфер творческой деятельности человека, требующий больших усилий и специальной технологии разработки. Языки программирования, как средство общения человека и машины, отличаются своей строгостью и лаконичностью. Они имеют жестко определенную грамматику (синтаксис) и не допускают двусмысленностей и неопределенностей. Программирование, как и любое ремесло, необходимо оттачивать и совершенствовать. Но программирование - это не только знание языков, здесь важным является умение логически и в тоже время нестандартно мыслить. Кроме того, нужно помнить, что программирование – это дисциплина, ориентированная не на машину, а в конечном итоге, на человека. Хорошая программа должна быть написана так, чтобы она была понятна другим, её легко можно было бы читать и ею было бы удобно пользоваться. Хорошему стилю программирования тоже надо учиться.

Программа для компьютера – это последовательность операторов. Операторы представляют собой команды, следуя которым машина решает поставленную задачу.

Научимся создавать простейшие программы.

1.2. Структура программы на языке Borland c

Программа на языке С имеет следующую структуру:

#директивы препроцессора

………………

#директивы препроцессора

функция а ()

операторы

функция в ()

операторы

void main () //функция, с которой начинается выполнение программы операторы

описания присваивания функция пустой оператор составной выбора циклов перехода

Директивы препроцессора - управляют преобразованием текста программы до ее компиляции. Исходная программа, подготовленная на СИ в виде текстового файла, проходит 3 этапа обработки:

  1. препроцессорное преобразование текста;

  2. компиляция;

  3. компоновка (редактирование связей или сборка).

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

1) #define - указывает правила замены в тексте.

#define ZERO 0.0 - Означает, что каждое использование в программе имени ZERO будет заменяться на 0.0.

  1. #include< имя заголовочного файла> - предназначена для включения в текст программы текста из каталога «Заголовочных файлов», поставляемых вместе со стандартны­ми библиотеками.

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

После выполнения препроцессорной обработки в тексте программы не оста­ется ни одной препроцессорной директивы.

Программа представляет собой набор описаний и определений, и состоит из набора функций. Среди этих функций всегда должна быть функция с именем main. Без нее программа не может быть выполнена. Перед именем функции помещаются сведения о типе возвращаемого функцией значения (тип результата). Если функция ничего не возвращает, то указывается тип void: void main ().

void main (void) //—-------> Программа не возвращает значение

Каждая функция, в том числе и main должна иметь набор параметров, он может быть пустым, тогда в скобках указывается (void).

void main (void) //-----> Программа не использует аргументы командной строки

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

Определения - вводят объекты (объект - это именованная область памяти, частный случай объекта - переменная), необходимые для представления в программе обрабатываемых данных. Примером являются

int у = 10 ; //именованная константа

float х; //переменная

Описания - уведомляют компилятор о свойствах и именах объектов и функций, описанных в других частях программы. Операторы - определяют действия программы на каждом шаге ее исполнения.

Пример программы на Си:

#include <stdio.h> //препроцессорная директива

void main() //функция

{ //начало

printf("Hello!"); //печать

} //конец

По мере усложнения ваши программы могут возвращать значения в операционную систему или использовать параметры командной строки. Однако в настоящий момент просто используйте void в операторе с main, как показано в этой программе.

    1. Состав языка

В тексте на любом естественном языке можно выделить четыре основных элемента: символы, слова, словосочетания и предложения. Алгоритмический язык также содержит такие элементы, только слова называют лексемами (элементарными конструкциями), словосочетания - выражениями, предложения - операторами. Лексемы образуются из символов, выражения из лексем и символов, операторы из символов выражений и лексем.

Таким образом, элементами алгоритмического языка являются:

1) Алфавит языка С, который включает

  • прописные и строчные латинские буквы и знак подчеркивания; арабские цифры от 0 до 9;

  • специальные знаки "{},| []()+-/%*.\':;&?о=!#

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

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

  • Идентификаторы - имена объектов С-программ. В идентификаторе могут быть использованы латинские буквы, цифры и знак подчеркивания. Прописные и строчные буквы различаются, например, PROG1, progl и Progl - три различных идентификатора. Первым символом должна быть буква или знак подчеркивания (но не цифра). Пробелы в идентификаторах не допускаются.

  • Ключевые (зарезервированные) слова (таблица 1) - это слова, которые имеют специальное зна­чение для компилятора. Их нельзя использовать в качестве идентификаторов. Знаки операций - это один или несколько символов, определяющих действие над операндами. Операции делятся на унарные, бинарные и тернарную по количеству участвующих в этой операции операндов.

  • Константы - это неизменяемые величины. Существуют целые, вещественные, символьные и строковые константы. Компилятор выделяет константу в качестве лексемы (элементарной конструкции) и относит ее к одному из типов по ее внешнему виду.

  • Разделители - скобки, точка, запятая пробельные символы.

Таблица 1

Ключевые слова C

asm

auto

break

case

catch

char

class

const

default

delete

do

double

else

enum

extern

float

friend

goto

if

inline

int

long

new

operator

protected

public

register

return

short

signed

sizeof

static

switch

template

this

throw

try

typedef

union

unsigned

void

volatile

while

continue

for

private

struct

virtual