- •Методические указания
- •«Алгоритмизация и программирование»
- •Часть 1. Понятие алгоритма и принципы алгоритмизации
- •1 Основные принципы разработки алгоритмов и программ
- •Лабораторная работа 1
- •3 Циклический вычислительный процесс
- •Задания для самостоятельной работы
- •Лабораторная работа 2 селективная обработка массивов
- •Общие сведения
- •1 Селективная (выборочная) обработка информации
- •2 Нахождение экстремального значения
- •3 Формирование одномерного рабочего массива
- •3.7 Сортировка элементов массива
- •Задания для самостоятельной работы
- •Лабораторная работа 3 вложенные циклы. Обработка двумерных массивов
- •Общие указания
- •1 Вложенные циклы
- •3.9 Обработка заданной строки (столбца) матрицы
- •3.10 Обработка заданной диагонали матрицы
- •3.11 Селективная обработка строки (столбца) матрицы, удовлетворяющей заданному условию
- •Часть 2. Составление и отладка программы. Вычисление и обработка результатов
- •Ход работы
- •Вопросы для контроля и самостоятельной работы
- •Лабораторная работа 5
- •Символы типа
- •Задание к лабораторной работе
- •Лабораторная работа №6 Разветвляющийся вычислительный процесс с различными логическими условиями: оператор if... Else, условная операция (?:).
- •Теоретические сведения
- •Ход работы
- •Контрольные вопросы для подготовки и самостоятельной работы
- •Лабораторная работа 7 Программирование разветвляющегося циклического вычислительного процесса.
- •Теоретические сведения
- •Алгоритм работы оператора цикла for ():
- •Задание к лабораторной работе
- •Лабораторная работа №8
- •Ход работы
- •Задание к лабораторной работе
- •Операции с, их приоритеты и использование. Преобразование типов (4 часа)
- •Приоритет операций и порядок выполнения (ассоциативность)
- •(Новый_тип) операнд
- •Ход работы
- •Контрольные вопросы для подготовки и самостоятельной работы
- •Лабораторная работа №10 Массивы. Селективная обработка массивов
- •Теоретические сведения
- •Требования к содержанию отчёта приведены в лабораторной работе №1
- •Контрольные вопросы для подготовки и самостоятельной работы
- •Лабораторная работа №11
- •Ход работы
- •Контрольные вопросы для подготовки и самостоятельной работы
- •Лабораторная работа №12 Сортировка одномерных массивов
- •Многомерные массивы. (2часа)
- •Теоретические сведения
- •Контрольные вопросы для подготовки и самостоятельной работы
- •Изучение графических средств с
- •Графические функции
- •Графические примитивы
- •Ход работы
- •Контрольные вопросы для подготовки и самостоятельной работы
Символы типа
Символ |
Ожидается на входе |
Тип аргумента |
d D o O i I u
U
x
X
e, E
f
g, G
s c |
Десятичное целое Десятичное целое Восьмеричное целое Восьмеричное целое Десятичное целое Десятичное целое Десятичное целое без знака Десятичное целое без знака Шестнадцатеричное целое Шестнадцатеричное целое Число с плавающей запятой Число с плавающей запятой Число с плавающей запятой Строка символов Символ |
Указатель на int (int *arg) Указатель на long (long *arg) Указатель на int (int *arg) Указатель на long (long *arg) Указатель на int (int *arg) Указатель на long (long *arg) Указатель на unsigned int (unsigned int *arg)
Указатель на unsigned long (unsigned long *arg)
Указатель на int (int *arg)
Указатель на long (long *arg)
Указатель на float (float *arg)
Указатель на float (float *arg)
Указатель на float (float *arg)
Указатель на массив символов (char arg[ ]) Указатель на символ (char *arg) |
Пример
/* ЗАНЯТИЕ N 2
Разработал Сидоров К.В. */
#include <stdio.h> //Директива препроцессора (#include) включает
#include <conio.h> //Заголовочные файлы с расширением (.h)
#include <string.h>
int a; //Объявление глобальной переменной типа int
int main(void) //Главная функция
{//Начало составного оператора (блока, тела функции)
char c,buf[20]; //Объявление локальных переменных
char *pst="\"slovo\"";//Объявление локальной переменной c
float f=26.6; //инициализацией
double d;
clrscr(); //Функция очистки экрана
printf(" Ввод переменной типа char: "); //Функция вывода на экран
fflush(stdin); //Функция очистки буфера клавиатуры
scanf("%c",&c); //Функция ввода данных,
// & - операция взятия адреса
printf(" Вывод переменной типа char: ");
printf("%c\n",c);
printf("\n Ввод переменной типа int: ");
scanf("%d",&a);
printf(" \t Вывод переменной типа int\n");
printf(" Формат вывода (int): +6d #6o #8x\n");
printf("\t\t |%+6d|%#6o|%#8x|\n ",a,a,a);
printf("\n Ввод переменной типа int: ");
scanf("%d",&a);
printf("\t Вывод переменной типа int\n");
printf(" Формат вывода (int): -6d +6d #8d\n");
printf("\t\t |%-6d|%+6d|%#6d|\n",a,a,a);
printf("\n Вывод исходной cтроки: %s\n\n",pst);
printf(" Ввод cтроки в массив: ");
scanf("%s",buf);
printf(" Вывод cтроки из массива: %s\n\n",buf);
printf(" Ввод переменных типа float and double (через пробел):\n");
printf("\t\t ");
scanf("%f %lf",&f,&d);
printf("\t Вывод переменных типа float and double\n");
printf(" Формат вывода (float): 10.6f 10.6e +10.6g\n");
printf("\t\t |%10.6f|%10.6e|%+10.6g|\n",f,f,f);
printf(" Формат вывода (double): 10.8lf 10.8e 10.8g\n");
printf("\t\t |%10.8lf|%10.8e|%+10.8g|\n ",d,d,d);
getche(); //Функция ввода символа с клавиатуры
return 0; //Оператор возврата значения из функции (0)
} //Конец составного оператора (блока, тела функции)
/* Результат выполнения программы
Ввод переменной типа char: u
Вывод переменной типа char: u
Ввод переменной типа int: 78
Вывод переменной типа int
Формат вывода (int): +6d #6o #8x
| +78| 0116| 0x4e|
Ввод переменной типа int: 90
Вывод переменной типа int
Формат вывода (int): -6d +6d #8d
|90 | +90| 90|
Вывод исходной cтроки: "slovo"
Ввод cтроки в массив: символы 45!"#:$.;?%;?
Вывод cтроки из массива: символы 45!"#:$.;?%;?
Ввод переменных типа float and double (через пробел):
78.89 6778.0
Вывод переменных типа float and double
Формат вывода (float): 10.6f 10.6e +10.6g
| 78.889999|7.889000e+01| +78.89|
Формат вывода (double): 10.8lf 10.8e 10.8g
|6778.00000000|6.77800000e+03| +6778| */
Ход работы
Изучить теоретические сведения.
Выполнить загрузку интегрированной среды разработки С (IDE) для Borland C, расположенной в каталоге N:\APL\BC\BIN\BC.EXE, из активной директории.
Ознакомиться с форматом функций printf() и scanf().
Скопировать примеры для функций printf, scanf из встроенной помощи в активное окно и изучить их работу. Изучить синтаксические конструкции, приведенные во встроенной помощи.
Выполнить загрузку программ-примеров (N:\APL\TC\LAB\*.CPP), их корректировку с использованием различных возможностей функций printf (), scanf (), сохранение файлов и компиляцию.
Написать отчет и сделать выводы по работе.
Подготовиться к защите лабораторной работы, изучив вопросы по данной теме, изучив контрольные вопросы по теме.