Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Число Значение



Меньше 0 str1 меньше str2

1 str1 равна str2

Больше 0 str1 больше str2

Прототип находится в string.h.

П р и м е р. Следующая программа сравнивает имена двух файлов, заданных в командной строке:

#include <stdio.h>

#include <string.h>

int main(int argc, char *argv[ ])

{

if (!stricmp(argv[1], argv[2]))

printf(“Имена файлов одинаковы.\n”);

else printf(“Имена файлов различны\n”);

return 0;

}

Функция

size_t strlen(const char *str);

возвращает длину строки, оканчивающуюся нулевым символом, на которую указывает str. При определении длины строки нулевой символ не учитывается. Прототип находится в string.h.

Функция

char *strlwr(char *str)

преобразует символы строки, на которую указывает str, в символы нижнего регистра. Функция возвращает str.

Функция

char *strrev(char *str);

Изменяет на обратную последовательность символов в строке (за исключением нулевого символа в конце строки), на которую указывает str. Функция возвращает str. Прототип находится в string.h.

Функция

char *strstr(const char *str1, const char *str2);

возвращает указатель на первое вхождение в строку, на которую указывает str1, строки, на которую указывает str2. Если совпадений не обнаружено, возвращается NULL. Прототип находится в string.h.

П р и м е р. Следующая программа выведет строку “it is a test”:

#include <stdio.h>

#include <string.h>

int main(void)

{

char *p;

p = strstr(“this is a test”, “is”);

printf(p);

return 0;

}

Функция

char *strupr(char *str);

преобразует символы строки, на которую указывает str, в символы верхнего регистра. Функция возвращает str. Прототип находится в string.h.

Варианты заданий

1) Создать текстовый файл, состоящий из 5 строк, каждая из которых имеет не более чем по 10 строчных букв русского алфавита. Так как в языке С нет функции, которая преобразует символы русского алфавита из строчных в прописные (есть только для латинских букв), разработать такую функцию и использовать для преобразования символов из строчных в прописные в данном файле. Преобразованный текст записать в новый текстовый файл.

2) Создать текстовый файл, состоящий из 4 строк, каждая из которых имеет не более чем по 12 прописных букв русского алфавита и латинского алфавитов. Так как в языке С нет функции, которая преобразует символы русского алфавита из прописных в строчные (есть только для латинских букв), разработать функцию для преобразования любых букв из прописных в строчные и использовать для преобразования символов из прописных в строчные в данном файле. Преобразованный текст записать в новый файл.

3) Создать текстовый файл, состоящий из 6 строк не более чем по 15 символов. Написать программу, выполняющую следующие функции:

- подсчет общего количества символов;

- подсчет числа цифровых и нецифровых символов;

- подсчет частоты встречаемости последовательности символов “abc”.

4) Даны два символьных файла S 1 и S 2, содержащих слова, разделенные символом ‘/ ’. Создать файл S 3, каждое слово которого образуется сцеплением слов из файлов S 1 и S 2, у которых совпадают первые символы. Для разделения слов использовать пробел. Если не произошло ни одного сцепления, выдать сообщение: “Файл S3 пуст”.

5) Дан символьный файл T. Группы символов, разделенные пробелами образуют слова.

Подсчитать количество слов в файле, найти самое длинное слово, подсчитать количество слов, состоящих из одного, двух, трех и т. д. символов.

6) Дан текстовый файл (файл состоящий из строк) F, содержащий программу на языке С. Проверить эту программу на несоответствие числа открывающихся и закрывающихся круглых скобок. Считать, что каждый оператор программы занимает не боле одной строки файла F.

7) Дан текстовый файл F. Записать в перевернутом виде строки файла F в файл G. Порядок строк в файле G должен быть обратным по отношению к порядку строк исходного файла F.

8) Дан файл F, компоненты которого являются целыми числами. Никакая из компонент файла F не равна нулю. Числа в файле идут в следующем порядке: десять положительных, десять отрицательных, десять положительных, десять отрицательных и т. д. Число компонент файла должно быть кратно 40. Переписать компоненты файла F в файл G, чтобы в файле G числа шли в следующем порядке: пять положительных, пять отрицательных, пять положительных, пять отрицательных и т. д.

9) Даны текстовый файл F и строка s. Получить все строки файла, содержащие в качестве фрагмента строку s.

10) Даны два текстовых файла F и G. Определить, совпадают ли компоненты (строки) файла F с компонентами файла G. Если нет, то вывести номер первой строки и позицию первого символа в этой строке, в которых файлы F и G отличаются между собой.

11) Дан текстовый файл F, каждая строка в котором состоит из одного слова, размер которого не более 20 символов. Переписать этот файл, разместив слова в алфавитном порядке.

12) Дан символьный файл F. Считая, что количество символов в слове не превышает двенадцати, определить количество слов (слова отделяются пробелами) в файле F; определить, сколько имеется в файле слов, соответственно, с одним, двумя, тремя и т. д. символами.





Дата публикования: 2015-10-09; Прочитано: 351 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.007 с)...