Студопедия

КАТЕГОРИИ:


Архитектура-(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)

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




 

Функ­ция Библио-тека Назначение Аргу­менты Резуль­тат
getchar() stdio.h Ввод символа с клавиатуры (с эхом) - int
getch() conio.h Ввод символа с клавиатуры (без эха) - int
tolower(ch) ctype.h Преобразовать англ. букву в малую int int
toupper (ch) ctype.h Преобразовать англ. букву в большую int int
isdigit(ch) ctype.h Определить цифра или нет int int
isalpha(ch) ctype.h Определить англ. буква или нет int int
islower(ch) ctype.h Определить малая англ. буква или нет int int
isupper(ch) ctype.h Определить большая англ. буква или нет int int
isalnum(ch) ctype.h Определить англ. буква, цифра или нет int int
isspace(ch) ctype.h Определить пустой ли символ int int

 

// Пример 5.1.6

// Функции преобразования и классификации символов

#include <iostream>

#include <ctype.h>

using namespace std;

int main() {

setlocale(LC_ALL, "Russian"); // для вывода на экран русского текста

unsigned char c = '\n';

c=tolower(c); // преобразовать в малую; toupper() - в большую

if (isdigit(c))// цифра?

cout << c << " Цифра\n";

else

cout << c << "Не цифра\n";

if (isalpha(c)) // англ. буква?

cout << c << " Буква\n";

else

cout << c << " Не буква\n";

if (islower(c)) // малая?

cout << c << " Прописная буква\n";

else

cout << c << " Заглавная буква\n";

if (isupper(c)) // большая?

cout << c << " Заглавная буква \n";

else

cout << c << " Прописная буква \n";

if (isspace(c)) // пробел, табулятор('\t'), возврат каретки('\n')

cout << c << " Пустой символ\n";

else

cout << c << " Не пустой символ \n";

cin.get();

return 0;

}

Основные стандартные функции и макросы C (из библиотеки stdlib.h)

 

Функ­ция Библио-тека Назначение Аргу­менты Резуль­тат
min(a,b) stdlib.h Определяет минимум из двух чисел числа число
max(a,b) stdlib.h Определяет максимум из двух чисел числа число
rand() stdlib.h Возвращает случайное целое void int
atoi(str) stdlib.h Преобразует строку С-стиля в целое строка С int
atol(str) stdlib.h Преобразует строку С-стиля в длинное целое строка С long  
atof(str) stdlib.h Преобразует строку С-стиля в вещественное строка С double
exit() stdlib.h Завершает выполнение программы int void
abort() stdlib.h Завершает выполнение программы аварийно void void

 

// Пример 5.1.7

// Функции из библиотеки stdlib.h

#include <iostream>

#include <stdlib.h>

using namespace std;

// заголовок личной функции

void F();

int main() {

setlocale(LC_ALL, "Russian"); // для вывода на экран русского текста

int i1=1, i2=2, i;

double d1=1.5, d2=3.6, d;

int rn1,rn2;

i=max(i1,i2); // определение минимального из двух чисел

d=min(d1,d2); // определение максимального из двух чисел

cout << "i=" << i << '\t' << "d=" << d << endl;

F(); // вызов личной функции

cin.get();

return 0; // завершение функции main()-завершение приложения

}

// реализация личной функции

void F() {

cout << "F" << endl;

return; // завершение функции

//exit(0); // завершение приложения с нужным кодом возврата

//abort(); // аварийное завершение приложения

}

// Пример 5.1.8

// Случайные числа (stdlib.h)

#include <iostream>

#include <stdio.h>

#include <stdlib.h>

#include <time.h>

using namespace std;

// заголовки личных функций

// Печать случайных чисел

void SimpleRandDemo(int n);

// Печать случайных чисел из нужного диапазона

void RangedRandDemo(int range_min, int range_max, int n);

int main(void){

setlocale(LC_ALL, "Russian"); // для вывода на экран русского текста

// начальная установка генератора случайных чисел с помощью текущего
// времени - числа будут различными при разных запусках приложения

srand((unsigned)time(NULL));

// Печать случайных чисел

SimpleRandDemo(10);

cin.get();

// Печать случайных чисел из нужного диапазона

RangedRandDemo(-100, 100, 10);

cin.get();

return 0;

}

// Печать случайных чисел

void SimpleRandDemo(int n) {

// Печать случайных чисел

for(int i = 0; i < n; i++) cout << rand() << endl;

}

// Печать случайных чисел из нужного диапазона

void RangedRandDemo(int range_min, int range_max, int n) {

// Генерирует случайные числа из диапазона [range_min, range_max).

// Другими словами range_min <= random number < range_max

for (int i = 0; i < n; i++) {

int u = (double)rand() / (RAND_MAX + 1) * (range_max - range_min)

+ range_min;

cout << u << endl;

}

}

// Пример 5.1.9

//Функции преобразования(stdlib.h) - atoi(), atol(), atof()

#include <iostream>

#include <stdlib.h>

#include <ctype.h>

using namespace std;

int main() {

setlocale(LC_ALL, "Russian"); // для вывода на экран русского текста

char buffer[80]; // буфер приложения - строка С-стиля

// Ввод данных с клавиатуры в буфер и проверка данных на нецифру

cout << "Введите целое число без знака: ";

cin >> buffer;

for (int i=0; i<strlen(buffer); i++) {

if (!isdigit(buffer[i])) {

cout << "Ошибка в позиции: " << i+1 << endl;

cout << "Нецифровой символ: " << buffer[i] << '\t'
<< (int)buffer[i] << endl;

cin.get(); return 1;

}

}

// преобразование символов в числа и выполнение вычислений

int inumber;

//inumber=buffer; // ошибка!

inumber=atoi(buffer); // из текста получить целое число

cout << "Теперь это целое число - number: " << inumber << endl;

//int sum=buffer+5; // ошибка!

int sum=atoi(buffer)+5;

cout << "Можно что-то считать - sum: " << sum << endl;

long lnumber;

double dnumber;

lnumber=atol(buffer); // из текста получить длинное целое число

dnumber=atof(buffer); // из текста получить вещественное число

cout << "Теперь это длинное целое число - number: " << lnumber << endl;

cout << "Теперь это вещественное число - number: " << dnumber << endl;

cin.get();

return 0;

}

 

 




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


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


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



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




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