Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » Вопрос по Си

Ответить
Настройки темы
Вопрос по Си

Новый участник


Сообщения: 35
Благодарности: 0

Профиль | Отправить PM | Цитировать


Доброго времени суток! Решил заняться изучением программирования и начал с книги М.Уэйт, С.Прата, Д.Мартин "Язык Си" Москва "МИР" 1988 г. Ошибок в листинге программ достаточно, но удавалось исправить их самому (до вчерашнего вечера). В нижеприведенном примере текста программы не могу понять, почему не отрабатывает до конца программа, доходит до ввода цены и все. Подскажите начинающему???
Вот сам листинг:
# include <stdio.h>
# define MAXTIT 40
# define MAXAUT 40
# define MAXBOX 100
# define STOP " "
struct book
{
char title [MAXTIT];
char autor [MAXAUT];
float value;
};
main()
{
struct book libry [MAXBOX];
int count=0;
int index;
printf("Vvedite nazvanie knigi\n");
printf("Najmite klavishu [ENTER] v nachale stroki dlya ostanova\n");
while (strcmp(gets(libry [count].title), STOP)!=0 && count<MAXBOX)
{
printf("Vvedite teper familiyu avtora\n");
gets(libry [count].autor);
printf ("Vvedite teper cenu\n");
scanf("%f", &libry [count++].value);
while (getchar()!='n');
if (count<MAXBOX)
printf ("Vvedite nazvanie sleduyushey knigi\n");
}
printf ("Vot spisok knig:\n");
for (index=0; index<count;index++)
printf ("%s, $s: %2.2\n", libry [index].title,
libry [index].autor, libry [index].value);
}

Отправлено: 16:58, 21-12-2005

 

Новый участник


Сообщения: 42
Благодарности: 0

Профиль | Отправить PM | Цитировать


Сверху попробуй прописать так:
# include <iostream.h>

Отправлено: 00:59, 22-12-2005 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.

lehha


Сообщения: n/a

Профиль | Цитировать


Grekalov
вместо scanf("%f", &libry [count++].value);
попобуй scanf("%f", libry [count++].value);

Отправлено: 08:30, 22-12-2005 | #3


Новый участник


Сообщения: 35
Благодарности: 0

Профиль | Отправить PM | Цитировать


Вот здесь scanf("%f", &libry [count++].value); сделал так scanf("%2.2f", &libry [count++].value);, заработало Всем спасибо за консультации!

Отправлено: 08:46, 22-12-2005 | #4



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » Вопрос по Си

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Вопрос tupoy lamer Хочу все знать 1 28-08-2004 07:01
Вопрос по VB NLDSoft Программирование и базы данных 1 29-08-2003 09:51
Вопрос по Си Mihien Программирование и базы данных 4 05-02-2003 01:38




 
Переход