Results 1 to 3 of 3

Thread: C++

Hybrid View

Previous Post Previous Post   Next Post Next Post
  1. #1
    Registered User
    Join Date: May:2011
    Location: Shumen
    Posts: 2

    C++

    , , . 10 , 3.50 5.50 , . DEV C++. . ... -

    Code:
    #include <stdio.h>
    #include <conio.h>
    struct student{
     char ime[31]; 
     char EGN[11]; 
     long FN; 
     int oc[10];
     float sru;
    };
    FILE *fp;
    char fime[31];
    student stud;
    // vuvejdane na 1 sudent
    void readStud(student *st) {
             int i;
             printf(":");gets(st->ime);
             printf(":");gets(st->EGN);
             printf(". :");scanf("%ld",&st->FN);
             printf("  10 :\n");
             for (i=0;i< 10;i++){
             printf(" %d-a :",i+1);scanf("%d",&st-
    >oc[i]);
             }
             int j,s=0;
              for(j=0;j<10;j++) s+=st->oc[j];
              st->sru=s/10.0;
              getchar();
              }
             
      //izvejdane na studenti i izchislqvane na sreden uspeh
     void writeStud(student st) {
              int i;
    printf(": %s\n",st.ime);
    printf(": %s\n",st.EGN);
    printf(". :%06ld\n",st.FN);
    printf(": ");
    for (i=0;i<10;i++) printf("%d ",st.oc[i]);
    printf("\n");
    printf(" : %4.2f\n",st.sru);
    }
    
    // suzdavane na fail
    void sazdaj(){
             fp=fopen(fime,"w");fclose(fp);
             printf("  !\n");
             }
     //dobavqne kym failut  
    void dobavi (){  
            fp=fopen(fime,"a+b");
            char ch;
            do {
               readStud(&stud);
               fwrite(&stud,sizeof(stud),1,fp);
               printf("      ((d)/(n))?");ch=getchar();getchar();
               }while (ch!='n');
               fclose (fp);
               }
    void spisukall() {
              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(": %d\n",k);
                            }
      //glavna programa
      main () {
             char otg[3];
             printf("   :");gets(fime);
             do {
                     printf("   \n");
                     printf("   1.    \n");
                     printf("   2.   \n");
                     printf("   3.      \n");
             
                     printf("  (0)  : ");gets(otg); 
                     switch (otg[0]) {
                       case '1':sazdaj();break;      
                       case '2':dobavi();break; 
                       case '3':spisukall();break;
                     
                               }
                       }while (otg[0]!='0');
      }
    Last edited by stosem; 12th May 2011 at 20:29.

  2. #2
    Bombera's Avatar
    Join Date: Jul:2001
    Location: 4EVA
    Posts: 13,833
    ?
    EVGA X299 FTW K|i9-7960X@4.7|4x8 Patriot Viper Steel 4000|GTX 1660 Ti|970 EVO 1 TB|Seasonic Focus GX-1000|Xigmatek Elysium|
    Rampage IV Extreme BE|E5-1680v2@4.7|4x4 HyperX 1866|Cougar Aqua 240|GTX 1050 Ti|970 EVO 1/4 TB|CM 850 SilentPro|HAF-X|

  3. #3
    Registered User
    Join Date: May:2011
    Location: Shumen
    Posts: 2
    , , ,

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  

Copyright © 1999-2011 . .
iskamPC.com | mobility.BG | Bloody's Techblog | | 3D Vision Blog |