GölgeLord~
Üye
-
- Katılım
- Şubat 24, 2015
-
- Mesajlar
- 54
-
- Tepkime puanı
- 0
-
- Puanları
- 256
-
- Yaş
- 50
c++ da veritabanı yapısı :
örneğimiz çoğu konuları içerisinde barındırıp genel tekrar yapabileceğiniz bir program ..
#include<stdio.h>
#include<conio.h>
#include<string.h>
#include<stdlib.h>
#include<io.h>
struct personel
{
char k;
char ad[10];
char soyad[10];
char departman[10];
char adres[15];
float maas;
int is_bas;
int cocuk;
}
kayit;
FILE *dosya;
char cev;
int i,kaysay,kont,zamoran,oran;
char c;
char ara[10];
int ksay(****)
{
return(filelength(fileno(dosya))/sizeof(struct personel));
}
**** giris()
{
clrscr();
printf("Ad:");gets(kayit.ad);
printf("Soyad:");gets(kayit.soyad);
printf("Departman:");gets(kayit.departman);
printf("Adres:");gets(kayit.adres);
printf("Maas:");scanf("%f",&kayit.maas);
printf("Ise Baslama Yili:");scanf("%d",&kayit.is_bas);
printf("Cocuk Sayisi:");scanf("%d",&kayit.cocuk);
kayit.k=’*’;
fseek(dosya,filelength(fileno(dosya)),SEEK_SET);
fwrite(&kayit,sizeof(struct personel),1,dosya);
flushall();
}
**** arama()
{
clrscr(); kont=0;
printf("Aranan Personelin Soyadi:");gets(ara);
for(i=0;i<ksay();i++)
{
fseek(dosya,i*sizeof(struct personel),SEEK_SET);
fread(&kayit,sizeof(struct personel),1,dosya);
if (strcmp(ara,kayit.soyad)==0 && kayit.k==’*’)
{
clrscr(); kont=1; // aranan kayıt var demek
printf("Ad:%s\\n",kayit.ad);
printf("Soyad:%s\\n",kayit.soyad);
printf("Departman:%s\\n",kayit.departman);
printf("Adres:%s\\n",kayit.adres);
printf("Maas:%f\\n",kayit.maas);
printf("Ise Baslama Yili:%d\\n",kayit.is_bas);
printf("Cocuk Sayisi:%d\\n",kayit.cocuk);
gotoxy(25,39);printf("Cikmak icin bir tusa basin...");
getch();
}}
if (kont!=1)
{ gotoxy(25,39);printf("Aranan Kayit Bulunamadi...");
getch();
}}
**** listele()
{
clrscr();
printf("%-10s %-10s %-10s %-15s %-6s %-5s %-5s \\n\\n","AD","SOYAD","DEPARTMAN","ADRES","MAAS","B AS.","COCUK");
kaysay=ksay();
for(i=0;i<kaysay;i++)
{
fseek(dosya,i*sizeof(struct personel),SEEK_SET);
fread(&kayit,sizeof(struct personel),1,dosya);
if(kayit.k==’*’)
{
printf("%-10s",kayit.ad);
printf("%-10s",kayit.soyad);
printf("%-10s",kayit.departman);
printf("%-15s",kayit.adres);
printf("%-5.1f",kayit.maas);
printf("%-5d",kayit.is_bas);
printf("%-5d\\n",kayit.cocuk);
}}
gotoxy(25,36);printf("Listelenecek kayitlar bitti...!");
gotoxy(25,39);printf("Menuye Donmek Icin Bir Tusa Basin");
getch();
}
**** silme()
{
clrscr();
printf("Silinecek Personel Soyadi=");gets(ara);
kaysay=ksay();
for(i=0;i<kaysay;i++)
{
fseek(dosya,i*sizeof(struct personel),SEEK_SET);
fread(&kayit,sizeof(struct personel),1,dosya);
if (strcmp(ara,kayit.soyad)==0 && kayit.k==’*’)
{
clrscr();
printf("Ad:%s\\n",kayit.ad);
printf("Soyad:%s\\n",kayit.soyad);
printf("Departman:%s\\n",kayit.departman);
printf("Adres:%s\\n",kayit.adres);
printf("Maas:%f\\n",kayit.maas);
printf("Ise Baslama Yili:%d\\n",kayit.is_bas);
printf("Cocuk Sayisi:%d\\n",kayit.cocuk);
printf("\\nSilmek Istiyormusunuz? [E/H]");
cev=getch();
if (cev==’E’ || cev==’e’)
{
fseek(dosya,i*sizeof(struct personel),SEEK_SET);
kayit.k=’s’;
fwrite(&kayit,sizeof(struct personel),1,dosya);
flushall();
gotoxy(34,36);printf("Kayit Silindi...!");getch();
}}}
gotoxy(25,36);printf("Silinecek Kayit Bulunamadi....!");
getch();
}
**** duzelt()
{
clrscr();
printf("Duzeltilecek Personel Soyadi=");gets(ara);
kaysay=ksay();
for(i=0;i<kaysay;i++)
{
fseek(dosya,i*sizeof(struct personel),SEEK_SET);
fread(&kayit,sizeof(struct personel),1,dosya);
if (strcmp(ara,kayit.soyad)==0 && kayit.k==’*’)
{
clrscr();
printf("Yeni Ad:");gets(kayit.ad);
printf("Yeni Soyad:");gets(kayit.soyad);
printf("Yeni Departman:");gets(kayit.departman);
printf("Yeni Adres:");gets(kayit.adres);
printf("Yeni Maas:");scanf("%f",&kayit.maas);
printf("Yeni Ise Baslama Yili:");scanf("%d",&kayit.is_bas);
printf("Yeni Cocuk Sayisi:");scanf("%d",&kayit.cocuk);
fseek(dosya,i*sizeof(struct personel),SEEK_SET);
fwrite(&kayit,sizeof(struct personel),1,dosya);
flushall();
gotoxy(25,35);printf("Kayit Duzeltildi...!");getch();
}}
gotoxy(25,39);printf("Duzeltilecek Kayit Bulunamadi....!\\n");
getch();
}
**** ayrilanlar()
{
clrscr();
printf("%-10s %-10s %-10s %-15s %-6s %-5s %-5s \\n\\n","AD","SOYAD","DEPARTMAN","ADRES","MAAS","B AS.","COCUK");
kaysay=ksay();
for(i=0;i<kaysay;i++)
{
fseek(dosya,i*sizeof(struct personel),SEEK_SET);
fread(&kayit,sizeof(struct personel),1,dosya);
if(kayit.k==’s’)
{
printf("%-10s",kayit.ad);
printf("%-10s",kayit.soyad);
printf("%-10s",kayit.departman);
printf("%-15s",kayit.adres);
printf("%-5.1f",kayit.maas);
printf("%-5d",kayit.is_bas);
printf("%-5d\\n",kayit.cocuk);
}}
gotoxy(25,36);printf("Listelenecek kayitlar bitti...!");
gotoxy(25,39);printf("Menuye Donmek Icin Bir Tusa Basin");
getch();
}
**** zam()
{
clrscr();
printf("Yapılacak Zam Oranini Giriniz=");scanf("%d",&zamoran);
kaysay=ksay();
for(i=0;i<kaysay;i++)
{
fseek(dosya,i*sizeof(struct personel),SEEK_SET);
fread(&kayit,sizeof(struct personel),1,dosya);
oran=zamoran;
if (kayit.k==’*’)
{
if ((2013-kayit.is_bas) <=5) oran=oran+2;
if ((2013-kayit.is_bas) >=6) oran=oran+3;
if (kayit.cocuk >=3) oran=oran+3;
kayit.maas=kayit.maas + kayit.maas * oran /100 ;
fseek(dosya,i*sizeof(struct personel),SEEK_SET);
fwrite(&kayit,sizeof(struct personel),1,dosya);
flushall();
}
}
gotoxy(25,35);printf("Zam Maaslara Uygulandi...!");getch();
}
**** main()
{
dosya=fopen("c:\\\\PERSONEL.DAT","r+b");
if(dosya==NULL)
{
dosya=fopen("c:\\\\PERSONEL.DAT","w+b");
}
;
do
{
clrscr();
gotoxy(33,5);printf("------MENU------");
gotoxy(33,8);printf("1.Bilgi Girisi");
gotoxy(33,10);printf("2.Arama");
gotoxy(33,12);printf("3.Listeleme");
gotoxy(33,14);printf("4.Silme");
gotoxy(33,16);printf("5.Duzeltme");
gotoxy(33,18);printf("6.Ayrılanları Listele");
gotoxy(33,20);printf("7.Zam Yap");
gotoxy(33,22);printf("8.Cikis");
gotoxy(33,25);printf("Seciminiz [1..8]");
c=getch();
if (c==’1’) giris();
if (c==’2’) arama();
if (c==’3’) listele();
if (c==’4’) silme();
if (c==’5’) duzelt();
if (c==’6’) ayrilanlar();
if (c==’7’) zam();
}
while(c!=’8’);
fclose(dosya);
}
örneğimiz çoğu konuları içerisinde barındırıp genel tekrar yapabileceğiniz bir program ..
#include<stdio.h>
#include<conio.h>
#include<string.h>
#include<stdlib.h>
#include<io.h>
struct personel
{
char k;
char ad[10];
char soyad[10];
char departman[10];
char adres[15];
float maas;
int is_bas;
int cocuk;
}
kayit;
FILE *dosya;
char cev;
int i,kaysay,kont,zamoran,oran;
char c;
char ara[10];
int ksay(****)
{
return(filelength(fileno(dosya))/sizeof(struct personel));
}
**** giris()
{
clrscr();
printf("Ad:");gets(kayit.ad);
printf("Soyad:");gets(kayit.soyad);
printf("Departman:");gets(kayit.departman);
printf("Adres:");gets(kayit.adres);
printf("Maas:");scanf("%f",&kayit.maas);
printf("Ise Baslama Yili:");scanf("%d",&kayit.is_bas);
printf("Cocuk Sayisi:");scanf("%d",&kayit.cocuk);
kayit.k=’*’;
fseek(dosya,filelength(fileno(dosya)),SEEK_SET);
fwrite(&kayit,sizeof(struct personel),1,dosya);
flushall();
}
**** arama()
{
clrscr(); kont=0;
printf("Aranan Personelin Soyadi:");gets(ara);
for(i=0;i<ksay();i++)
{
fseek(dosya,i*sizeof(struct personel),SEEK_SET);
fread(&kayit,sizeof(struct personel),1,dosya);
if (strcmp(ara,kayit.soyad)==0 && kayit.k==’*’)
{
clrscr(); kont=1; // aranan kayıt var demek
printf("Ad:%s\\n",kayit.ad);
printf("Soyad:%s\\n",kayit.soyad);
printf("Departman:%s\\n",kayit.departman);
printf("Adres:%s\\n",kayit.adres);
printf("Maas:%f\\n",kayit.maas);
printf("Ise Baslama Yili:%d\\n",kayit.is_bas);
printf("Cocuk Sayisi:%d\\n",kayit.cocuk);
gotoxy(25,39);printf("Cikmak icin bir tusa basin...");
getch();
}}
if (kont!=1)
{ gotoxy(25,39);printf("Aranan Kayit Bulunamadi...");
getch();
}}
**** listele()
{
clrscr();
printf("%-10s %-10s %-10s %-15s %-6s %-5s %-5s \\n\\n","AD","SOYAD","DEPARTMAN","ADRES","MAAS","B AS.","COCUK");
kaysay=ksay();
for(i=0;i<kaysay;i++)
{
fseek(dosya,i*sizeof(struct personel),SEEK_SET);
fread(&kayit,sizeof(struct personel),1,dosya);
if(kayit.k==’*’)
{
printf("%-10s",kayit.ad);
printf("%-10s",kayit.soyad);
printf("%-10s",kayit.departman);
printf("%-15s",kayit.adres);
printf("%-5.1f",kayit.maas);
printf("%-5d",kayit.is_bas);
printf("%-5d\\n",kayit.cocuk);
}}
gotoxy(25,36);printf("Listelenecek kayitlar bitti...!");
gotoxy(25,39);printf("Menuye Donmek Icin Bir Tusa Basin");
getch();
}
**** silme()
{
clrscr();
printf("Silinecek Personel Soyadi=");gets(ara);
kaysay=ksay();
for(i=0;i<kaysay;i++)
{
fseek(dosya,i*sizeof(struct personel),SEEK_SET);
fread(&kayit,sizeof(struct personel),1,dosya);
if (strcmp(ara,kayit.soyad)==0 && kayit.k==’*’)
{
clrscr();
printf("Ad:%s\\n",kayit.ad);
printf("Soyad:%s\\n",kayit.soyad);
printf("Departman:%s\\n",kayit.departman);
printf("Adres:%s\\n",kayit.adres);
printf("Maas:%f\\n",kayit.maas);
printf("Ise Baslama Yili:%d\\n",kayit.is_bas);
printf("Cocuk Sayisi:%d\\n",kayit.cocuk);
printf("\\nSilmek Istiyormusunuz? [E/H]");
cev=getch();
if (cev==’E’ || cev==’e’)
{
fseek(dosya,i*sizeof(struct personel),SEEK_SET);
kayit.k=’s’;
fwrite(&kayit,sizeof(struct personel),1,dosya);
flushall();
gotoxy(34,36);printf("Kayit Silindi...!");getch();
}}}
gotoxy(25,36);printf("Silinecek Kayit Bulunamadi....!");
getch();
}
**** duzelt()
{
clrscr();
printf("Duzeltilecek Personel Soyadi=");gets(ara);
kaysay=ksay();
for(i=0;i<kaysay;i++)
{
fseek(dosya,i*sizeof(struct personel),SEEK_SET);
fread(&kayit,sizeof(struct personel),1,dosya);
if (strcmp(ara,kayit.soyad)==0 && kayit.k==’*’)
{
clrscr();
printf("Yeni Ad:");gets(kayit.ad);
printf("Yeni Soyad:");gets(kayit.soyad);
printf("Yeni Departman:");gets(kayit.departman);
printf("Yeni Adres:");gets(kayit.adres);
printf("Yeni Maas:");scanf("%f",&kayit.maas);
printf("Yeni Ise Baslama Yili:");scanf("%d",&kayit.is_bas);
printf("Yeni Cocuk Sayisi:");scanf("%d",&kayit.cocuk);
fseek(dosya,i*sizeof(struct personel),SEEK_SET);
fwrite(&kayit,sizeof(struct personel),1,dosya);
flushall();
gotoxy(25,35);printf("Kayit Duzeltildi...!");getch();
}}
gotoxy(25,39);printf("Duzeltilecek Kayit Bulunamadi....!\\n");
getch();
}
**** ayrilanlar()
{
clrscr();
printf("%-10s %-10s %-10s %-15s %-6s %-5s %-5s \\n\\n","AD","SOYAD","DEPARTMAN","ADRES","MAAS","B AS.","COCUK");
kaysay=ksay();
for(i=0;i<kaysay;i++)
{
fseek(dosya,i*sizeof(struct personel),SEEK_SET);
fread(&kayit,sizeof(struct personel),1,dosya);
if(kayit.k==’s’)
{
printf("%-10s",kayit.ad);
printf("%-10s",kayit.soyad);
printf("%-10s",kayit.departman);
printf("%-15s",kayit.adres);
printf("%-5.1f",kayit.maas);
printf("%-5d",kayit.is_bas);
printf("%-5d\\n",kayit.cocuk);
}}
gotoxy(25,36);printf("Listelenecek kayitlar bitti...!");
gotoxy(25,39);printf("Menuye Donmek Icin Bir Tusa Basin");
getch();
}
**** zam()
{
clrscr();
printf("Yapılacak Zam Oranini Giriniz=");scanf("%d",&zamoran);
kaysay=ksay();
for(i=0;i<kaysay;i++)
{
fseek(dosya,i*sizeof(struct personel),SEEK_SET);
fread(&kayit,sizeof(struct personel),1,dosya);
oran=zamoran;
if (kayit.k==’*’)
{
if ((2013-kayit.is_bas) <=5) oran=oran+2;
if ((2013-kayit.is_bas) >=6) oran=oran+3;
if (kayit.cocuk >=3) oran=oran+3;
kayit.maas=kayit.maas + kayit.maas * oran /100 ;
fseek(dosya,i*sizeof(struct personel),SEEK_SET);
fwrite(&kayit,sizeof(struct personel),1,dosya);
flushall();
}
}
gotoxy(25,35);printf("Zam Maaslara Uygulandi...!");getch();
}
**** main()
{
dosya=fopen("c:\\\\PERSONEL.DAT","r+b");
if(dosya==NULL)
{
dosya=fopen("c:\\\\PERSONEL.DAT","w+b");
}
;
do
{
clrscr();
gotoxy(33,5);printf("------MENU------");
gotoxy(33,8);printf("1.Bilgi Girisi");
gotoxy(33,10);printf("2.Arama");
gotoxy(33,12);printf("3.Listeleme");
gotoxy(33,14);printf("4.Silme");
gotoxy(33,16);printf("5.Duzeltme");
gotoxy(33,18);printf("6.Ayrılanları Listele");
gotoxy(33,20);printf("7.Zam Yap");
gotoxy(33,22);printf("8.Cikis");
gotoxy(33,25);printf("Seciminiz [1..8]");
c=getch();
if (c==’1’) giris();
if (c==’2’) arama();
if (c==’3’) listele();
if (c==’4’) silme();
if (c==’5’) duzelt();
if (c==’6’) ayrilanlar();
if (c==’7’) zam();
}
while(c!=’8’);
fclose(dosya);
}