Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Математические функции. char *string = Поиск символа ;




Void main (void)

Void main (void)

{

char *string = "Поиск символа";

char *ptr;

ptr = strchr(string,'и');

if (*ptr)

printf("Первый символ \'и \'имеет адрес %p \n",ptr);

else printf("Символ не найден\n");

ptr = strrchr(string,'и');

if (*ptr)

printf("Последний символ \'и\'имеет адрес %p \n",ptr);

else printf("Символ не найден\n");

}

 

Функция strchr(string, ch) отыскивает первое, а функция strrchr(string, ch) — последнее вхождение символа ch и возвращает адрес, по которому он находится (символ конца строки считается частью строки).

7. Преобразования символьной строки — strlwr() и strupr(), пример 7.16:

 

// Пример 7.16.

// Преобразование символьной строки,

// функции strlwr(), strupr()

#include <stdio.h>

#include <string.h>

{

char *str1 = “ABCDEFGH”;

char *str2 = “abcdefgh”;

strlwr(str1);

strupr(str2);

printf(«\nПреобразование прописных букв в строчные: %s\n»,str1);

printf(«\nПреобразование строчных букв в прописные: %s\n»,str2);

}

 

Функция strlwr() преобразует прописные буквы в строке символов в строчные, а функция strupr() — наоборот: строчные в прописные.

 

Основные математические функции приведены в табл. 7.6

 

Таблица 7.6 — Математические функции

Наименование Назначение Определение функции Имя библио-течного файла  
Абсолютное значение
abs(x) cabs(x) labs(x) fabs(x) аргумента комплексного числа числа типа long числа из потока int abs(int i);   long labs(long n); double fabs(double x); stdlib.h math.h stdlib.h math.h
Тригонометрические функции
cos(x) sin(x) tan(x) acos(x) asin(x) косинус синус тангенс арккосинус арксинус double cos(double x); double sin(double x); double tan(double x); double acos(double x); double asin(double x); math.h math.h math.h math.h math.h
Гиперболические функции
cosh(x) sinh(x) tanh(x) косинус синус тангенс double cosh(double x); double sinh(double x); double tanh(double x); math.h math.h math.h

 

Экспоненциальные, логарифмические и степенные функции
exp(x) log(x)   log10(x)   pow(x,y)   pow10(p) sqrt(x)   ex ln(x) — логарифм по основанию e lg(x) — логарифм по основанию 10 xy   10 p квадратный корень числа double exp(double x); double log(double x);   double log10(double x);   double pow(double x, double y); double pow10(int p); double sqrt(double x); math.h math.h   math.h   math.h   math.h math.h
Другие функции
ceil(x) floor(x) hypot(x,y)     rand()   qsort()   округление сверху округление снизу вычисление гипоте­нузы прямоуголь­ника генерация случай­ных чисел ускоренная сорти­ровка double ceil(double x); double floor(double x); double hypot(double x, double y);   int rand(void);   void qsort(void *base, int nelem,int width, int (*fcmp)()); (1) math.h math.h math.h     stdlib.h   stdlib.h  

 

 

В выражении (1): base — указывает на базовый (нулевой) элемент таблицы, подлежащей сортировке; nelem — число элементов таблицы; width — размер каждого элемента таблица в байтах; функция cравнения *fcmp принимает два аргумента (elem1) и (elem2), каждый из которых указывает на элемент таблицы.

 

Приложение А

Таблица А.1 — Работа с файлами

Действие Меню Клави-атура Примечание
Новый файл File | New   Появляется новое окно с именем NONAME.CPP
Открыть файл File | Open F3 Выбрать файл из списка, если необходимо другое расширение, поменять его в верхней строке и нажать <Enter>
Сохранить файл File | Save F2 Если файл новый, задать его имя
Сохранить файл под другим именем File | Save as..   Задать нужное имя файла
Сохранить все открытые файлы File | Save all   Спрашивает только имена новых файлов
Сменить рабочий каталог File | Change dir...   Всегда работайте только в своём каталоге!
Распечатать файл File | Print   Проверьте принтер
Выход из BorlandC File | Quit Alt - X Если какие-либо файлы изменялись, спрашивает, сохранять ли их (Yes — сохранять; No — нет)

 

 

