rendered paste body#include <stdio.h>
#include <string.h>
struct student{
long FN;
int oc[6];
double sru;
};
int BrS;
student MasStud[25];
char bf[5];
FILE *fp;
char fime[31];
student stud;
void readStud(student *st){
int i;
printf("fak. Nomer: ");scanf("%d",&st->FN);
printf("Ocenki po 3-te disciplini\n");
for (i=0;i<3;i++){
printf("Po %d-a disciplina:",i+1);scanf("%d",st->oc[i]);
}
gets(bf);
}
void srUsp (student *st){
int j,s=0;
for (j=0;j<3;j++) s+=st->oc[j];
st->sru=s/3.0;
}
void writeStud(student st){
int i;
printf("fakulteten nomer:%d\n",st.FN);
printf("Ocenki:");
for (i=0;i<3;i++); printf("%d",st.oc[i]);
printf("\n");
printf("Sreden uspeh: %4.2f\n",st.sru);
}
void sazdaj(){
fp=fopen(fime,"w");fclose(fp);
printf("Fajlyt e syzdaden!\n");
}
void dobavi(){
fp=fopen(fime,"a+b");
char ch;
do {
readStud(&stud);
fwrite(&stud,sizeof(stud),1,fp);
printf("Îshte (y/n)?");ch=getchar();getchar();
}while (ch!='n');
fclose(fp);
}
void spisAll(){
int k=0;
fp = fopen(fime,"rb");
fread(&stud,sizeof(stud),1,fp);
while (!feof(fp)){
writeStud(stud);
k++;
fread(&stud,sizeof(stud),1,fp);
}
fclose(fp);
printf("Namereni: %d\n",k);
}
void main() {
char otg[3];
printf("Zadajte ime na fail:");gets(fime);
do{
printf(" MENU\n");
printf(" 1. Syzdavane na prazen file\n");
printf(" 2. Dobavqne na student\n");
printf(" 3. Spisyk na vsi4ki\n");
// printf(" 4. Sreden uspeh\n");
printf("Izbor (0-kraj):");gets(otg);
switch(otg[0]){
case '1':sazdaj();break;
case '2':dobavi();break;
case '3':spisAll();break;
// case '4':srUsp();break;
}
}while (otg[0]!='0');
}