Подсчитать количество звуков в слове - C (СИ)
Формулировка задачи:
Вот написал програму, которая подсчитивает звуки в слове. Только неправильно работеет, подскажыте где ошыбка!
#include <graphics.h> #include <conio.h> #include <stdio.h> #include <string.h> void main() { int k=1,i; int gol1=0,son1=0,gluh1=0,dzvn1=0,other1=0; char gol[]={'а','о','у','е','и','i'}; char son[]={'р','н','м','л'}; char gluh[]={'п','т','к','ш','с','х','ч','ф'}; char dzvn[]={'д','б','г','ж','з','в'}; char other[]={'ь','й'}; char sl[256]; clrscr(); printf("ENTER TEXT:\n"); scanf("%s",&sl); for(i=0;i<strlen(sl);i++) { for(int j=0;j<strlen(gol);j++) { if(sl[i]==gol[j]) {gol1++;} } for(j=0;j<strlen(son);j++) { if(sl[i]==son[j]) {son1++;} } for(j=0;j<strlen(gluh);j++) { if(sl[i]==gluh[j]) {gluh1++;} } for(j=0;j<strlen(dzvn);j++) { if(sl[i]==dzvn[j]) {dzvn1++;} } for(j=0;j<strlen(other);j++) { if(sl[i]==other[j]) {other1++;} } } printf("\ngol-%d",gol1); printf("\nson-%d",son1); printf("\ngluh-%d",gluh1-son1); printf("\ndzvn-%d",dzvn1); printf("\nother-%d",other1); } getch(); }
Решение задачи: «Подсчитать количество звуков в слове»
textual
Листинг программы
int main(){ int k=1,i; int gol1=0,son1=0,gluh1=0,dzvn1=0,other1=0; char gol[]={'а','о','у','е','и','i'}; char son[]={'р','н','м','л'}; char gluh[]={'п','т','к','ш','с','х','ч','ф'}; char dzvn[]={'д','б','г','ж','з','в'}; char other[]={'ь','й'}; char sl[256]; printf("ENTER TEXT:\n"); scanf("%s",&sl); for(i=0;i<strlen(sl);i++) { for(int j=0;j<strlen(gol);j++) { if(sl[i]==gol[j]) {gol1++;} } for(int j=0;j<strlen(son);j++) { if(sl[i]==son[j]) {son1++;} } for(int j=0;j<strlen(gluh);j++) { if(sl[i]==gluh[j]) {gluh1++;} } for(int j=0;j<strlen(dzvn);j++) { if(sl[i]==dzvn[j]) {dzvn1++;} } for(int j=0;j<strlen(other);j++) { if(sl[i]==other[j]) {other1++;} } } printf("\ngol-%d",gol1); printf("\nson-%d",son1); printf("\ngluh-%d",gluh1-son1); printf("\ndzvn-%d",dzvn1); printf("\nother-%d",other1); system("pause"); return 0; }
Объяснение кода листинга программы
- Объявлены переменные:
k
- счетчик для циклаi
- индекс для доступа к элементам массивовgol1
,son1
,gluh1
,dzvn1
,other1
- счетчики для подсчета количества соответствующих звуковgol
,son
,gluh
,dzvn
,other
- массивы символов, соответствующие звукамsl
- строка для ввода текста
- Пользователю предлагается ввести текст.
- Происходит цикл по каждому символу введенного текста.
- Для каждого символа происходит поиск в массивах
gol
,son
,gluh
,dzvn
,other
и увеличение соответствующего счетчика, если символ найден. - После завершения цикла выводятся значения всех счетчиков.
- Код завершается командой
system(
pause)
, которая ожидает нажатия клавиши для продолжения работы программы. - Возвращается 0, что означает успешное выполнение программы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д