Dosyalama Ödevi Hazır

  1. KısayolKısayol reportŞikayet pmÖzel Mesaj
    kont239
    kont239's avatar
    Kayıt Tarihi: 04/Ocak/2010
    Erkek

    #include<stdio.h>
    #include<conio.h>
    #include<stdlib.h>
    #include<string.h>
    #include<io.h>
    #include<locale.h>
    char cvb;
    int fat;

    struct kisi
    {
        char ad[15];
        char soyad[25];
        char adres[50];
     
    }KISI;

    struct kisi2
    {
    char ad2[15];
    char soyad2[25];
    char adres2[50];
    }KISI2;

    char KRITER(int);
    char BILGI_EKLEME(FILE *f);

    void main()
    {
        setlocale(LC_ALL,"turkısh");
        system("color 4e");
        char KAYIT(void);
        char ARAMA(void);
        char SIL(void);
        char GUNCEL(void);
        char DOKUM(void);
       int i;
        do
        {
            puts("\n\nWELCOME TO ADDRESS NOTEBOOK...\n\nPLEASE ENTRY ONE TRANSACTION TO DO\n");
            printf("\n1.REGİSTER");
            printf("\n2.SEARCH");
            printf("\n3.CLEAR PERSON");
            printf("\n4.ALL OF MEMBER");
            printf("\n5.UPDATE");
            printf("\n6.OUTPUT");
            printf("\nSELECTION...");
            fat=getche();
            switch(fat)
            {
                case '1':KAYIT();break;
                case '2':ARAMA();break;
                case '3':SIL();break;
                case '4':DOKUM();break;
                case '5':GUNCEL();break;
                case '6':exit(1);
               
                default:printf("\n\nWRONG SELECTION!");
            }
            printf("\n\n\nWILL YOU WANT TO CONTİNUE? Y/N");
            cvb=getche();
        }
        while(cvb=='y'||cvb=='Y');
        return ;
    }

    char KAYIT(void)
    {
        struct kisi3
        {
            char isim[15];
            char soyisim[25];
            char adresi[50];   
        }KISI3;


        FILE *dosya;
        dosya=fopen("adresb.dat","ab");
        cvb=BILGI_EKLEME(dosya);
        if(cvb==0)return 0;
        do
        {
            printf("\nREGISTER ");
            printf("\n\nNAME: ");
            gets(KISI3.isim);
            printf("\nSURNAME: ");
            gets(KISI3.soyisim);
            printf("\nADDRESS: ");
            gets(KISI3.adresi);
            fwrite(&KISI3,sizeof(KISI3),1,dosya);
            printf("\n\nWILL YOU WANT TO CONTINUE REGISTER? Y/N");
            cvb=getche();
        }
        while(cvb=='Y'||cvb=='y');
        fclose(dosya);
        return 0;
    }

    char ARAMA(void)
    {
        printf("\nSEARCHİNG");
        printf("\n\n\nPLEASE CHOOSE TYPE OF SEARCH ");
        printf("\n1.PLEASE ENTRY THE NAME");
        printf("\n\nSELECTİON...");
        fat=getche();

        switch(fat)
        {
            case '1':KRITER(1);break;
            default:printf("\nWRONG SELECTİON!");
        }
        return 0;
    }


    char KRITER(int x)
    {
        FILE *dosya;
        char a;
        int kaysay,i;
        dosya=fopen("adresb.dat","rb");
        a=BILGI_EKLEME(dosya);
        if(a==0)
        {
            return 1;
        }

        if(x==1)
        {            
            printf("\n\nPLEASE GİVE YOUR NAME:");
            gets(KISI2.ad2);
            fat=fileno(dosya);
            kaysay=filelength(fat)/sizeof(KISI);
            fat=0;
            printf("\n*********************\n");
            printf(("\nNAME\tSURNAME\tADRESS\n--\t-----\t-----\n"));
            for(i=1;i<=kaysay;i++)
            {
                fread(&KISI,sizeof(KISI),1,dosya);
                if(strcmp(KISI2.ad2,KISI.ad)==0)
                {
                    printf("\n%s\t%s\t%s",KISI.ad,KISI.soyad,KISI.adres);
                    fat++;
                }
            }
            if(fat==0)
            {
                printf("\n\MEMBER NOT FOUND...");
            }

            else
            {
                printf("\n\n*********************\n");
                printf("\n\n%d MEMBER FOUND...",fat);
            }
        }

        if(x==2)
        {              
            printf("\n\nPLEASE GIVE SURNAME:");
            gets(KISI2.soyad2);
            fat=fileno(dosya);
            kaysay=filelength(fat)/sizeof(KISI);
            fat=0;
            printf("\n*********************\n");
            printf("\nSURNAME\tNAME\tADDRESS\n-----\t--\t-----\n");
            for(i=1;i<=kaysay;i++)
            {
                fread(&KISI,sizeof(KISI),1,dosya);
                if(strcmp(KISI2.soyad2,KISI.soyad)==0)
                {
                    printf("\n%s\t%s\t%s",KISI.soyad,KISI.ad,KISI.adres);
                    fat++;
                }
            }
            if(fat==0)
            {
                printf("\nMEMBER NOT FOUND...");
            }
            else
            {
            printf("\n\n*********************\n");
            printf("\n\n%d MEMBER FOUND...",fat);
            }
        }
        return 0;
    }

    char SIL(void)
    {

        FILE *dosya2;
        FILE *dosya;
        int kaysay,i;

        dosya=fopen("adresb.dat","rb");
        cvb=BILGI_EKLEME(dosya);
        if(cvb==0)
        {
            return 0;
        }
        dosya2=fopen("adresb_y.dat","wb");
        cvb=BILGI_EKLEME(dosya2);
        if(cvb==0)
        {
            return 0;
        }
        printf("\n\nPLEASE GIVE SURNAME ");
        gets(KISI2.soyad2);
        fat=fileno(dosya);
        kaysay=filelength(fat)/sizeof(KISI);
        fat=0;
        for(i=1;i<=kaysay;i++)
        {
            fread(&KISI,sizeof(KISI),1,dosya);
            if(strcmp(KISI2.soyad2,KISI.soyad)==0)
            {
                fat++;
                printf("\nSURNAME\tNAME\tADDRESS\n-----\t--\t-----");
                printf("\n\n%s\t%s\t%s",KISI.soyad,KISI.ad,KISI.adres);
                printf("\n\nWILL YOU WANT TO DELETE THIS MEMBER ? Y/N");
                cvb=getche();
                if(cvb=='y'||cvb=='Y')
                    continue;
                else fwrite(&KISI,sizeof(KISI),1,dosya2);
            }
            else
                fwrite(&KISI,sizeof(KISI),1,dosya2);
        }

        if(fat==0)printf("\n\MEMBER NOT FOUND!");

        fclose(dosya);
        fclose(dosya2);
        remove("adresb.dat");
        rename("adresb_y.dat","adresb.dat");
        return 0;
    }


    char GUNCEL(void)
    {
        FILE *dosya;
        int kaysay,i;

        printf("\nUPDATE FOR ADDRESS\n------------------------------");
        dosya=fopen("adresb.dat","ab+");
        cvb=BILGI_EKLEME(dosya);
        if(cvb==0)
            return 0;
        printf("\n\nPLEASE GIVE SURNAME: ");
        gets(KISI2.soyad2);
        fat=fileno(dosya);
        kaysay=filelength(fat)/sizeof(KISI);
        fat=0;

        for(i=1;i<=kaysay;i++)
        {
            fread(&KISI,sizeof(KISI),1,dosya);
            if(strcmp(KISI.soyad,KISI2.soyad2)==0)
            {
                fat++;
                printf("\n\n%s\t%s\t%s",KISI.soyad,KISI.ad,KISI.adres);
                printf("\nNEW ADDRESS:");
                gets(KISI.adres);

                fseek(dosya,-sizeof(KISI),1);
                fwrite(&KISI,sizeof(KISI),1,dosya);

            }
            else
                continue;

        }


        if(fat==0)
            printf("\n\nMEMBER NOT FOUND!");

        fclose(dosya);
        return 0;
    }


    char DOKUM(void)
    {
        FILE *dosya;
        int kaysay,i;

        dosya=fopen("adresb.dat","rb");
        cvb=BILGI_EKLEME(dosya);
        if(cvb==0)
            return 0;
        printf("\n\nALL OF MEMBER\n***********************\n");
        printf("\nSURNAME\t\tNAME\tADDRESS\n------\t---\t------");
        fat=fileno(dosya);
        kaysay=filelength(fat)/sizeof(KISI);
        for(i=1;i<=kaysay;i++)
        {
            fread(&KISI,sizeof(KISI),1,dosya);
            printf("\n%s\t%s\t%s",KISI.soyad,KISI.ad,KISI.adres);
        }


        printf("\n\nWE HAVE %d MEMBER...",kaysay);
        fclose(dosya);
        return 0;
    }



    char BILGI_EKLEME(FILE *f)
    {
        if(f==NULL)
        {
            printf("\n\nFOLDER CANT OPEN!!!");
            return 0;
        }
        else return 1;
    }

    işi olan alsın gayet güzel çalışıor


    4641544948---53415249544153
Toplam Hit: 1191 Toplam Mesaj: 1