Подсчитать сумму мест, на которых в словах текста стоит заданная буква - C (СИ)
Формулировка задачи:
Написать программу для подсчета суммы мест, на которых в словах текста стоит заданная буква.
#include<stdio.h>
#include<math.h>
int j, sum,a;
char s, c;
main()
{
printf("Vvedite text", s);
scanf("%d", &s);
printf("vvedite bukvu iz texta", c);
scanf("%d", &c);
sum=0;
printf("mesta na kotorix v slovax stoit eta bukva:");
for(j=1; a=strlen(s);)
{
if(s[j]=c)
sum=sum+j;
printf(j,"");
}
printf("");
printf("summa mest na kotorix stoit eta bukva=", sum);
}Решение задачи: «Подсчитать сумму мест, на которых в словах текста стоит заданная буква»
textual
Листинг программы
#include<stdio.h>
#include<string.h>
int j, sum;
char s[200], c;
int main(void)
{
printf("Vvedite text", s);
//scanf("%d", &s);
gets(s);
printf("vvedite bukvu iz texta", c);
scanf("%c", &c);
sum=0;
printf("mesta na kotorix v slovax stoit eta bukva:");
for(j=0; s[j];j++)
{
if(s[j]==c)
{
sum++;
printf("%d ",j+1);
}
}
printf("\nsumma mest na kotorix stoit eta bukva=%d\n", sum);
return 0;
}
Объяснение кода листинга программы
- Подключение необходимых библиотек
- Объявление переменных: j (счетчик для цикла), sum (сумма мест), s (строка для текста), c (буква для подсчета)
- Вывод сообщения с просьбой ввести текст
- Ввод текста с помощью функции gets
- Вывод сообщения с просьбой ввести букву для подсчета
- Ввод буквы с помощью функции scanf
- Инициализация переменной sum значением 0
- Вывод сообщения с просьбой вывести места, на которых стоит введенная буква
- Цикл, который проходит по каждому символу в строке
- Проверка, равен ли текущий символ введенной букве
- Если да, то увеличиваем значение переменной sum на 1 и выводим номер текущего символа
- Выводим общее количество найденных символов
- Возвращаем 0, чтобы указать, что программа успешно завершилась