
- •Основные понятия программирования
- •Понятие алгоритма. Алгоритмизация
- •Свойства алгоритма
- •Запись алгоритма на естественном языке
- •Изображение алгоритма в виде схемы
- •Понятие о языках программирования
- •Понятие о структурном подходе к разработке алгоритмов
- •4 Идти к 8
- •6 Идти к 8
- •8 Останов
- •Первая программа на Си
- •Процесс создания программы
- •Комментарии
- •Директива #include
- •Макросы
- •Переменные и типы данных
- •Правила именования идентификаторов
- •Типы данных
- •Int двухбайтовое целое число
- •Оператор printf: вывод на экран
- •Последовательности для вывода специальных символов
- •Спецификация вывода
- •X тип int в шестнадцатеричном виде
- •Оператор scanf: ввод с клавиатуры
- •Логическая организация программы на Си
- •Функция main
- •Глобальные и локальные переменные
- •Операторы и операции
- •Арифметические операции
- •Битовые операции
- •Операции отношения
- •Логические операции
- •Операции присваивания
- •Другие операции
- •Математические функции
- •Управляющие структуры
- •Операторы ветвления
- •Операторы цикла
- •Массивы
- •Функции
- •Интегрированная среда разработки turbo c
- •Общие сведения и принципы работы
- •Стандартные органы управления
- •Главное меню
- •Запуск иср и выход
- •Работа с окнами и файлами
- •Система помощи
- •Редактор
- •Компиляция и выполнение программ
- •Технология создания с-программы
- •Лабораторные работы
- •Лабораторная работа №1
- •Создание нового файла
- •Ввод и редактирование исходного текста
- •Сохранение
- •Выполнение программы
- •Исправление ошибок
- •Просмотр результатов выполнения
- •Закрытие файла
- •Открытие и выполнение ранее сохраненного файла
- •Вызов справки
- •Лабораторная работа №2
- •Лабораторная работа №3
- •Лабораторная работа №4
- •Лабораторная работа №5
- •Лабораторная работа №6
- •Лабораторная работа №7
- •Лабораторная работа №8
- •Список вопросов
- •Литература
- •Приложение Пример оформления отчета по лабораторной работе
- •Блок-схема алгоритма
- •Текст программы
- •Результат выполнения программы
- •Теория и технология программирования
-
Оператор scanf: ввод с клавиатуры
Оператор scanf (scan — сканировать) является одной из функций ввода, имеющихся во внешних библиотеках. Для ее использования в программе необходимо подключить заголовочный файл stdio.h.
Каждой вводимой переменной в строке функции scanf должна соответствовать спецификация. Формат спецификации ввода аналогичен спецификации вывода (см. оператор printf), но обычно используется простейшая форма с указанием только символа формата. Перед именами переменных следует ставить символ &. Этот символ означает «взять адрес».
Ниже приведен пример (Листинг 4) использования оператора scanf.
Оператор
scanf(“%d”, &weight); |
ожидает ввода с клавиатуры целого числа типа int, о чем свидетельствует спецификация ввода %d. После нажатия клавиши ENTER введенное число помещается в переменную weight.
Внимание! В функции scanf, в отличие от printf, спецификация ввода для типа double — %lf. |
Студенту на заметку! В блок-схеме оператору scanf соответствует блок ввода:
В блоке пишется слово «Ввод» и перечисляются через запятую все переменные, вводимые с клавиатуры при помощи данного оператора. |
Листинг 4 — Пример использования оператора scanf
/* scanf.c – пример использования оператора scanf */
#include <stdio.h> #include <conio.h>
void main() { int weight, /* вес */ height; /* рост */
clrscr();
printf(“Введите ваш вес: ”); scanf(“%d”, &weight); printf(“Введите ваш рост: ”); scanf(“%d”, &height);
printf(“\n\nВес = %d, рост = %d\n”, weight, height); } |
Рисунок 20 — Результат выполнения программы scanf.c
-
Логическая организация программы на Си
Си предоставляет необычайно высокую гибкость для физической организации программы. Ниже показана типичная организация небольшой программы (Листинг 5). Стоит отметить, что обычно (но не обязательно) первой по порядку в тексте программы функцией является функция main.
Листинг 5 — Типичная организация программы на Си
/* Заголовки и комментарии, описывающие программу */
/* Директивы include */ #include имя_файла_1 ... #include имя_файла_k
/* Макросы */ #define макрос_1 значение_1 ... #define макрос_m значение_m
/* Описание глобальных переменных */ тип_данных глобальная_переменная_1; ... тип_данных глобальная_переменная_n;
/* Описания, обеспечивающие ссылку вперед на функции, используемые в программе */ тип_данных имя_функции_1(формальные параметры); ... тип_данных имя_функции_p(формальные параметры);
|
/* Функция main */ тип_данных main(формальные параметры) { /* Описание локальных переменных */ тип_данных локальная_переменная_1; ... тип_данных локальная_переменная_q;
/* Тело функции main */ ... }
|
Листинг 5 — Продолжение
/* Функции, используемые в программе */ тип_данных имя_функции_1(формальные параметры) { /* Описание локальных переменных */ тип_данных локальная_переменная_1; ... тип_данных локальная_переменная_r;
/* Тело функции 1 */ ... }
...
тип_данных имя_функции_p(формальные параметры) { /* Описание локальных переменных */ тип_данных локальная_переменная_1; ... тип_данных локальная_переменная_s;
/* Тело функции p */ ... } |