Таблица А.2 — Редактирование текста в окне

Действие Меню Клави-атура Примечание
Отмена предыдущих действий Edit | Undo Alt-BkSp Можно восстанавливать удалённый текст
“Отмена отмены” Edit | Redo Shift-Alt-BkSp Восстанавливает текст, как было до Undo
Выделить блок текста   Shift-® Shift- Текст выделяется не прямоугольными блоками, а по строкам.
Выделить строку (часть строки)   Shift-­ Shift-¯ Когда курсор в первой колонке — выделяется вся строка, иначе — остаток строки
Переместить выделенный блок в карман Edit | Cut Shift-Del “Карман” по английски называется Clipboard — буфер обмена.
Скопировать в карман Edit | Copy Ctrl-Ins Удобно использовать для набора повторяющихся фрагментов программы
Вставить из кармана Edit | Paste Shift-Ins Вставляет текст с места положения курсора

Таблица А.3 — Работа с окнами

Действие Меню Клави-атура Примечание
Размер/Перемеще-ние окна Window | Size/Move Ctrl-F5 “Стрелки” ­®¯ перемещают окно Shift-“стрелки” изменяют его размер
“Распахнуть” окно Window | Zoom F5 Окно на весь экран; восстановить — также F5
Расположить окна “каскадом” Window |Cascade   Все открытые окна становятся видны, их легко перебирать
Расположить окна “черепицей” Window | Tile   Видно содержимое сразу всех окон, но если окон много, они получаются маленькие
Перейти к следующему окну Window | Next F6 Все окна перебираются “по кругу”, так можно добраться до любого окна, если нет мышки
Закрыть окно Window | Close Alt-F3 Если текст в окне изменен, будет вопрос — сохранять ли его (Yes (да) или No (нет))
Закрыть все окна Window | Close all   Спрашивает, есть ли не сохраненные окна
Список окон Window | List all... Alt-0 Можно выбрать любое окно из списка

 

Таблица А.4 — Специальные окна

Действие Меню Клави-атура Примечание
Сообщения об ошибках Window ½ Message   Ошибки (Errors) и предупреждения (Warnings) компиляции и построения
Текстовый вывод программы Window | Output   Все то, что напишет программа текстом, попадает сюда (не работает в графике)
Просмотр переменных Window | Watch   Показывает значения выбранных переменных в процессе отладки программы (см. Отладка)
Экран программы Window | User screen Alt-F5 Полностью переключает на рабочий экран отлаживаемой программы, даже если она работает в графическом режиме. Нажмите любую клавишу для возврата в BorlandC
Регистры процессора Window | Register   Требуется для отладки системных программ
Окно проекта Window | Project   Требуется, когда программа состоит из нескольких исходных файлов

Таблица А.5 — Компиляция, построение и запуск программы

Действие Меню Клави-атура Примечание
Компилировать файл Compile | Compile Alt-F9 Компилирует файл из активного окна
Ошибки компиляции Окно Message Enter Нажатие Enter переводит курсор в строку, где произошла ошибка
Компиляция/Постро-ение Compile | Make F9 Компилирует файлы, если этого не произошло ранее, и строит программу, если она не построена
Ошибки построения Окно Message   В окне перечисляются имена функций и переменных, связь с которыми не найдена в библиотеках или файлах
Построить всё Compile | Build all   Перекомпилирует и перест-раивает всё заново, например, после изменения параметров среды
Запуск программы Run | Run Ctrl-F9 Выполняет программу, если необходимо, то компилирует и строит программу. Если есть точка останова (см. Отладка), программа остановится на точке останова
Задать аргументы Run | Arguments...   Если программа требует задания аргументов при запуске, здесь их можно задать

 

