Merhabalar yeniden..Ben gayet basit bir örnek yapcaktım kişidien 2 tane sayı alıp sonra o verdiği toplama çıkarma işlemine göre sonuç yazdırcaktım lakin 1. attığım örnekde char asd[0] diye kullandığım örnekde sayi2 değerini 43 yapıyor char asd; diye yaptığım örnekde sayi2 değerini 0 yapıyor
Kod a aralarda yazdığım gibi sayi2 değerini aldığım yerlerde ve kodu sildim daralttım sorun
printf("\n Bir islem giriniz: ");
scanf("%s",&asd);
bunda kullanıcıdan işlem değerini aldıktan sonra sayi2 değerini 0 yaptığnı öğrendim peki ama neden 0 yapıyor çözüm yolu nedir?
1.Örnek
#include <stdio.h>
#include <stdlib.h>
int main() {
//Switch Case ile işlem yapma
int sayi1,sayi2,sonuc;
char asd[0];
printf("1. sayiyi giriniz: ");
scanf("%d",&sayi1);
printf("2. sayiyi giriniz: ");
scanf("%d",&sayi2);
printf("Bu sayilarla hangi islemi yapcaksiniz: \'%d\' \'%d\' ",sayi1,sayi2);
printf("\n%d",sayi2);
printf("\n Bir islem giriniz: ");
scanf("%s",&asd);
printf("%d\t",sayi2);
switch(asd[0]){
case '+':
sonuc=sayi1+sayi2;
printf("%d",sonuc);
break;
case '-':
sonuc=sayi1-sayi2;
printf("%d",sonuc);
break;
}
return 0;
}
2.Örnek
#include <stdio.h>
#include <stdlib.h>
int main() {
//Switch Case ile işlem yapma
int sayi1,sayi2,sonuc;
char asd;
printf("1. sayiyi giriniz: ");
scanf("%d",&sayi1);
printf("2. sayiyi giriniz: ");
scanf("%d",&sayi2);
printf("Bu sayilarla hangi islemi yapcaksiniz: \'%d\' \'%d\' ",sayi1,sayi2);
printf("\n%d",sayi2);
printf("\n Bir islem giriniz: ");
scanf("%s",&asd);
printf("%d\t",sayi2);
switch(asd){
case '+':
sonuc=sayi1+sayi2;
printf("%d",sonuc);
break;
case '-':
sonuc=sayi1-sayi2;
printf("%d",sonuc);
break;
}
return 0;
}