Подсчет числа определенных букв - C (СИ)
Формулировка задачи:
Хочу подсчитать количество букв A и g. Подскажите где ошибка,если не трудно
#include <stdio.h> void myalarm(char *val); int main() { char mas[100]; scanf("%s",mas); myalarm(mas); printf("%s\n", mas); } void myalarm(char *val) { int i,l; while(val[i] != 0) { if (val[i] == 'A' || val[i] == 'g') { l++; } i++; } val[i] = l; }
Решение задачи: «Подсчет числа определенных букв»
textual
Листинг программы
#include <stdio.h> void myalarm(char *val); int main() { char mas[100]; scanf("%s",mas); myalarm(mas); } void myalarm(char *val) { int i=0,l=0; while(val[i] != 0) { if (val[i] == 'A' || val[i] == 'g') { l++; } i++; } printf("%d\n", l); }
Объяснение кода листинга программы
В этом коде:
- Объявлена функция
myalarm
, которая принимает в качестве аргумента указатель на строкуchar *val
. - В функции
main
объявлен массивmas
типаchar
размером 100. - В функции
main
с помощью функцииscanf
в массивmas
считывается строка. - Вызывается функция
myalarm
с аргументомmas
. - В функции
myalarm
объявлены две переменные:i
иl
типаint
, и инициализированы нулем. - В функции
myalarm
с помощью циклаwhile
происходит проход по всем символам строкиval
. - Внутри цикла проверяется, является ли текущий символ 'A' или 'g'.
- Если символ является 'A' или 'g', то к переменной
l
прибавляется единица. - После окончания цикла, в переменной
l
будет храниться количество букв 'A' и 'g' в строке. - Функция
printf
выводит значение переменнойl
на экран. - Значение переменной
l
будет содержать количество букв 'A' и 'g' в введенной строке.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д