АС
Анастасия Сущ

Работа с файлами. СИ. Помогите пожалуйста.



Всем привет.
Почему после того как я ввёл все данные в таблицу и когда начинается запись в файл на этом моменте меня выкидывает из программы с ошибкой.
но когда я провожу инициализацию в программе, по типу Ch[0].Pokazatelb = "VFDVF" ...
ТО ТОГДА ЗАПИСЬ ПРОХОДИТ НОРМАЛЬНО.

#include
#include

#define N 4

struct Chart_2
{
char* Pokazatelb;
float year_1940;
float year_1950;
float year_1955;
float year_1958;
};

int main()
{
FILE *file;
int a;
struct Chart_2 Ch [ N ] ;
char *head = "! Показатель! 1940! 1950! 1955! 1958 !\n";

if((file = fopen("File.txt","w")) == NULL) {printf("ERROR!"); getch(); return -1;}

//Заполнение таблицы
printf("%s",head);
for(a = 0; a < N ;a++)
{
scanf("%s %f %f %f %f",&Ch [ a ] .Pokazatelb,&Ch [ a ] .year_1940,&Ch [ a ] .year_1950,&Ch [ a ] .year_1955,&Ch [ a ] .year_1958);
}

//Запись в файл
fputs(head,file);
for(a = 0; a < N ;a++)
{
fprintf(file,"%s %.1f %.1f %.1f %.1f\n",Ch [ a ] .Pokazatelb,Ch [ a ] .year_1940,Ch [ a ] .year_1950,Ch [ a ] .year_1955,Ch [ a ] .year_1958);
}

fclose(file);
return 0;
}

ИВ
Ирина Воротилина

#include
#include
#include

#define N 4
#define SIZE 24

struct Chart_2 {
wchar_t indicator[SIZE];
float y40;
float y50;
float y55;
float y58;
};
typedef struct Chart_2 CHART_2;

int main()
{
FILE * file;
int a;
CHART_2 chart[N] ;
const wchar_t head[] = L"| Показатель | 1940 | 1950 | 1955 | 1958 |\n";

//Заполнение таблицы
_wsetlocale(LC_CTYPE, L"Russian_Russia.866");
for (a = 0; a < N ; a++) {
wprintf_s(L"\n Введите %i-й показатель: ", a + 1);
wscanf_s(L"%ls", chart[a].indicator);
wprintf_s(L" За 1940 год: ");
wscanf_s(L"%f", &chart[a].y40);
wprintf_s(L" За 1950 год: ");
wscanf_s(L"%f", &chart[a].y50);
wprintf_s(L" За 1955 год: ");
wscanf_s(L"%f", &chart[a].y55);
wprintf_s(L" За 1958 год: ");
wscanf_s(L"%f", &chart[a].y58);
}

//Запись в файл
if((file = _wfopen(L"File.txt",L"w, ccs=UNICODE")) == NULL) { wprintf_s(L"Ошибка! \n\a"); _getch(); return -1; }
fputws(head, file);
fflush(stdin);
for(a = 0; a < N ; a++)
fwprintf(file, L"%s %.1f %.1f %.1f %.1f\n", chart[a].indicator, chart[a].y40,chart[a].y50,chart[a].y55,chart[a].y58);
fclose(file);
return 0;
}

Похожие вопросы
СИ. Работа с файлами. как подправить программу?
Напишите, пожалуйста, пример работы с файлами на СИ. Пусть нам дан файл, там что-то написано. Нужно перезаписать ..
помогите с кодом на си. пожалуйста
Структуры в СИ. Помогите пожалуйста
Работа с файлами на языке Си.
Помогите пожалуйста создать на ++СИ.
Помогите в работе с файлами
Помогите, пожалуйста, со списками в си
помогите с си++, пожалуйста)
помогите с программированием пожалуйста СИ++