Модераторы: bsa
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> ОШИБКА в структуре 
V
    Опции темы
Panterka
Дата 18.12.2007, 09:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 27
Регистрация: 10.12.2007

Репутация: нет
Всего: нет



Есть программа,работает вроде нормально, но в одной колонки (срок годности), по программе прописанно 8 знаков для набора, а в итоге, когда прописываешь 8 знаков, программа выдаёт 9 знаков, причём 9-ый произвольно записывает сама, в чём может быть проблема?
Вот программа:
Код

#include<stdio.h> 
#include<conio.h> 

void main() 
{
 int S=0;
 int i;
 clrscr ();

 FILE*L6;
 L6=fopen("C:\laba6.txt", "wt");
 struct Magazin
 {
  char nazvanie[15];
  char srok_godnosti[8];
  int cena;
  int kolich;
 } ;
Magazin A[2];
for(i=0;i<2;i++)
{printf("\n Tovar %d",i+1);
 printf ("\n Nazvanie:");scanf("%s",&A[i].nazvanie);
 printf("\n Srok godnosti:");scanf("%s",A[i].srok_godnosti);
 printf("\n Cena:");scanf("%d",&A[i].cena) ;
 printf("\n Kol-vo:");scanf("%d",&A[i].kolich);
 S+=A[i].cena*A[i].kolich;
}

printf ("\n --------------------------------------------------------------- ") ;
fprintf(L6,"\n --------------------------------------------------------------- ") ;
printf("\n|    Nazvanie   | Srok godnosti |     Cena      |    Kol-vo     |");
fprintf(L6,"\n|    Nazvanie   | Srok godnosti |     Cena      |    Kol-vo     |");
printf ("\n --------------------------------------------------------------- ") ;
fprintf(L6,"\n --------------------------------------------------------------- ");

for (i=0;i<2;i++)
{
 printf("\n|     %s    |   %s   |      %d       |        %d      |",
  A[i].nazvanie,A[i].srok_godnosti,A[i].cena,A[i].kolich);
 fprintf(L6,"\n|     %s    |   %s   |      %d       |        %d      |",
  A[i].nazvanie,A[i].srok_godnosti,A[i].cena,A[i].kolich);
 printf ("\n --------------------------------------------------------------- ");
 fprintf (L6,"\n --------------------------------------------------------------- ");
}

printf("\n\n Obwaya stoimost: %d",S);
fprintf(L6,"\n\n Obwaya stoimost: %d",S);

getch();
}


а вот что получилось:


Присоединённый файл ( Кол-во скачиваний: 5 )
Присоединённый файл  _____.zip 7,56 Kb
PM MAIL   Вверх
dizel003
Дата 18.12.2007, 09:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 211
Регистрация: 7.11.2007

Репутация: нет
Всего: нет



И вчем проблема??? 
Программа требует вводить 8 знаков и выводит тоже только 8!!!

Код

#include<stdio.h> 
#include<conio.h> 

void main() 
{
 int S=0;
 int i;


 FILE*L6;
 L6=fopen("C:\laba6.txt", "wt");
 struct Magazin
 {
  char nazvanie[15];
  char srok_godnosti[8];
  int cena;
  int kolich;
 } ;
Magazin A[2];
for(i=0;i<2;i++)
{printf("\n Tovar %d",i+1);
 printf ("\n Nazvanie:");scanf("%s",&A[i].nazvanie);
 printf("\n Srok godnosti:");scanf("%s",A[i].srok_godnosti);
 printf("\n Cena:");scanf("%d",&A[i].cena) ;
 printf("\n Kol-vo:");scanf("%d",&A[i].kolich);
 S+=A[i].cena*A[i].kolich;
}

printf ("\n --------------------------------------------------------------- ") ;
fprintf(L6,"\n --------------------------------------------------------------- ") ;
printf("\n|    Nazvanie   | Srok godnosti |     Cena      |    Kol-vo     |");
fprintf(L6,"\n|    Nazvanie   | Srok godnosti |     Cena      |    Kol-vo     |");
printf ("\n --------------------------------------------------------------- ") ;
fprintf(L6,"\n --------------------------------------------------------------- ");

for (i=0;i<2;i++)
{
 printf("\n|     %s    |   %s   |      %d       |        %d      |",
  A[i].nazvanie,A[i].srok_godnosti,A[i].cena,A[i].kolich);
 fprintf(L6,"\n|     %s    |   %s   |      %d       |        %d      |",
  A[i].nazvanie,A[i].srok_godnosti,A[i].cena,A[i].kolich);
 printf ("\n --------------------------------------------------------------- ");
 fprintf (L6,"\n --------------------------------------------------------------- ");
}

printf("\n\n Obwaya stoimost: %d",S);
fprintf(L6,"\n\n Obwaya stoimost: %d",S);

getch();
}


Посмотри это!!! Если опять будешь не доволен пиши конкретнее вопрос!! Постораюсь помочь!!!

PM MAIL   Вверх
Panterka
Дата 18.12.2007, 10:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 27
Регистрация: 10.12.2007

Репутация: нет
Всего: нет



Цитата(dizel003 @ 18.12.2007,  09:53)
И вчем проблема??? 
Программа требует вводить 8 знаков и выводит тоже только 8!!!
...
Посмотри это!!! Если опять будешь не доволен пиши конкретнее вопрос!! Постораюсь помочь!!!

В этом-то и дело,что прописанно для вывода 8 знаков, а выводит 9. Причём 9-ый какой-нибудь произвольный. я же выложила внизу что получается. Вопрос состоит в том, что нужно исправить, чтобы и в программе выводилось (в колонке срок годности ) 8 вводимых знаков, и программа не добавляла 9-го?
PM MAIL   Вверх
Panterka
  Дата 18.12.2007, 14:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 27
Регистрация: 10.12.2007

Репутация: нет
Всего: нет



Всё, разобралась!
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Для новичков"
JackYF
bsa

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0750 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.