Создать типизированный файл, запись которого имеет следующую структуру: фамилию и инициалы работника, должность, год поступления на работу, номер телефона. Напишите встроенную подпрограмму-функцию для организации безопасного ввода номеров телефонов – целое шестизначное число, ввода фамилии. определите сколько сотрудников не имеют телефонов.
#include <stdio.h>
#include <conio.h>
int col;
int bez_tel;
FILE * file;
struct One{
char Name[20];
char post[20];
int god;
char Phone_num[7];
};
One Sotrudnik;
void SafeName()
{
char w[32], passw[]={'А','б','в','г','д','е','ж','з','и','к','л','м','н','о',
'п','р','с','т','у','ф','х','ц','ч','ш','щ','ь','ы','ъ','э','ю','я'};
int j, fl;
char what;
Sotrudnik.Name[0]=what;
fl=1;
for (j=0; !fl && j< 30; j++)
{
printf("\n Name ");
gets(w);
if (strstr(w,passw))fl=0; //сравение строк
}
if (fl)
printf("\nПовторитее ввод");
else
Sotrudnik.Name[32]=0x00;
//printf("\nВвели верно");
}
void SafePhone()
{
char norm = 0;
char ch;
int i=0;
printf("\n Phone number ");
while(norm == 0)
{
ch = getch();
if(i == 0 && ch == 13)
{
Sotrudnik.Phone_num[0] = 0x00;
norm = 1;
}
else
{
if(ch >= 48 && ch <= 57)
{
printf("%c", ch);
Sotrudnik.Phone_num[i] = ch;
i++;
}
if(i == 6)
norm = 1;
}
}
Sotrudnik.Phone_num[6] = 0x00;
}
void Out()
{
bez_tel = 0;
fprintf(file, "%s\n", Sotrudnik.Name);
fprintf(file, "%s\n", Sotrudnik.post);
fprintf(file, "%d\n", Sotrudnik.god);
if(Sotrudnik.Phone_num[0] == 0x00)
{
fprintf(file, "no\n");
bez_tel ++;
}
else
fprintf(file, "%s\n", Sotrudnik.Phone_num);
}
void main()
{
file = fopen("Out.txt", "w");
clrscr();
printf("\n\n Vvedite kolichestvo sotrudnikov v faile ");
scanf("%u", &col);
for(int i=0;i<col;i++)
{
printf("\n Name ");
scanf("%s", Sotrudnik.Name);
printf("\n post ");
scanf("%s", Sotrudnik.post);
printf("\n god ");
scanf("%d", &Sotrudnik.god);
SafePhone();
Out();
}
printf("\n\n Informacia bila zapisana v fail <Out.txt> ");
printf("\n\n Sotrudnikov, y kotoryh net telefonov %d", bez_tel);
getch();
fclose(file);
}
в программа выдает при компиляции одну ошибку не пойму почему( не могли бы вы проверить.. верно ли тут все написано?