отчет 2 семестр практика 3 11 вариант
.docxБалтийский государственный технический университет «ВОЕНМЕХ» им. Д. Ф. Устинова
Кафедра И5 «Информационные системы и программная инженерия»
Практическая работа №3 по дисциплине «Программирование на ЯВУ» на тему «Строки»
Вариант №11
Выполнил: Студент Ситева Софья Борисовна Группа О401Б Преподаватель: Ракова Ирина Константиновна
Санкт-Петербург 2021 г.
Задача 1
Условие задачи:
Дана строка символов до точки. Оставить в ней только слова, начинающиеся на буквы «A».
Исходные данные:
Строка, обозначим st, тип char.
Исходные данные:
Строка, обозначим st, тип char.
Текст программы:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define N 30
int main()
{
char* str, *token, *context = 0, *tochka;
str = (char*)malloc(N);
printf("Enter text : ");
gets(str);
printf("Initial text : %s\n", str);
token = strtok_s(str, " ,-", &context);
printf("New text : ");
while (token != NULL)
{
if (*token == 'A' || *token == 'a')
printf("%s ", token);
tochka = strchr(token, '.');
if (tochka == NULL)
token = strtok_s(NULL, " ,-", &context);
else
_Exit(EXIT_SUCCESS);
}
free(str);
return 0;
}
Результат тестирования программы:
Вывод:
Ожидаемые результаты и результаты тестирования совпали. Поэтому можно сказать, что программа работает правильно.
Задача 2
Условие задачи:
Дана символьная строка. Преобразовать строку, заменив все прописные буквы буквами нижнего регистра
Исходные данные:
Строка, обозначим st, тип char.
Результирующие данные:
Измененная строка st.
Структурная схема программы:
Текст программы:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <ctype.h>
#define N 30
int main()
{
char st[N];
int i;
printf("Enter string\n");
fgets(st, N, stdin);
printf("INITIAL\n");
puts(st);
for (i = 0; st[i] != '\0'; i++)
if (isupper(st[i]))
st[i] = tolower(st[i]);
printf("RESULT\n");
puts(st);
}
Результат тестирования программы:
Вывод:
Ожидаемые результаты и результаты тестирования совпали. Поэтому можно сказать, что программа работает правильно.