Gönderen Konu: C ile ilgili bir soru  (Okunma sayısı 45131 defa)

Çevrimdışı Ahmet Erozan

  • OTOKON Üyesi
  • *
  • İleti: 71
C ile ilgili bir soru
« : Aralık 22, 2009, 03:31:25 ÖS »
C de kullanıcıdan harfleri neyle alıyoruz?mesela sayıları int le float la falan alıyoruz harfleri neyle alcaz?

Çevrimdışı Berk Cosar

  • Mezun olmuş OTOKON'cu
  • *
  • İleti: 578
Ynt: C ile ilgili bir soru
« Yanıtla #1 : Aralık 22, 2009, 08:11:26 ÖS »
Kod: [Seç]
char
maşallah hocam inşallah.

Çevrimdışı Serhat Büyükçolak

  • Mezun olmuş OTOKON'cu
  • *
  • İleti: 1130
  • C bilmeyen adam
Ynt: C ile ilgili bir soru
« Yanıtla #2 : Aralık 22, 2009, 09:54:09 ÖS »
Alıntı
C de kullanıcıdan harfleri neyle alıyoruz?

char tipinde tanımladığın değişkene getchar la yada scanfle atayarak girdi alabilirsin.

Kod: [Seç]
char ch;

ch=getchar();

/**yada**/

scanf("%c",&ch);  //dikkat % c
« Son Düzenleme: Aralık 22, 2009, 10:57:11 ÖS Gönderen: Serhat_Buyukcolak »
Sonra neden "C bilmeyen adam" diyorlar, hele bakıverin şuraya; http://plepa.com/2018/12/21/c-biliyor-musunuz/

Çevrimdışı Ahmet Erozan

  • OTOKON Üyesi
  • *
  • İleti: 71
Ynt: C ile ilgili bir soru
« Yanıtla #3 : Aralık 22, 2009, 09:58:48 ÖS »
çok teşekkürler serhat.malum acemiyim yeni başladım.  ;)

Çevrimdışı Ahmet Erozan

  • OTOKON Üyesi
  • *
  • İleti: 71
Ynt: C ile ilgili bir soru
« Yanıtla #4 : Ocak 25, 2010, 04:44:08 ÖS »
arkadaşlar for'la ilgili bir örnek yaptım ama derlediğimde ilginç bişey çıkıyor.kodlar şöyle:
Alıntı
#include<stdio.h>
#include<conio.h>
main()
{
int i,j;
for(i=0;i<=10;j=(i+1)*(i+1),i=i+1)     
printf("%d\n",j);     

     
getch();
return 0;     
}

ekran görüntüsünde de şunlar çıkıyor:
Alıntı
2293576
1
4
9
16
25
36
49
64
81
100

en baştaki 2293576 sayısı nerden geliyo olabilir?

Çevrimdışı İsmail ULUTÜRK

  • Mezun olmuş OTOKON'cu
  • *
  • İleti: 1386
  • Festina Lente
Ynt: C ile ilgili bir soru
« Yanıtla #5 : Ocak 25, 2010, 05:51:03 ÖS »
arkadaşlar for'la ilgili bir örnek yaptım ama derlediğimde ilginç bişey çıkıyor.kodlar şöyle:
Alıntı
#include<stdio.h>
#include<conio.h>
main()
{
int i,j;
for(i=0;i<=10;j=(i+1)*(i+1),i=i+1)     
printf("%d\n",j);     

     
getch();
return 0;     
}

ekran görüntüsünde de şunlar çıkıyor:
Alıntı
2293576
1
4
9
16
25
36
49
64
81
100

en baştaki 2293576 sayısı nerden geliyo olabilir?

Bende de en başta 2686792 çıktı, her bilgisayarda farklı birşey çıktığına göre yaptığın birşeyden değil de yapmadığın birşeyden kaynaklanıyor olabilir mi?
(İpucu: for(i=0;i<=10;j=(i+1)*(i+1),i=i+1)  Koyuyla işaretli kısımın sen ne zaman çalışmasını istiyorsun, o ne zaman çalışıyor bir test et istersen. Google dan for döngüsünün nasıl çalıştığını da araştırabilirsin.)
Progress isn't made by early risers. It's made by lazy men trying to find easier ways to do something.
- Robert Heinlein

Çevrimdışı Ahmet Erozan

  • OTOKON Üyesi
  • *
  • İleti: 71
Ynt: C ile ilgili bir soru
« Yanıtla #6 : Ocak 25, 2010, 06:26:00 ÖS »
doğrusu şuymuş:
Alıntı
#include<stdio.h>
#include<conio.h>
main()
{
int i,j=0;
for(i=0;i<=10;i=i+1,j=(i)*(i))
printf("%d\n",j);     
     
getch();
return 0;     

}

anlamadığım niye j'ye değer vermek gerekiyor? ???

Çevrimdışı İsmail ULUTÜRK

  • Mezun olmuş OTOKON'cu
  • *
  • İleti: 1386
  • Festina Lente
Ynt: C ile ilgili bir soru
« Yanıtla #7 : Ocak 25, 2010, 06:44:18 ÖS »
(İpucu: for(i=0;i<=10;j=(i+1)*(i+1),i=i+1)  Koyuyla işaretli kısımın sen ne zaman çalışmasını istiyorsun, o ne zaman çalışıyor bir test et istersen. Google dan for döngüsünün nasıl çalıştığını da araştırabilirsin.)

Dediğime bakarsan koyu kısmın çalışmasından önce döngü bloğunun çalıştığını haliye j yi yazdırdığında j nin değerinin hiçbirşey olduğunu(j ye sen bir değer atamıyorsun, haliyle j nin bir değeri olmaması gerekiyor mantıken.) farkedeceksin, birşeyin değeri hiçbirşey olamayacağına göre rastgele bilgisayarın belleğinde ne varsa o ara aklından ne geçiyorsa onu yazdırıyor.

j=(i+1)*(i+1) kısmını döngü bloğunun içine taşırsan, j ye ilk değer atamasan da doğru çalışır, yani j ye başlangıçta bir değer vermek zorunda değilsin ama kullanmadan önce değerini vermelisin.
Progress isn't made by early risers. It's made by lazy men trying to find easier ways to do something.
- Robert Heinlein

Çevrimdışı Ahmet Erozan

  • OTOKON Üyesi
  • *
  • İleti: 71
Ynt: C ile ilgili bir soru
« Yanıtla #8 : Ocak 25, 2010, 06:48:32 ÖS »
teşekkürler :D

Çevrimdışı Serhat Büyükçolak

  • Mezun olmuş OTOKON'cu
  • *
  • İleti: 1130
  • C bilmeyen adam
Ynt: C ile ilgili bir soru
« Yanıtla #9 : Ocak 25, 2010, 06:52:40 ÖS »
Ben c falan bilmem ama böyle durumlarda istenmeyen değerler gördüğümde uyguladığım bir yöntemim  var ismail çok güzel açıklamış problemi ve çözümü. Ben şöyle yapıyorum; diyelim sen ne yapmaya çalışıyosun 0 dan 10 a kadar sayıların karelerini  al yazdır. Bu döngüye girmeden önce j değerini yazdır ve ne olduğunu gör. En baştaki değerle aynı çıkacaktır. Yani j yi, döngüye sokmadan bir  yazdırıyorsun ve sonra döngüyle . Göreceksin ki ilk yazdırdığınla ilki döngüyle yazılan terim  aynı yani "j yapmanı istediğin eylemi en başta yapmıyor" sonra devam ediyor. Demekki döngünde bir problem var. vs... Hadi kolay gelsin. Çalışan birilerinin olduğunu görmek güzel  bişey :D
Sonra neden "C bilmeyen adam" diyorlar, hele bakıverin şuraya; http://plepa.com/2018/12/21/c-biliyor-musunuz/

Çevrimdışı İsmail ULUTÜRK

  • Mezun olmuş OTOKON'cu
  • *
  • İleti: 1386
  • Festina Lente
Ynt: C ile ilgili bir soru
« Yanıtla #10 : Ocak 25, 2010, 07:13:02 ÖS »
birşeyin değeri hiçbirşey olamayacağına göre rastgele bilgisayarın belleğinde ne varsa o ara aklından ne geçiyorsa onu yazdırıyor.

Aslında burası da tam olarak böyle değil, değişkenlerin tanımlanması konusunu merak edersen araştırabilirsin.
Progress isn't made by early risers. It's made by lazy men trying to find easier ways to do something.
- Robert Heinlein

Çevrimdışı Ahmet Erozan

  • OTOKON Üyesi
  • *
  • İleti: 71
Ynt: C ile ilgili bir soru
« Yanıtla #11 : Ocak 25, 2010, 11:39:33 ÖS »
Ben c falan bilmem ama böyle durumlarda istenmeyen değerler gördüğümde uyguladığım bir yöntemim  var ismail çok güzel açıklamış problemi ve çözümü. Ben şöyle yapıyorum; diyelim sen ne yapmaya çalışıyosun 0 dan 10 a kadar sayıların karelerini  al yazdır. Bu döngüye girmeden önce j değerini yazdır ve ne olduğunu gör. En baştaki değerle aynı çıkacaktır. Yani j yi, döngüye sokmadan bir  yazdırıyorsun ve sonra döngüyle . Göreceksin ki ilk yazdırdığınla ilki döngüyle yazılan terim  aynı yani "j yapmanı istediğin eylemi en başta yapmıyor" sonra devam ediyor. Demekki döngünde bir problem var. vs... Hadi kolay gelsin. Çalışan birilerinin olduğunu görmek güzel  bişey :D

güzel yöntem :D

daha çok soru sorcam burdan.boşuna mı açtık başlığı.ona göre hazırlıklı olun. ::)

Çevrimdışı Ahmet Erozan

  • OTOKON Üyesi
  • *
  • İleti: 71
Ynt: C ile ilgili bir soru
« Yanıtla #12 : Ocak 25, 2010, 11:40:54 ÖS »
bu arada başlığı açarken bir soru demiştim.ben böyle devam edersem bine ulaşırım :D

Çevrimdışı Fırat Civaner

  • Mezun olmuş OTOKON'cu
  • *
  • İleti: 227
Ynt: C ile ilgili bir soru
« Yanıtla #13 : Ocak 25, 2010, 11:51:16 ÖS »
Sor sor. Hep benden önce cevaplıyorlar bu sefer ben cevaplayacağım. :D (zor sorma ama)
İnsanlar sevmek, nesneler kullanmak içindir; ancak biz çoğu zaman kendimizi nesneleri sevip insanları kullanmanın cazibesine kaptırırız.

Çevrimdışı Ahmet Erozan

  • OTOKON Üyesi
  • *
  • İleti: 71
Ynt: C ile ilgili bir soru
« Yanıtla #14 : Ocak 25, 2010, 11:59:49 ÖS »
sorular hep üstteki gibi olacak.c'yi öğrenmeye çalışan birinden gelecek basit sorular.beklentilerini yüksek tutma :P