Расположить буквы в верхнем регистре (прописные) по алфавиту, а строчные буквы - в обратном порядке - C (СИ)
Формулировка задачи:
1.Дана строка длиной n. Расположить буквы в верхнем регистре(прописные) по алфавиту,а строчные буквы - в обратном порядке.
2.Дополнить каждую строку количеством содержащихся в ней символов.
написать две программы.максимальное число символов в строке-80.во втором задании максимальное число строк-6.истинное число строк определяется пользователем.исходные данные ввести с клавиатуры. на экран монитора вывести исходные данные и результат расчета
Решение задачи: «Расположить буквы в верхнем регистре (прописные) по алфавиту, а строчные буквы - в обратном порядке»
textual
Листинг программы
#include <stdio.h>
#include <string.h>//strlen(), strcat()
#include <stdlib.h>//itoa()
#include <conio.h>
/*2.Дополнить каждую строку количеством содержащихся в ней символов.*/
void main()
{
char F1[80];
int i,j;
char x[6];
fgets(F1,80,stdin);
F1[strlen(F1)-1]='\0';//поскольку последний символ '\n' а при выводе строки будет дополнительный пустая строка, то я затираю его (символ '\n')
itoa(strlen(F1),x,10);
strcat(F1,x);
printf(F1);
getch();
}
Объяснение кода листинга программы
- #include
Включает в программу функции файла стандартного ввода/вывода, которые используются для отправки данных в консоль. - #include
Включает в программу функции файла стандартных строковых операций, такие как strlen() и strcat(). - #include
Включает в программу функции файла стандартного ввода/вывода, такие как itoa(). - #include
Этот заголовочный файл содержит функции для работы с консолью, такие как getch(). - void main() Это точка входа в программу. Здесь начинается выполнение любой программы на C.
- char F1[80]; Объявляет массив символов F1 с максимальным размером 80 символов.
- int i,j; Объявляет две переменные типа int, i и j.
- fgets(F1,80,stdin); Эта функция считывает строку из стандартного ввода (обычно это консоль) и сохраняет ее в массиве F1.
- F1[strlen(F1)-1]='\0'; Эта строка удаляет последний символ новой строки из строки, которую мы только что прочитали, заменяя его на символ конца строки '\0'.
- itoa(strlen(F1),x,10); Эта функция преобразует целое число (в данном случае, длину строки F1) в строку, используя десятичную систему счисления, и сохраняет результат в массиве x.
- strcat(F1,x); Эта функция добавляет содержимое массива x в конец строки F1.
- printf(F1); Эта функция выводит содержимое строки F1 в консоль.
- getch(); Эта функция ожидает нажатия клавиши, чтобы пользователь мог увидеть вывод программы.
- Программа завершается, когда пользователь нажимает любую клавишу.
Пояснение по коду:
- Строка считывается с помощью функции fgets() из стандартного ввода (обычно это консоль).
- Последний символ новой строки в строке заменяется на символ конца строки '\0', чтобы отделить строку от следующего считывания.
- Длина строки преобразуется в строку с помощью функции itoa(), используя десятичную систему счисления.
- Результат добавляется в конец строки с помощью функции strcat().
- Вся строка выводится в консоль с помощью функции printf().
- Программа ожидает нажатия клавиши с помощью функции getch(), чтобы пользователь мог увидеть вывод программы.