Форум программистов, компьютерный форум, киберфорум
C++
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 06.06.2011
Сообщений: 8
1

Ошибка в программе

06.06.2011, 23:25. Просмотров 624. Ответов 8
Метки нет (Все метки)

Доброго времени суток.
Помогите исправить ошибку в программе.
Вот такое задание:
Нужна программа подсчёта букв С в предложении и вывести процент буквы относительно строки.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <stdio.h> 
 #define N 100  
 int main() 
 { 
char  s[N];
char* p= s;
char  ch; 
int   count=  0;
float result= 0; 
printf("Input string: "); 
fgets(s, N, stdin); 
printf("Input symbol: "); 
ch = getchar(); 
while(*p) if(*p++ == ch) ++count ; 
if( strlen(s) ) result= 100 * count / strlen(s) ; 
printf("Result: %f%%\n", result); 
return 0; 
 }
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
06.06.2011, 23:25
Ответы с готовыми решениями:

Ошибка в программе
Доброе утро, уважаемые программисты. Прошу у вас помощи: выбивает ошибку. Спасибо #include...

Ошибка в программе на C#
Помогите пожалуйста с ошибкой в программе на C#. Хочу представит ХП на удаление на C#, но выдает...

ошибка в программе
Недавно начал изучать С ++ написал программу но она выдает ошибку пожалуйста посмотрите что я...

Ошибка в программе
Здравствуйте форумчане. Есть задача:треугольник задан координатами своих вершин. Составить...

8
3072 / 2393 / 255
Регистрация: 11.03.2009
Сообщений: 5,444
07.06.2011, 12:29 2
Цитата Сообщение от Shmotz Посмотреть сообщение
C
1
if( strlen(s) ) result= 100 * count / strlen(s) ;
C
1
if( strlen(s) ) result= 100.0 * count / strlen(s) ;
1
0 / 0 / 0
Регистрация: 06.06.2011
Сообщений: 8
07.06.2011, 22:34  [ТС] 3
Цитата Сообщение от kazak Посмотреть сообщение
C
1
if( strlen(s) ) result= 100.0 * count / strlen(s) ;
Спасибо но ошибка осталась ...
0
3072 / 2393 / 255
Регистрация: 11.03.2009
Сообщений: 5,444
07.06.2011, 22:36 4
Тогда можно поподробнее на счет ошибки?
0
1195 / 822 / 180
Регистрация: 16.03.2008
Сообщений: 3,950
Записей в блоге: 1
07.06.2011, 23:01 5
Если ввести 1234567890 количество будет 11, а вы наверняка ожидаете 10.
0
3072 / 2393 / 255
Регистрация: 11.03.2009
Сообщений: 5,444
07.06.2011, 23:05 6
Ну дак fgets помещает в строку символ перевода строки, потому и 11 будет. Если раздражает, можно убрать допустим так:
C
1
p[strlen(s)-1] = '\0';
0
0 / 0 / 0
Регистрация: 06.06.2011
Сообщений: 8
08.06.2011, 07:49  [ТС] 7
Цитата Сообщение от kazak Посмотреть сообщение
Тогда можно поподробнее на счет ошибки?
Ошибка в программе
0
3072 / 2393 / 255
Регистрация: 11.03.2009
Сообщений: 5,444
08.06.2011, 07:52 8
C
1
#include <string.h>
1
0 / 0 / 0
Регистрация: 06.06.2011
Сообщений: 8
08.06.2011, 14:23  [ТС] 9
Цитата Сообщение от kazak Посмотреть сообщение
C
1
#include <string.h>
о_О пошла
Странно, я эту библиотеку тоже писал ...
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
08.06.2011, 14:23

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Ошибка в программе
Нужно было составить программу по задаче: в 2008 году отец положил сыну на счет в банке 400 евро....

Ошибка в программе
Program P1; type Individ = class FIO: string; Document: string; public constructor...

Ошибка в программе
Здравствуйте помогите пожалуйста разобраться почему не выводится нужное сообщение? .model tiny...

Ошибка в программе
У меня есть матрица: matrix, представленная как объединение 64 массивов, каждый длины 42,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.