merhaba herkese...ben C öğrenmeye yeni başladım.Aldım elime kitabı açtım editörü ufak ufak yazmaya başladım..Aşağıdaki programı çalıştırdığımda ne yaptığını anladım ancak
printf("%s",satir %2?"<":">"); satırının açıklamasını öğrenmek istiyorum..İnternette araştırdım ama aydınlatıcı bilgi bulamadım.'<' ve'>' simgelerini altalta 10 defa yazan programda bunu %2? açıklayan olursa çok rahatlayacağım...Şimdiden tşkler...
#include<stdio.h> int main() { int satir=10,sutun;
satır %2 demek = satır ın 2 ye bölümünden kalan anlamını taşıyor. printf("%s",satir %2?"<":">") burdada satırın %2 ye bölümünden kalan 0 ise ? sonraki ifade,başka birşeyse : sonraki ifade çalışıyor. yani bir tür if else durumunun kısaltılmışı anlamına geliyor burada "?" koşul belirtiyor. %s de karakter dizisi olduğunu belirtiyor. altalta yazmasını sağlayan da while döngüsü zaten onu biliyorsun sanırım.
for kullansa daha düzgün olurmuş bence while sevmiyorum
?doğru ise yapılması istenen koşul : yanlış ise yapılması istenen koşul; Şeklinde kullanılıyor.Bu kodda ? kullanımına başka örnek.Girilen harflerdeki a,b ve i harfinden kaç tane olduğunu yazıyor.
#include <stdio.h> #include <stdlib.h>
int main(int argc, char *argv[]) { char a[50]; printf("Kontrol edilecek kelimeyi girin:"); gets(a); char *p; int i,con,aa=0,bb=0,aa2=0,bb2=0,ii=0; p=a; for(i=0;p[i];i++) { printf("%c",p[i]); con=p[i]=='a' ? aa++ : 0 ; con=p[i]=='B' ? bb++ : 0 ; con=p[i]=='A' ? aa++ : 0 ; con=p[i]=='b' ? bb++ : 0 ; con=p[i]=='i' ? ii++ : 0 ; } printf("\n%d tane a var",aa); printf("\n%d tane b var",bb); printf("\n%d tane i var \n",ii); system("PAUSE"); return 0; }
yorumun için tşkler.bende %2? i apayrı bir terim sanmıştım.modla alakalıymış..dikkatimi iyice verseymişim anlayacakmışım..C'yi çevremdeki herkes çok zor diye nitelendirdiği için bende kendimi kasıyorum.C ile yeni tanıştığımdan...Ayrıca while'ı bende sevmiyorum.onun yerine if yada for'u kullansak olur değilmi?Aman aman kullanılması gereken yada bnm dikkat etmem gereken yerler varmı?
printf("%s",satir %2?"<":">"); satırının açıklamasını öğrenmek istiyorum..İnternette araştırdım ama aydınlatıcı bilgi bulamadım.'<' ve'>' simgelerini altalta 10 defa yazan programda bunu %2? açıklayan olursa çok rahatlayacağım...Şimdiden tşkler...
#include<stdio.h>
int main()
{
int satir=10,sutun;
while(satir>=1){
sutun=1;
while(sutun<=10){
printf("%s",satir %2?"<":">");
++sutun;
}
--satir;
printf("\n");
}
system("PAUSE");
return 0;
}
DH forumlarında vakit geçirmekten keyif alıyor gibisin ancak giriş yapmadığını görüyoruz.
Üye Ol Şimdi DeğilÜye olduğunda özel mesaj gönderebilir, beğendiğin konuları favorilerine ekleyip takibe alabilir ve daha önce gezdiğin konulara hızlıca erişebilirsin.