Konuyu görüntüle
IUCODERS FORUM > Duyurular > Okul ile ilgili > programlama dilleri bütünleme
Yazar
fundagulkaya


avatar
istanbul
Kayıt: 07.11.2007
11.02.2008-16:26 #37640
gilraen yazdi
 
ikinci gruptan giren arkadaşlar hoca tam olarak ne istedi sizden teklerin soyadlarını çevir diyerek bi yazsanız çok makbule geçer.applause

geçekten arkadaşlar 2. grup olarak giren yok mu sınava..





Yazar
haci


avatar
Istanbul
Kayıt: 29.11.2006
11.02.2008-16:31 #37641
fundagulkaya yazdi
 
gilraen yazdi
 
ikinci gruptan giren arkadaşlar hoca tam olarak ne istedi sizden teklerin soyadlarını çevir diyerek bi yazsanız çok makbule geçer.applause

geçekten arkadaşlar 2. grup olarak giren yok mu sınava..



var.

ögrenci numarası tek olanların (13*******1 gibi) soyadları ters çevrilip yazılacaktı diye hatırlıyorum

örnegin soyadı "ABCD" ise ters çevirme işleminden sonra listelendiginde soyadı alanı "DCBA" gibi olacaktı.

kolay gelsin.





Be peaceful, be courteous, obey the law, respect everyone; but if someone puts his hand on you, send him to the cemetery.
Yazar
marakana


avatar

Kayıt: 08.03.2007
11.02.2008-16:31 #37643
2. grup olarak giren kişi ne sorulduğunu bilmiyo napsınlaughing.







Yazar
kartane


avatar
istanbul
Kayıt: 22.02.2007
12.02.2008-01:21 #37718
#include<stdio.h>
int main()
{
int hesap;
double bakiye;
char isim[30];
FILE *cfptr;

if((cfptr=fopen("kus.txt","w"))==NULL)
printf("dosya acılamadı");
else{
printf("hesap numarasını,ismi,bakiyeyi giriniz,cıkıs icin hesap no -1 girin
");
scanf("%d%s%lf",&hesap,isim,&bakiye);

while(hesap!=-1){
fprintf(cfptr,"%d %s %lf
",hesap,isim,bakiye);

printf("hesap numarasını,ismi,bakiyeyi giriniz,cıkıs icin hesap no -1 girin
");
scanf("%d%s%lf",&hesap,isim,&bakiye);
}
fclose(cfptr);

}
return 0;
}


kıtaptakı bu 1. örnten sonra 2. okumayı yazıyorum ama bı turlu okutamıyorum

********************

#include<stdio.h>
int main()
{
int hesap;
double bakiye;
char isim[30];
FILE * cfptr;

if((cfptr=fopen("kus.txt","r"))==NULL)
printf("dosya acılamadı");
else{
fscanf(cfptr,"%d%s%lf",&hesap,isim,&bakiye);

while(!feof(cfptr)){
printf("%d %s %lf
",hesap,isim,bakiye);
fscanf(cfptr,"%d%s%lf",&hesap,isim,&bakiye);
}
fclose(cfptr);
}
return 0;
}


niye okumuyo saduzun uzun dosyanın yolunu mu yazmam gerekiyo yoksa???????????





Yazar
marakana


avatar

Kayıt: 08.03.2007
12.02.2008-10:34 #37726
kartane yazdi

#include<stdio.h>
int main()
{
	int hesap;
	double bakiye;
	char isim[30];
	FILE *cfptr;

	if((cfptr=fopen("kus.txt","w"))==NULL)
		printf("dosya acılamadı");
	else{
		printf("hesap numarasını,ismi,bakiyeyi giriniz,cıkıs icin hesap no -1 girin
");
		scanf("%d%s%lf",&hesap,isim,&bakiye);

		while(hesap!=-1){
			fprintf(cfptr,"%d	%s	%lf
",hesap,isim,bakiye);

         printf("hesap numarasını,ismi,bakiyeyi giriniz,cıkıs icin hesap no -1 girin
");
		 scanf("%d%s%lf",&hesap,isim,&bakiye);
		}
		fclose(cfptr);

	}
return 0;
}




#include<stdio.h>
int main()
{
	int hesap;
	double bakiye;
	char isim[30];
	FILE * cfptr;

	if((cfptr=fopen("kus.txt","r"))==NULL)
		printf("dosya acılamadı");
	else{
		fscanf(cfptr,"%d%s%lf",&hesap,isim,&bakiye);

		while(!feof(cfptr)){
			printf("%d	%s	%lf
",hesap,isim,bakiye);
            fscanf(cfptr,"%d%s%lf",&hesap,isim,&bakiye);
		}
		fclose(cfptr);
	}
	return 0;
}



 
niye okumuyo saduzun uzun dosyanın yolunu mu yazmam gerekiyo yoksa???????????


Şimdi sen ilk kodu yazıyosun sonra farklı bir dosyaya 2. kodu yazdığın için,, kus.txt dosyasını bulamıyor.ilk kodu yazınca oluşturduğun kus.txt dosyasını yeni calıştığın klasörün altına kopyalarsan problem çözülür sanırım...







Yazar
kartane


avatar
istanbul
Kayıt: 22.02.2007
12.02.2008-11:29 #37727
evet en son aşama olarak onu denemiştm ve sorunu çözdüm, sağooooool





Yazar
marakana


avatar

Kayıt: 08.03.2007
12.02.2008-13:12 #37746
// Sabit uzunlukta 100 adet kaydı tutabilecek rasgele erişimli bir dosya oluşturmak

#include<stdio.h>

struct musteri{
	int hesap;
	char soyad[15];
	char ad[10];
	double bakiye;
};

main()
{
	int i;
	struct musteri Bosveri={0,"","",0.00};

	FILE *dosya;

	dosya=fopen("kredi.txt","w");
	if(dosya==NULL)
	{
		printf("dosya acilamadi
");
		return NULL;
	}
	for(i=0;i<100;i++)
		fwrite(&Bosveri,sizeof(struct musteri),1,dosya);
	fclose(dosya);
	return 0;

}


kod hatasız calışıyor ama olusan kredi. txt' de saçmasapan yazılar cıkyor.kredi.txt'i okuttuğumda ise girilen kayıtlar doğru cıkıyor.Sanırım başta Bosveri={0,"","",0.00}; bunu yazmakla hata yapıyorum, ne yapmalıyım ben şimdiconfusedbeat upworried







Yazar
fundagulkaya


avatar
istanbul
Kayıt: 07.11.2007
12.02.2008-19:56 #37842
arkadaşlar bi sorum var.kodda .dat uzantılı bi dosya oluşturuyorum.oluşunca neden vidyo cd filmi diyo.bunun dosyayla alakası yok. .doc,.txt uzantılı kaydedince ok ama bu nedir,ya da neden .dat uzantılı dosya oluşturuluyo ki örneklerde???





Yazar
adaniak


avatar

Kayıt: 13.01.2007
12.02.2008-20:01 #37843
fundagulkaya yazdi
 
arkadaşlar bi sorum var.kodda .dat uzantılı bi dosya oluşturuyorum.oluşunca neden vidyo cd filmi diyo.bunun dosyayla alakası yok. .doc,.txt uzantılı kaydedince ok ama bu nedir,ya da neden .dat uzantılı dosya oluşturuluyo ki örneklerde???


Sağ tıkla birlikte aç..ya da kaydederken .txt kaydet..coffee





Yazar
gilraen


avatar

Kayıt: 19.01.2007
12.02.2008-21:26 #37847
Arkadaşlar deiteldeki rasgele sıralı erişim örneklerinde dosyaları w ve r şeklinde yazıp okuyunca hata vermiyor ancak ekranda kayıtların yerine saçma sapan sayılar ve figürler çıkıyor.beat up
Dosyaları wb ve rb modunda yazıp okumaya çalışınca bu sefer herşey doğru ancak son kaydı iki kere yazıyor bunun nedenini ve çözümünü bilen bir arkadaş varsa ve açıklarsa sevinirim...biggrinapplause





Yazar
marakana


avatar

Kayıt: 08.03.2007
12.02.2008-21:34 #37848
// Rasgele erisimli dosyadan sıralı okuma yapmak

#include<stdio.h>

struct musteri{
	int hesap;
	char soyad[15];
	char ad[10];
	double bakiye;
};

main()
{
	FILE *dosya;
	struct musteri kisi={0,"","",0.0};
	dosya=fopen("kredi.txt","rb");
	if(dosya==NULL)
	{
		printf("dosya acilamadi
");
		return NULL;
	}
	fread(&kisi,sizeof(struct musteri),1,dosya);
	while(!feof(dosya))
	{
		if(kisi.hesap!=0)
			printf("%-6d %-16s %-11s %10.2f
",kisi.hesap,kisi.soyad,kisi.ad,kisi.bakiye);
		fread(&kisi,sizeof(struct musteri),1,dosya);
	}
	fclose(dosya);
	return 0;
}


böyle olacak, ama oluşturduğun kredi.txt i calıştığın klasörün altına kopyalamayı unutma.Bende cok uğrastım ama sorunu ben çözmedim zati..kaynak:fundagulkaya(teşekkürlerapplause)







Yazar
gilraen


avatar

Kayıt: 19.01.2007
12.02.2008-21:44 #37850
Eyvallah kızlarlove struck.Sağ ol marakanacım ve fundacım....hugs





Yazar
alew


avatar
istanbul
Kayıt: 01.04.2007
12.02.2008-21:57 #37853
ya bu program final grup 1 çözümü ilk çalıştırdıgımda çalışıodu ikinci den itibaren çalışmıocrying anlamadımworried arkadaşlar bi yardımcı olun lütfenapplause


#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <conio.h>
#define KAPASITE 10000

typedef struct ogrenci
{ char ad[15];
char soyad[15];
char numara[10];
char yas[3];
char ortalama[5];
} OGRENCI;

void EkraniTemizle(void)
{
system("cls");
}

// BUNLAR OGRENCI TARAFINDAN GELISTIRILECEK FONKSIYONLAR ////////////////////////

OGRENCI * DosyadanOku(void);
void KayitSayisiniGoster(void);
void Goruntule(OGRENCI *kayitlar);
void DosyayaYaz(OGRENCI *kayitlar);
void SoyadaGoreSirala(OGRENCI *kayitlar);

//////////////////////////////////////////////////////////////////////////////////
int kayitSayisi = 0;

int main (void)
{
int secim; //switch-case yapisina ait secimin saklandigi nesnedir.

OGRENCI * kayitlar = NULL; //kayitlarin tutulacagi dizi gostericisidir.

kayitlar = DosyadanOku();

do {
//MENUYU OLUSTURUYORUZ.
printf("
1.) Listeyi goruntule");
printf("
2.) Soyada gore sirala");
printf("
3.) Kayit sayisini goster");
printf("
4.) Cikis");
flushall();
printf("
Lutfen Seciminizi Giriniz
>");
scanf("%d",&secim);

switch (secim) {
case 1:
Goruntule(kayitlar);
break;
case 2:
SoyadaGoreSirala(kayitlar);
break;
case 3:
KayitSayisiniGoster();
break;
case 4:
DosyayaYaz(kayitlar);
exit(0);
break;
default:
printf("
Seciminiz hatali lutfen 1 il 4 arasinda bir sayi giriniz");
} // end of switch block

printf("Devam etmek icin bir tusa basiniz.
");
flushall();
getch();
EkraniTemizle();

}while(1); // end of infinite do-while block

return 0;
}

OGRENCI * DosyadanOku(void)
{
FILE *dosya;
OGRENCI gecicidizi[KAPASITE];

if((dosya = fopen("records.txt", "r")) == NULL) {
printf("Dosya acilamadi !");
} else {
while(!feof(dosya)) {
fscanf(dosya, "%s %s %s %s %s", gecicidizi[kayitSayisi].ad, gecicidizi[kayitSayisi].soyad, gecicidizi[kayitSayisi].numara, gecicidizi[kayitSayisi].yas, gecicidizi[kayitSayisi].ortalama);
kayitSayisi++;
}
}
fclose(dosya);


return gecicidizi;
}

void Goruntule(OGRENCI *kayitlar)
{
int i;
for (i = 0; i < kayitSayisi; i++)
printf("%s %s %s %s %s
", kayitlar[i].ad, kayitlar[i].soyad, kayitlar[i].numara, kayitlar[i].yas, kayitlar[i].ortalama);


}

void KayitSayisiniGoster(void)
{
printf("%d adet kayit var.", kayitSayisi);

}

void SoyadaGoreSirala(OGRENCI *kayitlar)
{
int i, j;
OGRENCI tmp;

for(i = 0; i < kayitSayisi - 1; i++) {
for(j = 1; j < kayitSayisi-1; j++) {
if(strcmp(kayitlar[i].soyad, kayitlar[j].soyad) > 0) {
// Kayıtları yer değiştir
tmp = kayitlar[i];
kayitlar[i] = kayitlar[j];
kayitlar[j] = tmp;
}
}
}


}

void DosyayaYaz(OGRENCI *kayitlar)
{
FILE *dosya;
int i;
if((dosya = fopen("records.txt", "w")) == NULL) {
printf("Dosya acilamadi !");
} else {
for (i = 0; i < kayitSayisi; i++)
fprintf(dosya, "%s %s %s %s %s
", kayitlar[i].ad, kayitlar[i].soyad, kayitlar[i].numara, kayitlar[i].yas, kayitlar[i].ortalama);
}
fclose(dosya);

}





Yazar
blindalley


avatar
balikesir
banlandı
Kayıt: 01.12.2006
12.02.2008-21:59 #37854
hata yok gibi duruo sanırım dosyanın içeriği değişmiştir dosyanı update et yada dosyanın yedeği warsa onu kopyala öle dene bide..





Yazar
alew


avatar
istanbul
Kayıt: 01.04.2007
12.02.2008-22:09 #37856
ya kafayı yicem dediğin gibi o dosyayı sildim oynanmamışını kopyaladm yine çalıştırdım yine çalıştı bi kere daha çalıştırdım gene tuhaf kayan şeyler oldu olducryingbi de siz deneyin lütfenworriedworriedcryinglaughingstraight facefrown





1 2 3 4 5
Del.icio.us
Digg
Facebook
Furl
Google
Blink
Simpy
Spurl
Y! MyWeb