Untitled
unknown
plain_text
2 years ago
2.0 kB
9
Indexable
#include <stdio.h>
#include <ctype.h>
#define MAX_SIZE 60
// Funkcja do wczytywania napisu z klawiatury
void wczytajNapis(char napis[], int size) {
printf("Podaj napis (maksymalnie %d znakow):\n", size);
scanf(" %[^\n]s", napis); // %[^\n]s pozwala na wczytanie całej linii tekstu
}
// Funkcja do wyświetlania napisu
void wyswietlNapis(const char napis[]) {
printf("napis = %s\n", napis);
}
// Funkcja do zliczania dużych liter w napisie
int zliczDuzeLitery(const char napis[]) {
int count = 0;
for (int i = 0; napis[i] != '\0'; i++) {
if (isupper(napis[i])) {
count++;
}
}
return count;
}
// Funkcja do zamiany spacji na znak podkreślenia
void zamienSpacje(char napis[]) {
for (int i = 0; napis[i] != '\0'; i++) {
if (napis[i] == ' ') {
napis[i] = '_';
}
}
}
// Funkcja do zamiany wielkości liter w każdym wyrazie
void zamienWielkoscLiter(char napis[]) {
for (int i = 0; napis[i] != '\0'; i++) {
// Jeżeli znak to pierwszy znak w wyrazie i nie jest spacją, zamień na dużą literę
if ((i == 0 || napis[i - 1] == ' ') && napis[i] != ' ') {
napis[i] = toupper(napis[i]);
}
// W przeciwnym razie zamień na małą literę
else {
napis[i] = tolower(napis[i]);
}
}
}
int main() {
char napis[MAX_SIZE];
// Wczytanie napisu z klawiatury
wczytajNapis(napis, MAX_SIZE);
// Wyświetlenie napisu
wyswietlNapis(napis);
// Zliczanie dużych liter w napisie
int liczbaDuzychLiter = zliczDuzeLitery(napis);
printf("Liczba dużych liter = %d\n", liczbaDuzychLiter);
// Zamiana spacji na znak podkreślenia
zamienSpacje(napis);
printf("napis2 = %s\n", napis);
// Zamiana wielkości liter w każdym wyrazie
zamienWielkoscLiter(napis);
printf("napis3 = %s\n", napis);
return 0;
}
Editor is loading...
Leave a Comment