‘Yazılımcıklar’ olarak nitelediğim basit çalışmalarımdan biri olan Öğrenci Otomasyonu’nun özelliklerinden bazıları:
- Öğrenci verilerini txt uzantılı dosyada saklayabilme
- Txt dosyasından hazır öğrenci listesi yükleyebilme
- Not ortalamasına göre sıralama, basit istatistikler
- Final ve vize puanına göre sıralama
- En yüksek final ve vize notlarını alan öğrencileri görüntüleme
- Geçme-kalma durumu, geçen ve kalan öğrenci sayıları
Kaynak Kodlar:
//Öğrenci Otomasyon v1.6
//www.isikdogan.com
#include <stdio.h>
#include <stdlib.h>
#define kalin_cizgi printf("************************************************************\n")
#define ince_cizgi printf("-------------------------------------------------------------\n")
#define baslik printf("*============================*\n Ogrenci Otomasyon v1.6\n*============================*\n\n")
void menu(void){
system("cls"); baslik;
printf("\n.::|*Islem Menusu *|::.\n-----------------------\n1.En yuksek vize puanini alan ogrenci
\n2.En yuksek final puanini alan ogrenci\n3.Final puanina gore sirala\n4.Vize puanina gore sirala
\n5.Genel Ortalamaya gore sirala, gecme-kalma durumu\n6.Cikis\n-----------------------\n");
}
struct tablo{
char ad[20];
char soyad[20];
int vize,final,ortalama;
};
typedef struct tablo tablo;
int main()
{
int i,ogr_say,c,en,pass,gecme,vize_yuzde,final_yuzde,gecen=0,kalan=0;
FILE *dosya;
tablo temp,ogrenciler[1000];
system("color 1f");
printf("*============================*\n Ogrenci Otomasyon v1.6\n*============================*\n\nYapimci:Furkan Isikakdogan\n\nwww.isikdogan.com\n");
printf(" _______ _____ __\n");
printf("| |.-----.----.-----.-----.----.|__|\n");
printf("| - || _ | _| -__| | __|| |\n");
printf("|_______||___ |__| |_____|__|__|____||__|\n");
printf(" |_____|\n");
printf(" _______ __\n");
printf("| | |_.-----.--------.---.-.-----.--.--.-----.-----.\n");
printf("| - | _| _ | | _ |__ --| | | _ | |\n");
printf("|_______|____|_____|__|__|__|___._|_____|___ |_____|__|__|\n");
printf(" |_____|\n");
if((dosya=fopen("kayit.txt","r+"))==NULL){
printf("\nHata: Kayit dosyasina ulasilamiyor.\nLutfen 'kayit.txt' dosyasinin varligindan
emin olun.\n");
system("pause");}
else{
printf("\n--< Giris Menusu >--:\n1.Yeni giris yap\n2.Dosyadaki kayitlari goruntule
\n3.Islem menusu\n");
scanf("%d",&c);
if(c==1){
system("cls"); baslik;
printf("Lutfen ogrenci sayisini girin: ");
scanf("%d",&ogr_say);
for(i=0;i<ogr_say;i++){
printf("\n%d . Ogrencinin adi ve soyadi: ",i+1); fflush( stdin );
scanf("%s%s",&ogrenciler[i].ad,&ogrenciler[i].soyad);
printf("\nVize ve Final notlari: ");
scanf("%d%d",&ogrenciler[i].vize,&ogrenciler[i].final);
fprintf(dosya,"%s %s %d %d\n",
ogrenciler[i].ad,ogrenciler[i].soyad,ogrenciler[i].vize,ogrenciler[i].final);
if(i!=ogr_say-1) printf("\n");
ince_cizgi;
}
printf("\n<< Giris islemi tamalandi! >>\n");
system("pause");
}
rewind(dosya);
i=0;
while(!feof(dosya)){
fscanf(dosya,"%s%s%d%d",ogrenciler[i].ad,ogrenciler[i].soyad,&ogrenciler[i].vize,&ogrenciler[i].final);
i++;}
ogr_say=i;
if(c==2){
system("cls"); baslik;
printf("\nSira %-10s %-20s %-5s %-5s\n\n","Isim","Soyisim","Vize","Final");
for(i=0;i<ogr_say;i++){
printf("%d . ",i+1); printf("%-10s %-20s %-5d %-5d\n",ogrenciler[i].ad,ogrenciler[i].soyad,ogrenciler[i].vize,ogrenciler[i].final); ince_cizgi;
}
system("pause");
}
if(c==3){
for(1;1;1){ //sonsuz dongu baslangıcı
menu();
scanf("%d",&c);
if(c==1){
en=0;
system("cls"); baslik;
for(i=0;i<ogr_say;i++)
if(ogrenciler[i].vize>ogrenciler[en].vize) en=i;
kalin_cizgi;
printf("En yuksek vize puanini alan ogrenci: "); printf("%s %s\n",ogrenciler[en].ad,ogrenciler[en].soyad);
printf("\nAldigi puan (vize): %d\n",ogrenciler[en].vize);
kalin_cizgi;
system("pause");
}
if(c==2){en=0;
system("cls"); baslik;
for(i=0;i<ogr_say;i++)
if(ogrenciler[i].final>ogrenciler[en].final) en=i;
kalin_cizgi;
printf("En yuksek final puanini alan ogrenci: "); printf("%s %s\n",ogrenciler[en].ad,ogrenciler[en].soyad);;
printf("\nAldigi puan (final): %d\n",ogrenciler[en].final);
kalin_cizgi;
system("pause");
}
if(c==3){
system("cls"); baslik;
for(pass=1;pass<ogr_say;pass++)
for(i=0;i<ogr_say-1;i++){
if(ogrenciler[i].final<ogrenciler[i+1].final){
temp=ogrenciler[i];
ogrenciler[i]=ogrenciler[i+1];
ogrenciler[i+1]=temp;
}
}
printf("\nSira %-10s %-20s %-5s %-5s\n\n","Isim","Soyisim","Vize","Final");
for(i=0;i<ogr_say;i++){
printf("%d . ",i+1); printf("%-10s %-20s %-5d %-5d\n",ogrenciler[i].ad,ogrenciler[i].soyad,ogrenciler[i].vize,ogrenciler[i].final); ince_cizgi;}
system("pause");
}
if(c==4){
system("cls"); baslik;
for(pass=1;pass<ogr_say;pass++)
for(i=0;i<ogr_say-1;i++){
if(ogrenciler[i].vize<ogrenciler[i+1].vize){
temp=ogrenciler[i];
ogrenciler[i]=ogrenciler[i+1];
ogrenciler[i+1]=temp;
}
}
printf("\nSira %-10s %-20s %-5s %-5s\n\n","Isim","Soyisim","Vize","Final");
for(i=0;i<ogr_say;i++){
printf("%d . ",i+1); printf("%-10s %-20s %-5d %-5d\n",ogrenciler[i].ad,ogrenciler[i].soyad,ogrenciler[i].vize,ogrenciler[i].final); ince_cizgi;}
system("pause");
}
if(c==5){
system("cls"); baslik;
printf("Lutfen gecme puanini girin: "); scanf("%d",&gecme);
printf("\nVize yuzdesi: "); scanf("%d",&vize_yuzde);
printf("\nFinal yuzdesi: "); scanf("%d",&final_yuzde);
for(i=0;i<ogr_say;i++)
ogrenciler[i].ortalama=(ogrenciler[i].vize*vize_yuzde+ogrenciler[i].final*final_yuzde)/100;
for(pass=1;pass<ogr_say;pass++)
for(i=0;i<ogr_say-1;i++){
if(ogrenciler[i].ortalama<ogrenciler[i+1].ortalama){
temp=ogrenciler[i];
ogrenciler[i]=ogrenciler[i+1];
ogrenciler[i+1]=temp;
}
}
printf("%-10s %-20s %-5s %-5s %-10s %-10s\n\n","Isim","Soyisim","Vize","Final","Ortalama","Sonuc");
for(i=0;i<ogr_say;i++){
if(ogrenciler[i].ortalama>=gecme){gecen++;
printf("%-10s %-20s %-5d %-5d %-10d %-10s\n",ogrenciler[i].ad,ogrenciler[i].soyad,ogrenciler[i].vize,ogrenciler[i].final,ogrenciler[i].ortalama,"GECTi");
ince_cizgi;
}
else{kalan++;
printf("%-10s %-20s %-5d %-5d %-10d %-10s\n",ogrenciler[i].ad,ogrenciler[i].soyad,ogrenciler[i].vize,ogrenciler[i].final,ogrenciler[i].ortalama,"KALDI");
ince_cizgi;
}}kalin_cizgi;
printf("Gecen ogrenci sayisi: %d\nKalan ogrenci sayisi: %d\n",gecen,kalan); kalin_cizgi;
system("pause");
}
if(c==6){ fclose(dosya); return 0;}
}
}//sonsuz menü döngüsü bitimi
}//if bitim
if(c<1||c>3){ printf("Hatali secim yaptiniz!\n"); system("pause");}
}
Yorumlar:






bu kodları c++ da yazılımı nasıl oluyor bir de eczane otomasyonu nasıl yazılır