C'de karakter katarları diye bir kavram yoktur. Karakter katarlarını kullanmak için karakter dizileri kullanılır. strlen işlevi bir karakter katarının uzunluğunu bulur. sozcuk değişkeni aslında bir dizi olduğu için işleciyle elemanlarına erişilebilir. Kodun çalışan hali: http://ideone.com/ufi3Ov #include <stdio. h> #include <string. h> int main { char sozcuk = "irlandalilastirilamayanlardan"; int i = 0; int j = 0; for(; i < strlen ; ++i) { for(j = 0; j <= i; ++j) printf ; } // your code goes here return 0; } Hocam c'de string denilen kavram olmaması tamamen fizikseldir. Aslında senin sylediğin şekilde karakterlerde yoktur C'de. char denilen veri tipi tek byte sayı tutmak için vardır. Biz insanlar bunları ascii tablosuna gre ekrana bastırırız bu kadar. Tıpkı stringlerin olmayıp bu ascii tablosundaki ilişkili sayıları yanyana getirip arraylere sokup yapmacık stringler elde ettiğimiz gibi. echo "imzanız zel karakter içermemelidir";

zigor bunu yazdı Hata nerede? Diziler 0dan başlıyor hocam 3. karakteri istiyorsan ktr diye çağırman gerekiyor. :) Teşekkürler, mesajı yazdıktan sonra fark ettim bir kayma olduğunu.

YeniHarman bunu yazdı ZoRKaYa bunu yazdı... Aslında senin sylediğin şekilde karakterler de yoktur C'de. char denilen veri tipi tek byte sayı tutmak için vardır... Aslında char'ın boyutunun bir bayt olduğu da standartta tanımlanmamış. char, standartta bir karakteri tutabilen herhangi bir boyutta olabilir. Aynı şekilde int de 16 ya da 32 bit gibi bir tanıma sahip değil, en az char ya da chardan daha büyük bir tip. Long için de aynı şey geçerli, int'e eşit ya da intten büyük. Ee şimdi aslında array denilen şeyin C dilinde first class obje olmadığından ve aslında 3 ile a ün aynı şey olduğundan ve ikisinin de 4. elemanı verdiğinden bahsetmek de vardı azizim ama arkadaş yeni başlıyormuş kafası karışmasın. Boşverelim o yüzden. Denedim, sozcuk ile 3 ikisi de 4. elemanı verdi :)

#include <stdio. h>#include <string. h>int main { char a ; int i=0, j; scanf ; while(a !=0){ for(j=0; j<=i;j++) printf ; i++; } } syntax hatalı olabilir ama byle yani http://pastebin.com/iJd1pEjq edit: grüntü Teşekkür ederim, stringleri henüz çalışmadığımdan yapamamıştım, araştırıyorum hemen. Herhangi bir hata da yok, doğrudan çalıştı.

Bir şey daha sormak istiyorum. #include<stdio. h> #include<string. h> main Bu kod da toplam karakter sayısını doğru olarak hesaplıyor. Ancak ikinci printf de istediğim gibi 3. ve 1. karakterleri yazdıramadım. Hata nerede? zigor tarafından 18/Nis/14 19:34 tarihinde düzenlenmiştir

... Aslında senin sylediğin şekilde karakterlerde yoktur C'de. char denilen veri tipi tek byte sayı tutmak için vardır... Aslında char'ın boyutunun bir bayt olduğu da standartta tanımlanmamış. char, standartta bir karakteri tutabilen herhangi bir boyutta olabilir. Aynı şekilde int de 16 ya da 32 bit gibi bir tanıma sahip değil, en az char ya da chardan daha büyük bir tip. Long için de aynı şey geçerli, int'e eşit ya da intten büyük. Olaylara karışmayın!

C'de karakter katarları diye bir kavram yoktur. Karakter katarlarını kullanmak için karakter dizileri kullanılır. strlen işlevi bir karakter katarının uzunluğunu bulur. sozcuk değişkeni aslında bir dizi olduğu için işleciyle elemanlarına erişilebilir. Kodun çalışan hali: http://ideone.com/ufi3Ov #include <stdio. h> #include <string. h> int main { char sozcuk = "irlandalilastirilamayanlardan"; int i = 0; int j = 0; for(; i < strlen ; ++i) { for(j = 0; j <= i; ++j) printf ; } // your code goes here return 0; } YeniHarman tarafından 18/Nis/14 18:59 tarihinde düzenlenmiştir Olaylara karışmayın!

Müridler kitaptan algoritma çalışıyorum, rnekleri VB dilinde vermiş. Ancak VB bilmiyorum, yeni yeni C ğreniyorum. C de bu programı yazmak istiyorum. Kullanıcıdan alınan kelimeyi her satıra bir harf gelecek şekilde ve her satırda sırasıyla 1-2-3-4-... harf olacak şekilde bir program yazmak istiyorum. Mesela ALI kelimesini girdik diyelim. A LL III Bu şekilde yazmasını istiyorum. VB kodu ; a="BULENT" For i= 1 To Len harf = Mid(a, i, 1) For j = 1 To i Print harf; Next j Print Next i Odev istemenin yasak olduğunu biliyorum, dev değildir. Henüz çalışmadığım bir konu ama algoritma kitabında rnekler karışık olduğundan denk geldim, aklıma takıldı. Satırlara sırasıyla 1-2-3 harf yazmayı biliyorum. Ancak kelimeyi harflere ayırmaya dair hiçbir şey bilmiyorum. İnternette denk geldiklerim de farklı dillerde olduğundan, yine anlamadım.

ZoRKaYa bunu yazdı... Aslında senin sylediğin şekilde karakterler de yoktur C'de. char denilen veri tipi tek byte sayı tutmak için vardır... Aslında char'ın boyutunun bir bayt olduğu da standartta tanımlanmamış. char, standartta bir karakteri tutabilen herhangi bir boyutta olabilir. Aynı şekilde int de 16 ya da 32 bit gibi bir tanıma sahip değil, en az char ya da chardan daha büyük bir tip. Long için de aynı şey geçerli, int'e eşit ya da intten büyük. Ee şimdi aslında array denilen şeyin C dilinde first class obje olmadığından ve aslında 3 ile a ün aynı şey olduğundan ve ikisinin de 4. elemanı verdiğinden bahsetmek de vardı azizim ama arkadaş yeni başlıyormuş kafası karışmasın. Boşverelim o yüzden. echo "imzanız zel karakter içermemelidir";

Bir şey daha sormak istiyorum. #include<stdio. h> #include<string. h> main Bu kod da toplam karakter sayısını doğru olarak hesaplıyor. Ancak ikinci printf de istediğim gibi 3. ve 1. karakterleri yazdıramadım. Hata nerede? Diziler 0dan başlıyor hocam 3. karakteri istiyorsan ktr diye çağırman gerekiyor.

#include <stdio. h>#include <string. h>int main { char a ; int i=0, j; scanf ; while(a !=0){ for(j=0; j<=i;j++) printf ; i++; } } syntax hatalı olabilir ama byle yani http://pastebin.com/iJd1pEjq edit: grüntü ZoRKaYa tarafından 18/Nis/14 18:50 tarihinde düzenlenmiştir echo "imzanız zel karakter içermemelidir";