Таблица А.6 — Отладка

Действие Меню Клави-атура Примечание
Пошаговое выполнение Run | Step over F8 Выполняет один шаг (одну строку) программы, строка, на которой остановлен процесс выполнения подсвечена. После выполнения шага можно смот-реть за изменениями перемен-ных программы (см. далее)
Вход в отладку функции Run | Trace into F7 Если программа остановлена на вызове функции, то F7 открывает текст этой функции и начинает ее пошаговую отладку
Выполнить до строки, на которой стоит курсор Run | Go to cursor F4 Если нет смысла “прокручивать” цикл в пошаговом режиме, можно выполнить его сразу, поставив текстовый курсор после цикла и нажав F4
Установить/убрать точку останова на строке, в которой стоит курсор Debug | Toggle Breakpoint Ctrl-F8 Если необходимо проконтролировать переменные в определенном месте программы, необходимо поставить в этом месте точку останова и начать выполнение (Ctrl-F9). Точки
      останова подсвечиваются красным в тексте программы.Выключить точку останова — также нажать Ctrl-F8
Контроль точек останова Debug | Breakpoints...   Появляется окно, которое позволяет изменять (Edit), удалять (Delete) или просматривать местоположение (View) точек останова
Изменение условия останова Debug | Breakpoints... Edit   При редактировании точки останова поле Condition задает условие останова, которое представляет собой выражения языка С (с использованием всех переменных, доступных в точке останова, нельзя использовать вызов функций в данном выражении); поле Pass Count задаёт число проходов мимо точки без останова, прежде, чем произойдёт останов. После редактирования этих полей необходимо нажать кнопку Modify, чтобы изменить условие останова
Добавить переменную в окно просмотра переменных Watch Debug | Watches | Add watch... Ctrl-F7 (или Ins в окне Watch) Когда курсор стоит на начале имени переменной, BorlandC предлагает просмотреть именно эту переменную. В этом же окне можно исправить, написать другую переменную или выражение
Удалить переменную из окна Watch Debug | Watches | Delete watch Del (в окне Watch) Если активным является окно Watch, можно вставить переменную (Ins), изменить (Enter) или удалить (Del)
Удалить все переменные из Watch Debug | Watches | Remove all watches    
Изменить имя переменной в Watch Debug | Watches | Edit watch... (в окне Watch) Если после переменной или выражения Watch поставить запятую, а затем указать один из спецификаторов формата (C —символы, D — десятичные целые, X —шестнадцатери-чные, F — вещественные, M — дамп памяти, P —указатель (адрес), R —стру-ктура, можно поменять формат вывода данных
Инспектор переменных Debug | Inspect... Alt-F4 Показывает более подробную информацию, чем Watch (в отдельном окне)
Посчитать/Изме-нить Debug | Evaluate/Modify Ctrl-F4 Посчитать (Evaluate) выражение (результат в поле Result) или изменить (Modify) значение переменной (в поле New Value) в процессе отладки
Завершить отладку Run | Program reset Ctrl-F2 Завершает сеанс отладки, например, если необходимо начать его с начала

 

 

Таблица А.7 — Библиотечные функции

Имя функции Назначение Определение Имя файла
Функции ввода-вывода с консоли (на консоль)
printf   scanf   cgets   cputs   getch   getche осуществляет форматированный вывод осуществляет форматированный ввод читает строку с консоли   пишет строку на консоль получает символ с консоли без отображения получает символ с консоли с отображением int printf(char *format [,argument,..]); int scanf (char *format [,argument,..]); char *cgets(char *string);   void cputs(char *string);   int getch(void);   int getche(void); stdio.h   stdio.h   conio.h   conio.h   conio.h   conio.h

 

 

Продолжение таблицы А.7

Имя функции Назначение Определение Имя файла
Функции работы со строками
strcat   strcmp   strcpy     strdup     stricmp   strlen   strlwr   strupr     strrchr     strpbrk     strrev   strnset   strset Присоединяет одну строку к другой Сравнивает одну строку с другой Копирует одну строку в другую   Копирует строку во вновь создаваемую строку Сравнивает одну строку с другой без учета различия строчных и прописных букв Вычисляет длину строки   Преобразует прописные буквы в строчные Преобразует строчные буквы в строку прописных букв Отыскивает в строке последнее вхождение заданного символа Отыскивает в строке первое вхождение любого символа из переданного функции набора символов Реверсирует строку   Заменяет специфицированное количество символов в строке на указанный символ Заменяет все символы в строке на указанный символ char *strcat(char *destin, char *source); int strcmp(char *str1, char *str2); char *strcpy(char *destin, char *source); char *strdup(char*str);   int stricmp(char *str1,char *str2);     unsigned strlen(char *str);   char *strlwr(char *str);   char *strupr(char *str);     char strrchr(char *str, char ch);   char *strpbrk(char *str1, char *str2);     char *strrev(char *str); char *strnset(char *str, char ch, unsigned n);   char *strset(char *str, char ch); string.h

Продолжение таблицы А.7

Имя функции Назначение Определение Имя файла
Функции для работы с потоками
fopen   fclose   exit   eof   feof   fseek   fread     fwrite     fscanf   fprintf   getw   putw   getc   putc   fgetc   fputc Открывает поток   Закрывает поток   Завершает программу   Проверяет на конец файла в потоке Проверяет на конец файла в потоке Передает указатель файла (устанавливает указатель файла, связанного со stream, на новую позицию в файле, заданного в fromwhere, на количество байт, указанных в offset Читает данные из потока   Пишет в поток     Выполняет форматированный ввод из потока Осуществляет форматированный вывод в поток, считывает целое из потока Получает целочисленное значение из потока Выводит символ или слово в поток Получает символ из потока Выводит символ ch в поток вывода stream Получает символ из потока Посылает символ в поток FILE *fopen(char *filename, char *type); int fclose(FILE *stream);   void exit(FILE *stream);   int eof(int handle);   int feof(FILE *stream);   int fseek(FILE *stream, longn offset, int fromwhere);     int fread(void *ptr, int size, int nitems, FILE *stream);   int fwrite(void *ptr, int size, int nitems); int fscanf(FILE *stream, char *format[,argument,...]); int fprintf(FILE *stream, char *format[,argument,...]);   int getw(FILE *stream);   int putw(int w,FILE *stream); int getc(FILE *stream);   int putc(int ch, FILE *stream); int fgetc(FILE *stream); int fputc(int ch, FILE *stream); stdio.h   stdio.h   stdlib.h   io.h   stdio.h     stdio.h     stdio.h     stdio.h     stdio.h     stdio.h     stdio.h   stdio.h   stdio.h   stdio.h   stdio.h   stdio.h  

 

Продолжение таблицы А.7

Имя функции Назначение Определение Имя файла
fputs   fgets     gets   puts getchar   Посылает строку в поток Получает строку из по- тока   Получает строку из потока Вводит строку в поток Получает символ из потока int fputs(char *string, FILE *stream); char *fgets(char *string, int n, FILE *stream); char *gets(char *string);   int puts(char *string); int getchar(void); stdio.h   stdio.h     stdio.h   stdio.h stdio.h
Функции для работы с памятью
calloc     mallocat free Выделяет основную память   Размещает основную память Освобождает выделенный блок памяти void *calloc(unsigned nelem, unsigned elsize); void *malloc(unsignd size);   voiod free(void *ptr); stdlib.h и alloc.h   stdlib.h и alloc.h stdlib.h и alloc.h
Другие функции
clrscr   sizeof   time Производит очистку экрана Определяет размер объектов в байтах Получает время дня void clrscr(void);   long time(long *tloc); conio.h   time.h

 




Поделиться с друзьями:


Дата добавления: 2014-12-27; Просмотров: 472; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.017 сек.