C/C++ Kodlar EXE olarak çalışmıyor

Returnden hemen önce kullandım hocam.



Çok sağ olun hocam bilgisayar başına geçince deneyeceğim kodu.
@Nexor'unkine alternatif olarak bunu da deneyebilirsiniz:
C:
#include <stdio.h>
#include <stdlib.h>

int main(void)
{
    int x = 0;

    printf("lutfen bir sayi giriniz: ");
    scanf("%d%*c", &x); // * sembolü, scanf'in okuduğu değeri gözardı etmesini sağlar.

    if (x % 2 == 0)
    {
        printf("sayi cift sayidir.\n");
    }
    else
    {
        printf("sayi tek sayidir.\n");
    }

    getchar(); // \n artık araya girmeyecek.

    return 0;
}
Sayıyı girdikten sonra enter'a bastığınızda scanf, sadece girdiğiniz int'i okur. Enter (yani \n) ise inputta kalır ve getchar, inputtan arta kalan \n'i okur.

scanf'te kullandığım * sembolü sayesinde \n gözardı edilir, bunun sayesinde return'den önceki getchar, okuyacak bir char bulamaz ve sizin input girmeniz gerekir ki sanırım istediğiniz de bu.
 
Son düzenleme:
@Nexor'unkine alternatif olarak bunu da deneyebilirsiniz:
C:
#include <stdio.h>
#include <stdlib.h>

int main(void)
{
 int x = 0;

 printf("lutfen bir sayi giriniz: ");
 scanf("%d%*c", &x); // * sembolü, scanf'in okuduğu değeri gözardı etmesini sağlar.

 if (x % 2 == 0)
 {
 printf("sayi cift sayidir.\n");
 }
 else.
 {
 printf("sayi tek sayidir.\n");
 }

 getchar(); // \n artık araya girmeyecek.

 return 0;
}
Sayıyı girdikten sonra Enter'a bastığınızda scanf, sadece girdiğiniz Int'i okur. Enter (yani \n) ise inputta kalır ve getchar, inputtan arta kalan \n'i okur.

scanf'te kullandığım * sembolü sayesinde \n göz ardı edilir, bunun sayesinde return'den önceki getchar, okuyacak bir char bulamaz ve sizin input girmeniz gerekir ki sanırım istediğiniz de bu.

Anladım hocam çok çok teşekkür ederim. Bu kodlar istediğim şekilde çalıştı.
 

Yeni konular

Geri
Yukarı