Форум программистов, компьютерный форум CyberForum.ru

Типизированный файл. Сведения о студентах. Стипендия - C++

Восстановить пароль Регистрация
 
Romashca
Сообщений: n/a
19.01.2013, 21:11     Типизированный файл. Сведения о студентах. Стипендия #1
Привет) у меня такая задача на туже тему, помогите исправить

Вот условие Сформировать типизированный файл, в котором хранятся результаты сессии группы: факультет, группа, семестр, ФИО студента, средняя оценка. Написать программу начисления стипендии по результатам сессии (стипендия = средняя оценка х 50 руб).
и текст программы


C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
//24.   Сформировать типизированный файл, в котором хранятся результаты сессии группы:
// факультет, группа, семестр, ФИО студента, средняя оценка. 
//Написать программу начисления стипендии по результатам сессии (стипендия = средняя оценка х 50 руб).
#include <stdio.h>
#include <conio.h>
#include <math.h>
#include <stdlib.h>
#include <iostream.h>
//#define n 3 // количество студентов  в группе (нахрен тебе тут n, если ты с клавы вводиш)
 
void main()
{int n;
     struct rez_ses{
 char facultet [50];// название факультета
char gruppa [10];// группа
int semestr;//семестр
char fio [50];// фамилия имя отчество
int sred_oz;// средняя оценка
char stipendia [13];//стипендия
} std [n], *p=&std[0]; // описание массива 3 структур и указателя на структуру
int i;
for ( i=0; i<n; i++, p++)//сдвигаем указатель построчно
{ printf("Ввести n");
  scanf("%i",n); // тут фарматированный ввод, предпологаю что эти две строки надо вводить до объявления структуры
  //  cout<<"\n введите значения \n"<<n<<<endl;// производим заполнение структуры ( не уверен в правильности указателя)
 printf("facultet:");
 scanf("%c",(*p).facultet);// использую операцию разыменования
  printf ("gruppa:");
  scanf("%c", (*p).gruppa);
  printf("semestr:");
  scanf ("%c",(*p).semestr);
  printf ("fio");
  scanf("%c",(*p).fio);
  printf("sred_oz");
  scanf("%c",(*p).sred_oz);
  scanf("%c",((*p->sred_oz)*50).stipendia); //исправил!!!!!!!!!!!
}
// !!!!!!!!!!!!!! я это не знаю еще не читал !!!!!!!!!!!!!
FILE *ft;// объявляем указатель на файловый поток
if(ft=fopen("list.txt","w");// открыли пустой файл для записи и проверка на открытие
 
{
  fprintf(ft,"facultet: %c, gruppa: %c, semestr: %c, fio: %c, sred_oz: %c, stipendia: %d\n" p->facultet, p->gruppap, p->semestr, p->fio, p->sred_oz, p->stipendia);
  fclouse (ft);// закрыть файл
  printf("Saved to file 'list.txt'");
  }
Добавлено через 22 минуты
С использованием структур и без использования потоков.

Помогитеееее...
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.01.2013, 21:11     Типизированный файл. Сведения о студентах. Стипендия
Посмотрите здесь:

C++ Файл о студентах
как в с++ создается типизированный файл? и как вообще понять типизированный? C++
Дан символьный файл, содержащий сведения о студентах группы. Записать эти сведения в файл g, используя образцы C++
Дан файл , содержащий сведения о книгах. Сведения о каждой из книг – это фамилия автора, название и год издания. а) Найти названия книг данного автор C++
C++ Создайте файл Студент. Занесите в отдельный файл записи из файла Студент, добавив сведения о новых студентах
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Invader_Zim
Twilight Parasite
 Аватар для Invader_Zim
153 / 149 / 2
Регистрация: 21.07.2011
Сообщений: 907
19.01.2013, 21:19     Типизированный файл. Сведения о студентах. Стипендия #2
добавляй скайп, буду рассказывать.

 Комментарий модератора 
Обсуждение тем - только на форуме. Приглашения к обсуждению еще где-либо запрещены.
Romashca
Сообщений: n/a
20.01.2013, 11:22     Типизированный файл. Сведения о студентах. Стипендия #3
Сформировать типизированный файл, в котором хранятся результаты сессии группы: факультет, группа, семестр, ФИО студента, средняя оценка. Написать программу начисления стипендии по результатам сессии (стипендия = средняя оценка х 50 руб).

Сделал прогу но она не работает, помогите ее переделать
C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
 //24.  Сформировать типизированный файл, в котором хранятся результаты сессии группы:
// факультет, группа, семестр, ФИО студента, средняя оценка. 
//Написать программу начисления стипендии по результатам сессии (стипендия = средняя оценка х 50 руб).
#include <stdio.h>
#include <conio.h>
#include <math.h>
#include <stdlib.h>
#include <iostream.h>
//#define n 3 // количество студентов  в группе 
void main()
{int n;
     struct rez_ses{
 char facultet [50];// название факультета
char gruppa [10];// группа
int semestr;//семестр
char fio [50];// фамилия имя отчество
int sred_oz;// средняя оценка
char stipendia [13];//стипендия
} std [n], *p=&std[0]; // описание массива 3 структур и указателя на структуру
int i;
for ( i=0; i<n; i++, p++)//сдвигаем указатель построчно
{ printf("Ввести n");
  scanf("%i",n); // тут фарматированный ввод, предпологаю что эти две строки надо вводить до объявления структуры
  //  cout<<"\n введите значения \n"<<n<<<endl;// производим заполнение структуры ( не уверен в правильности указателя)
 printf("facultet:");
 scanf("%c",(*p).facultet);// использую операцию разыменования
  printf ("gruppa:");
  scanf("%c", (*p).gruppa);
  printf("semestr:");
  scanf ("%c",(*p).semestr);
  printf ("fio");
  scanf("%c",(*p).fio);
  printf("sred_oz");
  scanf("%c",(*p).sred_oz);
  scanf("%c",((*p->sred_oz)*50).stipendia); //исправил!!!!!!!!!!!
}
 
FILE *ft;// объявляем указатель на файловый поток
if(ft=fopen("list.txt","w");// открыли пустой файл для записи и проверка на открытие
 
{
  fprintf(ft,"facultet: %c, gruppa: %c, semestr: %c, fio: %c, sred_oz: %c, stipendia: %d\n" p->facultet, p->gruppap, p->semestr, p->fio, p->sred_oz, p->stipendia);
  fclouse (ft);// закрыть файл
  printf("Saved to file 'list.txt'");
  }
Добавлено через 1 минуту
да инет не тянет скайп((((((

Добавлено через 3 минуты
если смотреть на задачу выше то получается я туфту записал с работой файла

Добавлено через 1 час 12 минут
))))

Добавлено через 7 минут
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
  //24.     Сформировать типизированный файл, в котором хранятся результаты сессии группы:
// факультет, группа, семестр, ФИО студента, средняя оценка. 
//Написать программу начисления стипендии по результатам сессии (стипендия = средняя оценка х 50 руб).
#include <stdio.h>
#include <conio.h>
#include <math.h>
#include <stdlib.h>
#include <iostream.h>
//#define n 3 // количество студентов  в группе 
void main()
{int n;
     struct rez_ses{
 char facultet [50];// название факультета
char gruppa [10];// группа
int semestr;//семестр
char fio [50];// фамилия имя отчество
int sred_oz;// средняя оценка
char stipendia [13];//стипендия
} std [n], *p=&std[0]; // описание массива 3 структур и указателя на структуру
int i;
for ( i=0; i<n; i++, p++)//сдвигаем указатель построчно
{ printf("Ввести n");
  scanf("%i",n); // тут фарматированный ввод, предпологаю что эти две строки надо вводить до объявления структуры
  //  cout<<"\n введите значения \n"<<n<<<endl;// производим заполнение структуры ( не уверен в правильности указателя)
 printf("facultet:");
 scanf("%c",(*p).facultet);// использую операцию разыменования
  printf ("gruppa:");
  scanf("%c", (*p).gruppa);
  printf("semestr:");
  scanf ("%c",(*p).semestr);
  printf ("fio");
  scanf("%c",(*p).fio);
  printf("sred_oz");
  scanf("%c",(*p).sred_oz);
  scanf("%c",((*p->sred_oz)*50).stipendia); //исправил!!!!!!!!!!!
}
 
FILE *ft;// объявляем указатель на файловый поток
if(ft=fopen("list.txt","w");// открыли пустой файл для записи и проверка на открытие
 
{
  fprintf(ft,"facultet: %c, gruppa: %c, semestr: %c, fio: %c, sred_oz: %c, stipendia: %d\n" p->facultet, p->gruppap, p->semestr, p->fio, p->sred_oz, p->stipendia);
  fclouse (ft);// закрыть файл
  printf("Saved to file 'list.txt'");
  }
Добавлено через 12 часов 35 минут
помогите
Дмитрий 93
74 / 59 / 5
Регистрация: 03.06.2011
Сообщений: 309
20.01.2013, 12:55     Типизированный файл. Сведения о студентах. Стипендия #4
быть может в 43 строке нужно
C++
1
fclose (ft)
вместо
C++
1
fclouse (ft)
?
Yandex
Объявления
20.01.2013, 12:55     Типизированный файл. Сведения о студентах. Стипендия
Ответ Создать тему
Опции темы

Текущее время: 07:30. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru