DonanımHaber Mini sürüm 2 Ocak 2026 tarihi itibariyle kullanımdan kalkacaktır. Bunun yerine daha hızlı bir deneyim için DH Android veya DH iOS uygulamalarını kullanabilirsiniz.
Arama butonu
Bu konudaki kullanıcılar: 1 misafir
7
Cevap
543
Tıklama
1
Öne Çıkarma
c programlama kodlamadaki hatayı bulamadım
K
11 yıl (12 mesaj)
Er
Konu Sahibi

Arkadaşlar merhaba, C programlamaya yeni başladım ve yazdığım koddaki hatayı göremedim. yardım ederseniz sevinirim.

programın amacı şu: iki sayı girilecek bir işlem girilecek. işleme göre hesabı yapıp ekrana yazdıracak. Kullanıcı isterse program baştan başlayacak.
hata şöyle: iki sayı girmemi istedikten sonra işlem girmemi istemiyor ama sanki girmişim gibi hatalı giriş yaptiniz satırına gidiyor...

yazdığım kod:

 
#include <stdio.h>
#include <stdlib.h>

int main()
{
int sayi1,sayi2;
char devam=' ' , islem=' ';
float sonuc;


do
{
printf("ilk sayiyi giriniz: ");
scanf("%d" ,&sayi1);
printf("ikinci sayiyi giriniz: ");
scanf("%d" ,&sayi2);
printf("Bir islem giriniz '+', '-', '*', '/' : ");
scanf("%c" ,&islem);

if(islem=='+')
{
sonuc=sayi1+sayi2;
printf("%d%c%d= %f" ,sayi1,islem,sayi2,sonuc);
}
else if(islem=='-')
{
sonuc=sayi1-sayi2;
printf("%d%c%d= %f" ,sayi1,islem,sayi2,sonuc);
}
else if(islem=='*')
{
sonuc=sayi1*sayi2;
printf("%d%c%d= %f" ,sayi1,islem,sayi2,sonuc);
}
else if(islem=='/')
{
sonuc=sayi1/sayi2;
printf("%d%c%d= %f" ,sayi1,islem,sayi2,sonuc);
}
else
printf("Yanlis giris yaptiniz!");

printf("Devam etmek istiyor musunuz? E/H : ");
scanf("%c" ,&devam);

} while(devam=='E' || devam=='e');

}



S
11 yıl (285 mesaj)
Çavuş

Char tanımladıktan sonra =' ' yapmisin onları silip dener mısın bi char devam ; olarak





< Bu mesaj bu kişi tarafından değiştirildi St.Owl -- 17 Kasım 2014; 22:22:25 >

< Bu ileti mobil sürüm kullanılarak atıldı >

K
11 yıl (12 mesaj)
Er
Konu Sahibi

"Devam" da problem yok "işlem" de var. Birinde olup diğerinde olmaması ilginç



< Bu ileti mobil sürüm kullanılarak atıldı >
Bu mesaja 1 cevap geldi.
S
11 yıl (285 mesaj)
Çavuş

Düzeldi mi yani ?



< Bu ileti mobil sürüm kullanılarak atıldı >
Bu mesaja 1 cevap geldi.

Bu mesajda bahsedilenler: @kizzle_dizzle
K
11 yıl (12 mesaj)
Er
Konu Sahibi

hayır düzelmedi hocam. bir işlem giriniz den sonra iişlem girmeme izin vermeden yanlış giriş yaptınız diyor



L
11 yıl (388 mesaj)
Yüzbaşı

katarlara(char) giriş aldığın yerlerde %c'nin sol tarafına bir boşluk koy düzelir.yani:

scanf(" %c", &islem);

// . . .

scanf(" %c", &devam);



< Bu ileti mini sürüm kullanılarak atıldı >
Bu mesaja 1 cevap geldi.
T
11 yıl (1155 mesaj)
Binbaşı

dostum islem ve devam ın %c lerini %s yapıp dener misin bi


Bu mesaja 1 cevap geldi.
K
11 yıl (12 mesaj)
Er
Konu Sahibi

quote:

Orijinalden alıntı: lavara123

katarlara(char) giriş aldıĞ?ın yerlerde %c'nin sol tarafına bir boşluk koy düzelir.yani:scanf(" %c", &islem);// . . .scanf(" %c", &devam);


hocam teşekkür ederim oldu.

quote:

Orijinalden alıntı: tnszfr

dostum islem ve devam ın %c lerini %s yapıp dener misin bi


sizinkini denedim bu da oldu. ikinize de teşekkür ederim



DH Mobil uygulaması ile devam edin. Mobil tarayıcınız ile mümkün olanların yanı sıra, birçok yeni ve faydalı özelliğe erişin. Gizle ve güncelleme çıkana kadar tekrar gösterme.