- •1.Массивы.
- •2.Строковые массивы.
- •4.Процедура без параметров.
- •5.Процедура с параметрами.
- •6.Использование параметров-значений и параметров-переменных в качестве входных. Параметры константы.
- •7. Ограничения, наложенные на формальные и фактические параметры.
- •8.Аппарат функций.
- •9. Побочный эффект в процедурах и функциях.
- •10)Рекурсия
- •11.Опережающее описание процедур
- •12.Параметры процедурного типа:
- •13.Внешние модули, реализованные на других языках программирования. Структура основной программы, вызывающей процедуру. Присоединение текстового файла.
- •14. Структура tpu- модуля и программы.
- •15.Ссылочные типы данных, работа со связанным списком.
- •16.Ссылочные типы данных, формирование списка студентов из файла.
- •17.Поиск элемента в списке.
- •18.Исключение и добавление
- •19.Включение в список.
- •20.Типизированный файл.
- •21.Текстовые файлы
- •22.Файлы прямого доступа:
- •1.Особенности языка Си. Программа печати текста.
- •2.Программа печати таблицы с циклом «пока».
- •3.Программа печати таблицы с арифметическим циклом.
- •4.Программа печати таблицы с арифметическим циклом при использовании символических констант.
- •5.Ввод, вывод символов. Копирование файла.
- •6.Подсчет числа символов в файле
- •7.Подсчет числа строк в файле.
- •8.Подсчет числа символов, строк и слов в файле.
- •9.Подсчет числа каждой цифры, символов пустых промежутков и всех остальных символов.
- •10.Функции
- •11.Методы передачи параметров в функциях
- •12.Заполнение массива одинаковыми значениями.
22.Файлы прямого доступа:
Их описание ничем не отличается от описания типизированных файлов, но для них специально написаны функции. Файл прямого доступа не может быть типизированным.
Номер последующей компоненты на 1 меньше длины файла.
Seek(f, n) Смещение указателя файла: Процедура смещает указатель файла f на n-ную позицию. Нумерация в файле начинается с 0.
FileSize(f) Определение количества компонент: Функция возвращает количество компонент в файле f.
FilePos(f) Определение позиции указателя: Функция возвращает порядковый номер текущего компонента файла f.
Truncate(f) Отсечение последних компонент файла: процедура отсекает конец файла, начиная с текущей позиции включительно
1.Особенности языка Си. Программа печати текста.
Эффективен, работает быстрее, чем Паскаль.Задачи на Си состоят из функций. Все программы состоят из функций. Они могут лежать в разных файлах, и каждая функция транслируется отдельно. Функция задается именем и аргументами (параметрами). Каждый оператор завершается ;{} - аналог begin и end в паскале. Входная точка в Си именуется main. Запуск программы через exe-файл. Транслятор - tcc. В программе существует всего 1 оператор. Нет оператора ввода/вывода: есть ф-ция преобразования информации, находящейся в файле. В Си апострофы двойные. Все, что заключено в них - строковая константа. \n - управляющий символ, обозначающий строки.
Программа печати
main() {
printf("моя первая программа\n");
}
Есть и такой вариант написания программы
main()
{
printf("моя\n");
printf("первая\n");
prnitf("программа\n");
}
Операции и их приоритеты ( >= , > , <= , < ) – самый высокий уровень приоритета.
Отношения ==(равно), !=(не равно ) , !-нет ,
&& -и ||-или. Чуть меньше приоритет .
2.Программа печати таблицы с циклом «пока».
Main()
{
Int lowf,upf,step;
Float far,cels;
Loaf=0;
Upf=300;
Step=20;
Fahr=lowf;
While (fahr=upf)
{
C=(5.0/9.0)*(fahr-32.0);
Printf(“%4.0f %6.1F\n”,fahr,cels);
/*6.1 значит всего 6 символов и 1 под дробную часть */
Fahr=fahr+step;
} /*конец цикла*/
} /*конец программы*/
3.Программа печати таблицы с арифметическим циклом.
# include <stdio.h>//подключаем стандартную библиотеку ввода-вывода
void main()//тело основной программы невозвратного типа (т.е. ничего не возврашают)
{//начали программку
for (int ft=0; ft<=300; ft+=20)
printf ("%4d %6.1f\n",ft,(5.0/9.0*(ft-32.0)));
}// end
Преимущества- нет лишних переменных ft теперь целого типа ,а Цельсий получаем с помощью выражения.
For(инциалтзация;условие;реинциализация)
Инициализация - выполняется 1 раз до цикла.
Условие - выполняется каждый раз до входа в цикл.
Реинциализация- после выполнения цикла делается реинициализация и опять проверяется условие.
Программа суммирования 10 цифр.
Main()
{
Int I,sum;
For(i=1;i<=10,i=i+1);
Sum=sum+I;
}
4.Программа печати таблицы с арифметическим циклом при использовании символических констант.
# include <stdio.h>//подключаем стандартную библиотеку ввода-вывода
# define LOWf 0//отныне у нас есть слово LOWf, которое равно 0
# define UPF 300
# define STEP 20
void main()//тело основной программы невозвратного типа (т.е. ничего не возврашают)
{//начали программку
for (int ft=LOWf; ft<=UPF; ft+=STEP)
printf ("%4d %6.1f\n",ft,(5.0/9.0*(ft-32.0)));
}// end
