Arkadaşlar merhaba, şöyle bir program düşünelim; klavyeden ilk önce maaş soruyor, sonra cinsiyet. Maaş değerine 0 girene kadar sormaya devam ediyor. Bitirdiğiniz zaman da size erkek ve kadın maaş ortalamasını veriyor. Ben şu kodu yazdım: #include<stdio. h> #include<conio. h> #include<iostream. h> #include<string. h> int main {clrscr ; int maas, esayac=0, ksayac=0, emaas=0, kmaas=0; / esayac erkekleri ksayac kad�nlar� sayar / / emaas erkek kmaas kad�n maas toplam� / char cinsiyet; do { printf ;scanf ; if(maas 0)break; else{ printf("Cinsiyet \n"); scanf ; if else if else printf ; } } while(maas!=0); printf ; printf ; if(esayac!=0)printf ; if(ksayac!=0)printf ; getch ;return 0;} Program nedense kadın maaş toplamını ve dolayısıyla ortalamasını yanlış hesaplıyor. Bir türlü bulamadım sorunu. If ifadesi yerine şunu da kullandım; switch Yine de işe yaramadı. Sorunun ne olduğunu görebiliyor musunuz?

Kod: // editted by 0guzhan :p // compiled with Visual C++ #include<stdio. h> #include<conio. h> #include<iostream. h> #include<string. h> #include "stdlib. h" // ben ekledim system fonksiyonu için şart! int main { //clrscr ; int maas, esayac=0, ksayac=0, emaas=0, kmaas=0; char cinsiyet; do { printf ; scanf ; // bufferı temizler ;) fflush ; if(maas 0) break; else{ printf("Cinsiyet \n"); scanf ; // %c ile al! // temizlenmesi şart!!! :D fflush ; if else if else printf ; } system ; // ekranı siler!... }while(maas!=0); printf ; printf ; if(esayac!=0) printf("Erkek ortalama maaaaaŸ=%f\n", emaas/esayac); // bölme sonucu ortaya çıkan sonuç float olursa diye casting yaptım! if(ksayac!=0) printf("Kad?n ortalam maaaaaŸ=%f\n", kmaas/ksayac); return 0; } Biraz düzenledim... İş yapar heralde!... Eyvallah!

arkadaşım if else if else printf ; } } while(maas!=0); Buraya Kadar İş Güzel, Burda İki Tane } } Var Gördüğün Gibi... Ordan Bir Tane Sileceksin...

ya da if else if bu satırlardaki karizmatik parantezleri sileceksin.