Скачать презентацию 1 Основы языка программирования С 1 1 Скачать презентацию 1 Основы языка программирования С 1 1

Основы С.pptx

  • Количество слайдов: 31

1. Основы языка программирования С 1. Основы языка программирования С

1. 1. Этапы обработки программы 1. 1. Этапы обработки программы

1. 5. Предложения языка 1. 5. Предложения языка

1. 10. Определение данных 1. 10. Определение данных

1. 11. Операторы языка 1. 11. Операторы языка

1. 11. Операторы языка 1. 11. Операторы языка

1. 11. Операторы языка 1. 11. Операторы языка

1. 12. Ввод/вывод 1. 12. Ввод/вывод

1. 13. Пример программы Необходимо проверить правильность работы функции возведения вещественного числа в целую 1. 13. Пример программы Необходимо проверить правильность работы функции возведения вещественного числа в целую степень. Функция main() должна - ввести требуемые данные - вычислить степень числа - вывести результат

1. 14. Результаты тестирования 1. 14. Результаты тестирования

1. 15. Задача Дано целое число n. Написать функцию, которая определяет количество цифр в 1. 15. Задача Дано целое число n. Написать функцию, которая определяет количество цифр в записи числа. Протестировать функцию.

1. 16. Задачи 1. 16. Задачи

2. Массивы и указатели 2. Массивы и указатели

2. 1. Массивы 2. 1. Массивы

2. 1. Массивы a[0] = 10 a[1] = 20 a[2] = 30 a = 2. 1. Массивы a[0] = 10 a[1] = 20 a[2] = 30 a = 1245016 (12 ff 58)

2. 2. Указатели int a[3] = {10, 20, 30}; int *p; 2. 2. Указатели int a[3] = {10, 20, 30}; int *p;

2. 2. Указатели 2. 2. Указатели

2. 5. Передача аргументов 2. 5. Передача аргументов

2. 5. Передача аргументов 2. 5. Передача аргументов

2. 5. Передача аргументов Задача: Дана нуль ограниченная строка символов. Подсчитать количество символов в 2. 5. Передача аргументов Задача: Дана нуль ограниченная строка символов. Подсчитать количество символов в строке (длину строки).

3. Стандартная библиотека 3. Стандартная библиотека

Требуется явное преобразование типа: char * pc = (char *) malloc(80); int * pi Требуется явное преобразование типа: char * pc = (char *) malloc(80); int * pi = (int *)calloc(20, sizeof(int));

3. 2. Работа с памятью 3. 2. Работа с памятью

3. 3. Обработка строк char *strcat(char *s 1, const char *s 2) char *strncat(char 3. 3. Обработка строк char *strcat(char *s 1, const char *s 2) char *strncat(char *s 1, const char *s 2, size_t n) const char *strchr(const char *s, int c) const char *strrchr(const char *s, int c) int strcmp(const char *s 1, const char *s 2) int strncmp(const char *s 1, const char *s 2, size_t n) char *strcpy(char *s 1, const char *s 2) char *strncpy(char *s 1, const char *s 2, size_t n)

3. 3. Обработка строк size_t strcspn(const char *s 1, const char *s 2) size_t 3. 3. Обработка строк size_t strcspn(const char *s 1, const char *s 2) size_t strlen(const char *s) const char *strpbrk(const char *s 1, const char *s 2) const char *strstr(const char *s 1, const char *s 2) char *strtok(char *s 1, const char *s 2)

3. 4. Ввод строки gets(char *); не контролирует размер памяти scanf(“%Ls”, buf) (размер памяти 3. 4. Ввод строки gets(char *); не контролирует размер памяти scanf(“%Ls”, buf) (размер памяти – L + 1); не вводит пробелы и символ ‘n’ scanf(“%L[^n]”, buf); вводит любые символы, кроме ‘n’ остается во входном потоке

3. 4. Ввод строки char buf[L + 1]; int n; n = scanf(“%L[^n]%*c”, buf); 3. 4. Ввод строки char buf[L + 1]; int n; n = scanf(“%L[^n]%*c”, buf); позволяет удалить из входного потока символ ‘n’

3. 5. Варианты ввода данных n = scanf(“%L[^n]”, buf); 1. Вводится пустая строка входной 3. 5. Варианты ввода данных n = scanf(“%L[^n]”, buf); 1. Вводится пустая строка входной поток: Результат: n=0 buf не меняет своего содержимого входной поток:

3. 5. Варианты ввода данных n = scanf(“%L[^n]”, buf); 2. Вводится срока длиной k 3. 5. Варианты ввода данных n = scanf(“%L[^n]”, buf); 2. Вводится срока длиной k <= L входной поток: Результат: n=1 buf: входной поток:

3. 5. Варианты ввода данных n = scanf(“%L[^n]”, buf); 3. Вводится строка длиной k 3. 5. Варианты ввода данных n = scanf(“%L[^n]”, buf); 3. Вводится строка длиной k > L входной поток: Результат: n=1 buf: входной поток: