C Programlama dili. Auto Default extern long short union _Bool. Break Do float register signed unsigned _complex

Ebat: px
Şu sayfadan göstermeyi başlat:

Download "C Programlama dili. Auto Default extern long short union _Bool. Break Do float register signed unsigned _complex"

Transkript

1 C Programlama dili C dili, Unix ve Linux gibi işletim sistemlerinin temel dilidir. Bu nedenle program tasarımı, yazılım geliştirme ve sistem konfigürasyonunda vazgeçilmez bir standart oluşturmuştur. C dili bir alt düzel programlama dili gibi doğrudan bellek adresleriyle çalışabilmesinin yanında yeni veri yapıları tanımlayabilme bit seviyesinde çalışabilme, işletim sistemini doğal haliyle kullanabilme gibi özelliklere sahiptir. Bunun yanıonda C dili bir üst düzey programlama dili gibi de kullanılabilmekte ve bir çok hazır fonksiyonları da kütüphanesinde barındırmaktadır. C dili donanımdan bağımsız (machine independent) ve taşınabilir (portable) yani aynı programın farklı donanım ve farklı işletim sistemlerinde çalıştırılabilir bir dildir. C dilinin iki temek bileşeni vardır, 1. Önişlemci direktifleri (preprocessor directives) : # işareti ile başlayan her satır C standart kütüphanesinde yer alır ve program derlenmeden önce C önişlemcisi tarafından işletilir. Her önişlemci direktifinin farklı bir görevi vardır. En çok kullanılanları #include (pogram içerisinde kullanılan fonksiyonlar için gerekli kodları programa dahil eder, örneğin ekrana çıktı yazdırmak için kullanılan printf fonksiyonunun çalışabilmesi için <stdio.h> isimli dosya gereklidir, bu dosyayı programa dahil etmek için program kodunun en başına #include <stdio.h> komutu yazılmalıdır. C dilinde.h uzantılı dosyalara başlık dosyası (header file) adı verilir) ve #define direktifleridir. stdio.h başlık dosyası standart giriş çıkış işlemleri için gerekli kodları içerir. 2. Ana fonksiyon (main function) : Bütün C programlarında bulunması gereken ana fonksiyon gövdesidir ve bunlara kod blokları denir. Kod bloklarında değişkenler ve işlem kodları yer alır. C dili yazım kuralları 1. /* */ içine açıklamalar (comment) yazılır ve bu satırlar bir birden çok olabilir ve program sırasında çalıştırılmazlar. 2. Her bir komut satırı ; ile sonlandırılır. 3. Tüm anahtar kelime ve komutlar küçük harfle yazılır (#define hariç). 4. C dili büyül-küçük harf duyarlıdır (TOP ile top farklı algılanır). 5. C dili program bloklarından oluşur. Bloklar, yani çalıştırılacak ifadeler (kodlar) parantezi içine yazılır. C dili anahtar sözcükleri (keywords) Program yazılında rezerve olarak saklanmış olan kelimelerdir. Bunlar program içinde değişken ve fonksiyon adı olarak kullanılamazlar, bunlara C deyimleri de denilebilir, her birinin program çalışırken özgün anlamı ve işlevi vardır. Auto Default extern long short union _Bool Break Do float register signed unsigned _complex Case Double for sizeof struct void _imaginary Char goto int static stigned volatile Const Else if restrict switch while Continue Enum inline return typedef

2 Fonksiyonlar, belirli bir için hazırlanan bağımsız parçalardır veya algoritmalardır. Her fonksiyonun bir adı vardır, fonksiyon adlarından sonra () karakterleriyle değişken adları oluşur. Bir fonksiyonun genel yapısı; fonxtür fonxadı (parametre listesi) Parametre-listesi tür- bilgisi; local değişkenlerin bilgisi; Örnek : float bol(a,b) İnt a,b ; float g; g=a/b; return g; Fonksiyonlar arası parametre aktarımı, fonksiyon tanımındaki parametre listesiyle yapılır ve aktarılacak veri türü belirtilmelidir. Fonksiyonun parametre listesinde 0 veya 1 veya daha çok değişken adı olabilir. Fonksiyonun her çağırılışında farklı sayıda parametre gönderilebilir. Main(), ana program anlamındadır, program ilk çalıştırıldığında, ilk bu program çalışır. Ancak yapı olarak diğer fonksiyonlardan bir farkı yoktur. Bir C programı sadece main() fonkiyonundan oluşabilir. Main() programın herhangi bir yerinde olabilir, ancak genellikle en başka kullanılır. return( ): Fonksiyonun çağrıldığı yere geri dönmesini sağlar. main( ) fonksiyonu içinde kullanılan return() komutu programın sonlandırılarak işletim sistemine geri dönülmesini sağlar.

3 Veriler (değişkenler, sabitler ve operatörler) Veri türü saklanan bilginin türünü (ondalık sayı, tam sayı..) belirtir. Değeri ise değişken içinde saklanan bilginin kendisidir. Veri türü, değişken içerisinde tutulan değerin tipini belirler. Veriler sabitler ve değişkenlerden oluşur. C dilinde dört temel veri tipi vardır. char: bir harf, bir rakam veya özel bir simgeyi saklamak için kullanılan veri tipidir. Char tipindeki her bir değer tek tırnak arasına yazılmalıdır. chartipinde tanımlanan bir değişkenin tuttuğu değer karakterin ASCII tablosundaki sayısal karşılığıdır. Char, 1 byte, (-2 7 ile arası) -128 ile +127 arası, tek bir karakter veya tamsayı için unsigned char ; 1 byte, (0 ile 2 8 arası) 0 ile +255 arası, tek bir karakter veya tamsayı için int: ile (Dos işletim sisteminde) arasındaki tam sayı değerlerini saklamak için kullanılır. short int, 2 byte, -32,768 ile arası, kısa tamsayı için unsigned short int, 2 byte, 0 +65,535 arası, kısa tamsayı için int, 4 byte, -2,147,483,648 ile +2,147,483,647 arası, tamsayı için unsigned int, 4 byte, 0 ile +4,294,967,295 arası, tamsayı için long int, 8 byte, -9,223,372,036,854,755,809 ile +9,223,372,036,854,755,807 arası, uzun tamsayı için unsigned long int, 8 byte, 0 ile 18,446,744,073,709,551,615 arası, uzun tamsayı için float: 4 byte, -3.4E +/-38 ile +3.4E +/-38 arası, (tek duyarlıklı) ondalıklı olarak verilen gerçel (7 basamaklı) sayıları için (tek duyarlıklı, 7 basamaklı double: 8 byte, -1.7E +/-308 ile +1.7E +/-308 arası (çift duyarlı) ondalıklı olarak verilen çok küçük ve çok büyük gerçel (15 basamaklı) sayılar için. Değişkenler : Programda kullanılacak bütün değişkenlerin kullanılmadan önce C derleyicisine bildirilmesi gerekir. Değişkenleri derleyiciye bildirme işine değişken tanımlama (variable definition) denir. Değişken tanımlamak, değişken için bir isim seçmek ve içerisinde ne tür bir veri saklanacağını söylemekle yapılır. Her değişkenin ismi, veri türü ve değeri vardır. Değişken ismi değişken saklayacak bellek hücresine verilecek isimdir. Değişkenin değeri programın çalışması boyunca değiştirilebilir. Örnek : float alan; Programda kullanılacak değişken isimleri programcı tarafından tanımlanır. Değişkenlere isim verirken aşağıdaki kurallara uyulmalıdır. C dilinin kendine özgü anahtar sözcükleri, komut veya fonksiyon adları değişken ismi olarak kullanılamaz. Değişken isimleri harf, rakam ve (_) birleşiminden oluşabilir, içerisinde, a-z ve A-Z arası İngilizce harfleri, 0-9 arası rakamlar ve özel karakter olarak sadece alt çizgi (_) karakteri kullanılabilir. Özel karakterler (+,-,! vs.) ve Türkçe karakterler kullanılmaz.

4 Değişken ismi rakam ile başlayamaz. İlk karakteri rakam olamaz C diline ait saklı (reserved) sözcükler kullanılamaz. En fazla 31 karakter olabilir. Küçük - büyük harf ayırımı vardır. Değişken bildirimi : Standart C de üç farklı yerde değişken tanımlanabilir. (1.)fonksiyonların üstünde (2.) blokların içerisinde ilk sırada (3.) fonksiyonlarda parametre olarak. İlk değer ataması yapılmayan değişkenlerin değerleri (eğer main fonksiyonunun üstünde tanımlanmışsa) sayısal olanlar 0 diğerleri boş olarak belirlenir, eğer main içinde tanımlanmışsa bellekte rastgele değerler olarak belirlenir. Değişenlerin bildirim çeşitler aşağıdaki gibidir. genel (global) bildirim: tüm (birden çok) fonksiyonlarda kullanılabilir değişken ise int m,n ; main() yerel (local) bildirim: tek bir fonksiyonda kullanılacak değişken ise, (ancak bu fonksiyon dışında değişken program tarafından tanınmaz). Değişken bildirildiği fonksiyonda çalıştığı anda bellekteki yerini alır. Örnek : main() int m,n ; dışsal (extern) bildirim : başka bir fonksiyonda tanımlanmış ancak bir diğer fonsiyonda tanımlamaksızın kullanılacak ise Örnek : extern int x; extern char y; static : bellekte tüm program süresince eski değeri korunması istenen değişken Örnek : int fibonacci() Static int f1=1, f2=1 ; İnt g ; g=f1+f2 ; f1=f2 f2=g ;

5 return g ; register : tamsayı ve karekter değişken kullanımında. Bellekte kullanılmaz, direk işlemci üzerinde saklanır ve çok daha hızlı işler. Genellikle döngü indisi gibi yerlerde kullanılır. 16 bitlik işlemcide en çok 2 tane register (saklayıcı) değişken kullanılabilir, fazlası önemsenmez. Örnek : fonk(a,b) register int a ; register char k ; register int m,n ; Register değişlenlerin önüne & işareti kullanılmamalıdır. & işareti sadece bellek değişkenlerin önünde kullanılabilir. volatile : C compiler sırasında bellek ve hız optimizasyonu yapabilir. Bellek optimizasyonu işlemine sokulmaması istenen değişken önüne volatile sözcüğü konur. void : void anlam olarak boş demektir. Daha genel anlamda tipsiz demektir. Bir değişkenin tipi (int, char, float vb.) yoksa (veya belli değilse) o zaman void olur. Örneğin : aşağıdaki f fonksiyonu toplamı döndürür: int f(int a,int b) return a+b; bu fonksiyon toplama işlemi yaptıktan sonra çağrıldığı yere toplamı döndürür. Şayet bunun yerine toplamı yazdıran bir fonksiyon yazacak olsaydık: void f(int a, int b) printf("%d",a+b); bu fonksiyon herhangi bir değer döndürmüyor. Bu durumda fonkisyonun dönüş değeri yoktur. O halde dönüş değerinin tipi void olur diyebiliriz. Sabitler (CONST) CONST (sabit), değeri programın çalışması boyunca değiştirilemez. Tip belirtilmez ise tamsayı kabul edilir. Örnek : const float PI=3.14;

6 Matematiksel, mantıksal ve atama işlemleri için kullanılan operatörler ile işleme giren değerlere operand adı verilir. Her operatör birden çok operand ile işleme girebilir. Tek operand alanlara unary operatör denir. Operatörler üç grupta incelenir; Matematiksel opertaörler işlem önceliği * çarpma 1 % mod aritmetiğinde bölme 2 / bölme artırma (unary increment) eksiltme (unary decrement) 3 + toplama 3 - Çıkartma 3 -- bir azaltma ++ bir arttırma Örnekler : 9. / 2 ---> 4.5 (nokta sayının gerçel yorumlanmasını sağlar) 9 / 2 ---> 4 (sayılar int kabul edilip sonuçta int tipine dönüştürülür) 7 % 2 ---> 1 2 % 7 ---> 2 2 / 7 ---> 0 k = 100 % 99 ; /* işleminin sonucu 1 */ m = j%2 ; /* işleminin sonucu m= 0 veya 1 olabilir, sayı tek-çift sınaması için */ z = rand()%100 ; /* işleminin sonucu rand() arasında rasgele sayı üretir z nini değeri ise 0-99 arasında bir sayı olabilir */ Unary operatörlerin farklı kullanımı A++ ++A A-- --A önce A değerini kullan sonra değerini 1 arttır (postincrement) önce A değerini 1 arttır sonra artmış değeri kullan (preincrement) önce A değerini kullan sonra değerini 1 azalt (postdecrement) önce A değerini 1 eksilt sonra eksiltilmiş değeri kullan (predecrement) Bir arttırma operatör örnekleri : Main() int m=5, n=5 ; /* başlangıç değeri atama */ m++ ; /* m=m+1 işlemi yerine */ ++n ; /* n=n+1 işlemi yerine */

7 printf( %d,%d,m,n) ; /* 6,6 çıktısı verir */ main() int m=5, n=5, k, l ; k=++m ; /* m=m+1 ve k=m=6 anlamında */ l=n++ ; /* l=n=5 ve n=n+1 anlamında */ printf( %d,%d,k,l) ; / 6, 5 çıktısı verir */ Karşılaştırma (ilişki/relational) operatörleri : Sonucu Doğru veya Yanlış olan ifadelerdir. Büyük mü? < küçük mü? >= büyük veya eşit mi? <= küçük veya eşit mi? == eşit mi? (karşılaştırma)!= eşit değil mi? Mantıksal (logical) operatörler : İki mantıksal ifade arasındaki ilişki üzerindeki ilişkide kullanılır. && ve (and) veya (or)! değil (not invert) X Y X&&Y X Y!X İfadelerde operatörlerin işlenme sırası ( operatör öncelikleri) ( ) ilk önce parantez içi ifadeler hesaplanır. İçiçe parantezler var ise öncelik en içteki parantezdedir

8 ! *, / % +, - <, <=, >=, > ==,!= &&, = en düşük (son yürütülür) Öncelik sırası aynı olan işlemlerde hesaplama soldan sağa doğru yapılır.

9 C programı hazırlama Bir C programı, en az bir veya daha çok fonksiyonun bir araya gelmesi ile oluşturulur. Bir C Programının Genel Yapısı /* program hakkında varsa açıklamalar */ #include <stdio.h> #define e=2.718 İnt main() void prog.a eklenecek kütüphane dosyaları (ön işlemci deyimler # ile başlar) varsa sabit tanımlamaları (ön işlemciler prg derlenmeden önce işleme konur) ana fonx tanımı (gerekli ise int ve void vb ekleri olabilir) sabitler ; sabitlerin tanımlama bölümü değişkenler; değişkenleri tanımlama bölümü deyimler; Program gövdesi return() ; #include Belirtilen dosyanın kopyası ön işlemci komutunun yerine konur, Dosyayı standartkütüphanesinde arar ve standart kütüphanesindeki dosyalar için kullanılır #include<dosya_adı> Örneğin, bu başlık dosyasından başka ileri matematik işlemlerde kullanılan #include <math.h> rastgele sayı üretmek, sıralama yapmak vb. işlemlerde kullanılan #define #include <stdlib.h> Bu ön işlemci komutu sembolik sabit ve makroları oluşturmak için kullanılır Sembolik sabitlerprogram derlendiği zaman, sembolik sabitlerin geçtiği kısımlar tanımlanan metin ile değiştirilir (tip tanımlamaya gerek kalmaz) #define tanımlanan_değişken yer alacak-metin örnek: #define PI #define PI = Tanımlananın sağındaki herşey yer-alacak-metin olarak algılanır, PI yerine"= alır #undef Tanımlanan sembolik sabit veya makro yu tanımsız hale getirir. Eğer sembolik sabit veya makro tanımsız yapılmış ise daha sonra yeniden tanımlanabilirler.

10 Atama Deyimi (Assignment) Bir değişkene bir değer(sabit, değişken, ifade) atamak. DeğişkenAdı = değer; x = 18 ; Örnek 2.7.2: Vize notunun %40 ve final notunun %60 toplamı başarı notu hesaplama notlarınından geçme notu main() float vize, final, ort; vize = 50; final = 60; ort = vize * final * 0.6; bitişik atama operatörü Atama operatörleri : = atama += toplayarak atama -= çıkartarak atama *= çarparak atama /= bölerek (MOD alarak kalanı) atama %= bölüp kalıntı atama Örnek : x *=y+1 ; ile x=x*(y+1) ; deyimleri aynıdır örnek : ortalama /= 2 ; kare *= kare ; Dizileri fonksiyona aktarma : fonxismi(değişken_tipi değişken_adı[ ], ). aktarılacak dizinin sadece adını yazmak yeterli Örnek : fonkismi(float X[ ], ) fonkismi(int X[ ] [2], ) fonkismi(int X[ ] [4] [6], ) 1.boyut 2.boyut 3.boyut Tek boyutlu ise eleman sayısı yazılmayabilir, çok boyutlu ise 2. Ve daha sonraki boyutlar belirlenmeli.

11 Temel Giriş Çıkış deyimleri C dilinde giriş ve çıkış işlemleri için oluşturulmuş kütüphane fonksiyonları vardır, bunlar; getchar() ve putchar() genel olarak karekter okutmak ve yazdırmak için kullanılır. Ancak fonksiyon türleri tamsayıdır (int). bildirimi : İnt getchar(void) : İnt putchar(int kr) ; gets() ve puts() Genellikle text okutmak ve yazdırmak için kullanılır bildirimi : char *gets(char *tampon) ; int puts(const char *tampon) ; Örnek : #include <stdio.h> Main() char adi[25] ; puts( adınız : ) ; gets(adi) ; puts(adi) ; /*max 25 harfli bir text değişken bildirimi*/ /*adınız text olarak ekrana yazdırılmış*/ /*klavyeden ad okunup adi değişkenine alınımış*/ /*okunan ad ekrana yazdırılmış*/ printf() ve scanf() printf() fonksiyonu : formatlı ekrana yazdırma fonksiyonudur. İstenenleri standart çıkış birimine (stdout) göndermek ve yazdırmak için kullanılır. Bildirimi: İnt printf(const char *format, argümanlar) ; printf( text= %d\n,değişken_adı);

12 Printf (%format Stringi, Değer Listesi); Çıkış Format Stringi: Açıklama kısımları Çıkış formatının belirtildiği kısımlar: % Escape düzeninin verildiği kısımlar: \ Sayısal Değerler için Çıkış formatı Tip karakterleri Çıkış biçimi Karakterler için Çıkış formatı Tip karakterleri Çıkış biçimi d İşaretli tamsayı (decimal integer) c Tek karakter i İşaretli tamsayı s string u İşaretsiz tamsayı (Unsigned decimal) % % karakteri f e ld lu le,lf c s Gerçel sayı (float double noktalı) Üssel gerçel sayı (float/double bilimsel gösterim) Long tamsayı (integer) long integer unsigned long Double gerçel sayı Char (tek karekter) string ESCAPE Düzeni Karakterleri \n Kursoru bir alt satırın başına getirir (yeni satır-new line) \r Kursoru satırın başına getirir (carriage return) \b Kursoru bir kolon geri çeker \a Zil sesi (alert) verir \t Yatay tab, Bir sonraki sekme durağına (tabstop) geç. \v Printer için yeni satır başı \f Printer için yeni sayfa başı \0 NULL karakteri \\ Sadece \ karakteri, Ters bölü (blackslash) işaretini yazdırmak \ Sadece tırnak işareti/karakteri yazdırman için

13 Örnekler: Printf(.. = %d.. = %f, a,b) ; i = 5 ; printf("%d",i) ; 5 printf("'i=%d",i) ; i=5 printf("i=") ; printf("i=\n") ; i= printf("%d",i) ; 5 alt satıra geçer printf('i=%d\n",i) ; i=5 alt satıra geçer printf("%d - %d",i, 5*i); 5-25 Formatlı çıktı (çıktı biçimlendirme) Çıktının boyutu çevirim karakterinin önüne yazılacak bir işaretsiz tamsayı ile kontrol edilebilir. Tamsayı gerekli en az boyutu belirtir. Eğer bilginin uzunluğu belirtilenden kısa ise önüne belirtilen boyutu tamamlayacak kadar boşluk bırakılır. Eğer bilginin uzunluğu belirtilenden uzun ise bilginin hepsi gösterilecek kadar yer ayrılır. Örnek : #include<stdio.h> intmain() inti=12345; floatx= ; printf("%3d %5d %8d\n\n", i, i, i) ; printf("%f %10f %13f\n\n",x,x,x) ; return 0 ; Programın ekran çıktısı :

14 Reel sayıların ondalık kısmının uzunluğu da kontrol edilebilir. printf("%f %.1f %.3f\n\n",x,x,x) ; Çevirim karakterinin önüne yazılan tamsayının önüne (-) konulması boşluğun önde değil bilgiden sonra olacağını belirtir (yani sola dayalı yaz) printf("%3d %-5d %-8d\n\n", i, i, i) ; % karakteri ile dönüşüm karakteri arasına aşağıdaki karakterler de kullanılabilir. Printf( %m.n, değişken) ; m : yazılacak değer için ayırılan alan n : değerin kaç karekteri yazılacağı Örnek : ekran çıktısı s = "ABCDEF" printf("%10s ",s); printf("%10.3s ",s);.... A B C D E F A B C x = ; printf("%7.2f",x) ; # x = ; printf("%6.3f",x) ; printf("%6.1f",x) ; ## 85.5 Örnek : printf(çıktı metin formatı, değişken listesi) printf( Yaşınız: %d dir\n, yas); printf(çıktı metin formatı) printf( Merhaba Dünya ); printf çıktı formatındaki % karakterinin dışındaki tüm karakterleri ekrana yazar. % karakterini gördüğünde bunun sağındaki karakteri yazdırılacak değişkenin format karakteri olarak ele alır. printfçıktı formatındaki \karakterine escape karakteri denir. Bu karakterden sonra gelen karakter ise escape serisini ifade eder. Örneğin \n ifadesi, çıktı ekranında yeni bir satıra geçilmesi gerektiğini ifade eder.

15 scanf() fonksiyonu : standart giriş birimi olarak atanmış (stdin) klavyeden veri okutma fonksiyonudur. Değişkenlerin içerisine klavyeden değer atamak için kullanılır. scanffonksiyonunda dışarıdan değer girilecek bütün değişkenlerin başına & işareti konur. Bildirimi : İnt scanf(const char *format, değişken listesi) ; Scanf (Format Stringi, Adres stringi) scanf ( %d, &a); scanf( %d %d, &x,&y); scanf( %s %s, ad, soyad); giriş format karekterleri karakter d D u U E,e F Lf C S İ Lx Ld O x X Çıkış biçimi İşaretli tamsayı Long işaretli tamsayı (onlu sistem) İşaretsiz tamsayı Long işaretsiz tamsayı double ve float Üssel gerçel sayı Float Gerçel sayı Double/long float gerçel sayı Karakter String (metin) Tamsayılariçin (onluk, sekizlik ve onaltılık sistemde) Uzun tamsayıları onaltılık (hex) sistemde Uzun tamsayılariçin (onluk sistemde) Tamsayılariçin (sekizlik sistemde) Tamsayılariçin (onaltılık (hex) sistemde) Tamsayılariçin (onaltılık (hex) sistemde büyük harfle) C de kullanılan standart giriş-çıkış fonksiyonları, printf() ve scanf() dir. Bu fonksiyonlar C standart giriş çıkış kütüphanesinde stdio.h bulunurlar. Giriş-çıkış fonksiyonlarını program içerisinde kullanabilmek için stdio.hbaşlık dosyasının programa dahil edilmesi gerekir. #include<stdio.h>

16 Program Örneği #include <stdio.h> Kullanılan işlevler ile ilgili başlık dosyası main() int i ; scanf("%d",&i); Değişken tanımı Programın gövdesi i:=i*i; printf("%d",i); Örnekler : scanf("%d", &a); Klavyeden tamsayı okur. Girilen değer a değişkenine aktarılır. (& her tür sayı için) scanf("%d %d",&a,&b) Klavyeden girilen ilk değer a değişkenine, ikinci değer b değişkenine aktarılır. scanf("%f %d", &m, &a); Klavyeden ilki gerçel, ikincisi tamsayı olmak üzere iki değer okur. scanf(%d,%d,&a,%b); a ve b için giriş şekli 34,35 svanf(%d %d,&a,&b); a ve b için giriş şekli (sayı girilirken hangi karak. ile ayrılacak) printf( a katsayısını giriniz : ); scanf( %f, &a); printf( b katsayısını giriniz : ); scanf( %f, &b); printf( c katsayısını giriniz : ); scanf( %f, &c); Örnek : Vize ve final notlarınından ortalamayı hesaplayan programda değerlerin klavyeden okunmuş hali. main() float vize, final, ort; printf( Vize notunu giriniz ); scanf( %f, &vize); printf( Final notunu giriniz ); scanf( %f, &final); ort = vize * final * 0.6; printf( Ortalaması = &f\n, ort);

17 Örnek : Yarıçapı belli dairenin alanını hesaplayan programı yazınız. (ilk yazılan program) #include <stdio.h> main() const float PI=3.14; float r, alan; r = 7; alan := PI*r*r; printf(('alan = %f', alan); Örnek : En fazla dört basamak olabilen sayının basamak değerlerini yazdır. % ve / işlemlerinin kullanımı. #include <stdio.h> main() int i,y; y=1985; i= y / 1000; printf("%d",i); y= y-i*1000; i= y / 100; printf(" %d",i); y = y-i*100; i= y / 10; printf(" %d",i); y = y-i*10; printf(" %d\n",y); i = 1985; printf("%d ",i / 1000); printf("%d ",(i / 100) % 10); printf("%d ",(i / 10) % 10); printf("%d\n",i % 10);

18 Örnek : ax 2 +bx+c=0 tipi bir denklemin köklerini veren programı yazınız. #include <stdio.h> /* printf işlevi için */ #include <math.h> /* sqrt işlevi için */ main() float a, b, c; float x1, x2; float d; printf( Katsayıları sırasıyla giriniz (a b c) : ); scanf("%f %f %f ", &a, &b, &c); d = b * b - 4 * a * c; x1 = (-b + sqrt(d)) / (2 * a); x2 = (-b - sqrt(d)) / (2 * a); printf("kökler = %f, %f",x1, x2);

19 Karar (Koşullu) Deyimleri if-then-else Deyimi if (<koşul>) doğru_işlem_blok; else yanlış_işlem_blok; else kısmı seçimlidir, gerekmiyorsa kullanılmayabilir. Karşılaştırma (?) operatörü : <koşul>? deyim1 : deyim2 ; Örnek : a=(b>c)? b : c ; (x<100)? m++ : m-- ; Örnek : sayınin çift veya tek olduğunu sınayan program. Açıklama : tek bir değişken (k) yalnız başına yazılırsa 0 ile karşılaştırma yapılır, main() int sayi, k ; scanf( %d, &sayi) ; k=sayi%2 if (k) /* k==0 işlemi ile aynı */ printf( sayı tek ); else /* k!=0 işlemi ile aynı */ printf( sayi çift ); Örnek : Girilen sayının tek/çift olduğunu yazan program #include <stdio.h> main() int i; scanf("%d", &i); if ( i % 2 == 1) printf("tek"); else printf("çift");

20 Örnek : Girilen üç sayıdan en küçüğünün bulunması (İçiçe IF kullanımı). scanf("%d%d%d", &s1, &s2, &s3); if ((s1<s2) && (s1<s3)) ek =s1; else if (s2<s3) ek =s2; else ek = s3; printf('en küçük olanı = %f", ek); II. yol : scanf("%d%d%d", &s1, &s2, &s3); ek = s1; if (ek>s2) ek =s2; if (ek>s3) ek =s3; printf('en küçük olanı = %f", ek); Örnek : Girilen tarihteki günün adını veren programı yazınız. #include <studio.h> main ( ) int gun, ay, yıl ; long gt ; printf( Tarihi gir ) ; scanf ( %d %d %d,&gun,&ay,&yil) /* oncekı yıllardakı gun sayısını hesapla */ gt= yil*365 + yil/4; /* bu yildaki aylardaki gunleri ekle */ if (ay==2)

21 gt = gt + 28 ; else if (ay ==3) gt = gt ; else if (ay ==4) gt = gt ; else if (ay ==5) gt = gt ; else if (ay ==6) gt = gt ; else if (ay ==7) gt = gt ; else if (ay ==8) gt = gt ; else if (ay ==9) gt = gt ; else if (ay ==10) gt = gt ; else if (ay ==11) gt = gt ; else if (ay ==12) gt = gt ; /*Bu ayıın günlerini ekle */ gt = gt+ gun; if(yıl%4==0 && ay>2), gt =gt+1; gt=gt %7, if(gt==1) printf( Pazar ); else if(gt==2) printf( Pazartesi ); else if(gt==3)

22 printf( Salı ); else if(gt==4) printf( Carsamba ); else if(gt==5) printf( Persembe ); else if(gt==6) printf( Cuma ); else if(gt==7) printf( Cumartesi ); switch Deyimi switch(<seçici>) case seçenek1 : Deyim;break; case seçenek2 : Deyim;break;... default : Deyim; Seçicinin aldığı değere eşit seçeneğin olup olmadığına bakar. Var ise o noktadan sonraki deyimler yürütülür. switch deyiminin sonuna gelindiğinde veya break deyimi ile karşılaşıldığında yürütme işlemi durur ve programın akışı switch deyimini izleyen deyim ile devam eder.. default kısmı seçimliktir. Seçeneklerin hiçbiri uygun değil ise yürütülür. Örnek : aritmetik sembole göre 2 sayı arasında işlem yapam program #include <stdio.h> main() char islem; int s1, s2, s3; printf("önce işlemi sonra sayıları girin ");

23 scanf("%c %d %d",&islem, &s1, &s2); switch (islem) case '+' : s3 = s1 + s2; break; case '-' : s3 = s1 - s2; break; case '*' : s3 = s1 * s2; break; case '/' : s3 = s1 / s2; break; default : printf ("Hatalı işlem"); printf("\nsonuç = %d",s3); Örnek : Ay sıra sayısını girip, mevsimleri yazdıran program. scanf("%d", &ay); switch (ay) case 3: case 4: case 5: printf("ilkbahar"); break; case 6: case 7: case 8: printf("yaz"); break; case 9: case 10: case 11: printf("sonbahar"); break; case 12: case 1: case 2: printf("kış"); break; Örnek : Sınav notunu harfe dönüştüren programı yazınız. ( >=90 :AA, 85-89:BA, 80-84:BB, 75-79:CB, 70-74:CC, 60-69:D, <60 :F ) Örnek : Belirtilen tarihin hangi güne denk geldiğini bulan programı yazınız. else if yapısı yerine switch kullanarak

24 goto, break, continue deyimleri goto <label> : goto deyimi, program akışını normal akışı dışında başka bir yere göndermek için kullanılır ve label (etiket) ile beraber kullanılır. Program label : olarak, programın herhangi bir istenen belirtilen yere doğrudan sapar ve oradan normal akışına devam eder. break (kırılma) : genellikle switch döngüleri içerisinde kullanılır. Bir döngü içerisinden döngü tamamlanmadan çıkmak istendiğinde kullanılır. Break olan yerde döngü koşuluna bakmaksızın sonlanır ve döngüden bir sonraki satıra gider. Switch yapısında break ten sonraki switch ve case satırları atlanır program switch yapısından bir sonraki satıra sapar. continue : Bir döngü içinde continue deyimi bulunan yerden sonraki kodlar ve deyimler atlanır ve döngünün o anki dönüşü bitti varsayılarak döngü başına gider. Örnek : 0 yazıldığında biten, sadece pozitif sayıların karesini alan program. Main() int x, kare ; do puts( bir sayı gir : ); scanf( %d,&x); if ( x<0 ) continue ; kare=x*x ; printf( karesi=%d\n, kare); while ( x!=0) ; puts( işlem bitti );

25 Döngü Deyimleri C dilinde while, for ve do-while deyimleri döngü işlemini sağlar. For ve while döngü başında, do-while koşulu döngü sonunda sınar. For Deyimi For döngüsü koşulu döngü işlemleri başında sınar, dolayısı ile döngü içi deyimler hiç çalışmayabilir. for (sayaç başlangıcı ; döngü koşulu ; sayaç artış/azalışı ) döngü içi deyim ;. Döngü koşulu doğru ( veya farklı 0) olduğu sürece ifade yürütülür, bu aynı zamanda döngü bitiş koşuludur. Döngünün ilk adımından önce sayaç başlangıç ifadesi yürütülür ( başlangıç adımı). Döngünün her adımında ise sayaç arttış/azalış ifadesi yürütülür. Örnek : for (i = 1; i < 5; i++) printf("%d ",i); for ( ) parantez içi ifadeler seçimliktir. Döngü koşulu belirtilmez ise herzaman doğru olduğu ( == 1 ) kabul edilir. Yani sonsuz döngü oluşur. for (i = 1; ; i++) printf("%d ",i); Örnek : 1 ile 100 arasındaki tek sayıların karesini hesaplayıp ekrana yazdıran program. Main() İnt k, kare ; for ( k=1 ; k<100 ; k+=2 ) kare=k*k ; printf( %d karesi = %d \ n, k, kare) ;

26 Örnek : 1'den 100'e kadar olan sayıların toplamı. j =0; for (i=1; i<=100; i=i+1) j =j+i; printf("toplam %d",j); Örnek : Girilen sayının faktöriyelini bul. main() int k, N, fact =1; puts( faktöryei alınacak sayıyı gir : ); scanf( %d,&n) ; for (j=1; j<=n; j++) fact =fact*j; (veya fact*=k ; ) printf("faktöriyel =%d",fact); Örnek : Çarpım tablosu. (içi içe döngüler) main() int i,j; for (i=1; i<=10; i++) for (j =1; j<=10; j++) printf("%d,%d,%d\n",i,j,i*j) ;

27 while Deyimi while <mantıksal ifade> dögü içi deyimleri ;. Mantıksal ifade doğru olduğu sürece Deyim yürütülür. Eğer yanlış ise kontrol bir sonraki deyime geçer. While deyimi koşulu sonda sınar, bu nedenle while deyiminin döngü içindeki deyimlerinin hiç çalışmama olasılığı vardır. Örnek : 1'den 100'e kadar olan sayıların toplamı. main() int i, j; i =1; j = 0; while (i<101) j =j+i; i =i+1 printf("toplam = %d",j); Örnek : Girilen sayının faktoriyelini hesaplayan programı yazınız. main() int n; long f; printf ( sayıyı giriniz ); scanf( %d, &n); f = 1; while (n > 1) f = f * n; n = n - 1; printf( Sonuç = &d\n, f);

28 Örnek : Klavyeden girilen sayıları oku. Sayıların toplamı 21'den büyük veya eşit olduğu zaman dur. main() int i, j = 0; while (j<21) scanf("%d",&i); j =j+i; printf("toplam = %d",j); Örnek : Sınavın ortalamasını hesaplayan programı yazınız. 1. Durum : sınava giren öğrenci sayısı belli main() int i, ogr_say, not_top, not; float ort; not_top = 0; i = 0; printf( Öğrenci sayısını giriniz ); scanf( %d, &ogr_say); while (i < ogr_say) printf Sıradaki öğrencinin notu = ); scanf( %d, &not); not_top = not_top + not; i = i + 1; ort = float (not_top) / ogr_say; printf( Ortalama = &f\n, ort); 2. Durum : sınava giren öğrenci sayısı belli değil Bu durumda girişin bittiğini gösterir bir bilgiye (işarete) ihtiyaç vardır. Sınav notu için 0 dan küçük bir değer girildiğinde girme işleminin sona erdiğinin varsayalım. ogr_say = 0; printf Sıradaki öğrencinin notu = ); scanf( %d, &not); while (not >= 0)

29 not_top = not_top + not; ogr_say = ogr_say + 1; printf Sıradaki öğrencinin notu = ); scanf( %d, &not); do-while Deyimi Bir koşul doğru olana kadar döngü yürütülür. do-while deyimi koşulu döngü deyimleri sonunda sınar, bu nedenle döngü yapıları en az bir kez çalışır. do döngü içi deyim ;. while (<mantıksal ifade>) ; Mantıksal ifade doğru olduğu sürece döngü tekrar edilir. Yanlış olduğunda while sözcüğünden sonraki deyim yürütülür. 5 sayısı girilene kadar oku do scanf("%d",&i); while (i!=5); i =1; do printf("%d",i*i); i =i+1; while (i<=10); Örnek : Sadece +, - kullanarak * işlemini gerçekleştirme. main() int a, b; int c; scanf("%d%d", &a, &b);

30 c = 0; do c = c + a; b = b - 1; while (b>0); printf("%d\n", c); Karşılaştırma while : Koşul başlangıçta test ediliyor. Döngü sıfır veya daha fazla yürütülüyor. do-while : Koşul sonda test ediliyor. Döngüye en az bir defa kesin giriliyor. Örnek : arasında tutulan sayının tahmini. main() int tahmin; /* tahminimiz */ int min; /* Tahminin alt siniri */ int max; /* Tahminin ust siniri */ char cevap; /* Kullanicinin cevabi */ min = 0; max = 100; do tahmin = (max - min) / 2 + min; printf("tahminim %d\n",tahmin); printf("buyuk / Kucuk / Esit "); scanf("%c",&cevap); if (cevap == 'B') max = tahmin - 1; else if (cevap == 'K') min = tahmin + 1; while (cevap!= 'E');

31 Fonksiyonlar (İşlevler) Problem çözmenin ilkelerinden biri problemi mümkün olduğu kadar çok parçaya bölmek idi. Daha sonra bu parçalar bağımsız olarak düşünülüp çözümleri elde edilebilir. C'de bu bölme işlemi fonksiyon kullanarak yapılır. Belli bir işi gerçekleştiren program deyimlerinin karmaşık programları düzenlemek ve basitleştirmek için programın bir birimi olarak gruplandırılması. (fonksiyon kullanmanın temel nedenleri : divide and conquer, software reusability ) Örnek : Bir tamsayının faktöriyelini hesaplayan fonksiyon main() int i; prinf( Sayıyı giriniz ); scanf( %d, &i); printf( %d\n, fakt(i)); long fakt ( int n) int j; long f = 1; for ( j = 2; j < =n; j = j + 1), f = f * j; return f; Örnek : Bir tamsayının kübünü veren fonksiyon #include <stdio.h> main() int sayi; int kub(int); /* fonksiyonun prototipi */ printf("sayıyı gir "); scanf("%d", &sayi); printf("kübü = %d\n", kub(sayi)); int kub(int i) return i*i*i;

32 Fonksiyonun tanımlanma biçimi dönüş_tipi fonksiyon_adı(parametreler) yerel tanımlamalar deyimler dönüş_tipi: Eğer fonksiyon bir değer geri gönderecek ise değerin tipini belirtir. Belirtilmez ise Int kabul edilir. Eğer fonksiyon değer göndermeyecek ise dönüş_tipi yerine void yazılır. fonksiyon_adı: İşlev çağırılırken kullanılacak ad (belirleyici). parametreler: Fonksiyon için gerekli değerleri içerir. Her parametre değişken tanımlar gibi tanımlanır. Herbirinin arasında ',' kullanmak gerekir. yerel tanımlamalar: Bu fonksiyona özgü(değişken,sabit) tanımlamalar. Eğer fonksiyon bir değer gönderecek ise bu return deyimi ile yapılır. return değer; Fonksiyonun Prototipi Tanımlana bir fonksiyonun ana modül içerisinde prototipinin yazılması gerekir. Prototip ile fonksiyonun dönüş değeri ve aldığı parametrelerin tipleri tanımlanır. Bu bilgiye göre C derleyecisi fonksiyon çağırıldığında değerlerin uygun olduğunu sınar. int kub(int) kub fonksiyonu int bir değeri alır ve yine int bir değer üretir. Örnek : Üç sayıdan en büyüğünü veren fonksiyon. int max(int s1, int s2, int s3) if (s1>s2 && s1>s2) else return s1; if (s2>s3) else return s2; return s3;

33 Örnek : Üs alma fonksiyonunu (üs bilgisi tamsayı). Girdi : taban ve üs değeri Çıktı : tabanın üs. kuvveti float us (float a, int b) int i; float r; r = 1; for (i = 1; i<=b; i++) r = r * a; return r; Fonksiyonun program içinden çağırılışı d = us(2,3); d = us(a, 4); d = d * us(3,4); Üs alma işlemini gerçeklemenin diğer yolu a b = e blna = Exp(b * Ln(a)) Exp(x : Real) : Real ex Ln(x : Real) : Real Ln(x) float us (float a, float b) if (a>0) return= exp( b * log (a )); else return= -1;

34 Genel değişken (global): Her yerde (main ve diğer fonksiyonler) geçerlidir, değerine erişilebilir. Programın en başında, main fonksiyoninin dışında tanımlanır. Yerel değişken (local): Sadece tanımlandığı modülde geçerlidir, değerine erişilebilir. Modül içinde tanımlanır. int a; /*tüm fonksiyonlardan değerine erişilebilir, değeri değiştirilebilir. (global) */ main() int b; /* sadece main fonksiyonu içerisinden erişilebilir (local ) */... Fonksiyon1(...); int b; /* sadece fonksiyon1 fonksiyonu içerisinden erişilebilir. main fonksiyonindeki değişkendan bağımsızdır (local ) */ int c; /* sadece fonksiyon1 fonksiyonu içerisinden erişilebilir (local ) */... Örnek : Girilen harfi büyük harfe dönüştüren fonksiyon Girdi : karakter Çıktı : karakter ( girdi harf ise büyük harfe dönüştürülmüş) char buyuk(char c); if (c >= 'a' && c <= 'z') else return c - 32; return c;

35 Örnek : Girdi : iki sayı ve aralarındaki işlem Çıktı: iki sayı arasındaki işlemin sonucu int calculate(char islem, int a, ibt b, int c) int s; switch( islem ) case '+' : s = a + b ; break; case '-' : s = a - b ; break; case '*' : s = a * b ; break; case '/' : s = a / b ; break; default : s = 0; return s; Çağırma biçimi a = calculate ('+',4,8'); a = calculate ('/', 4,2) * calculate ('*', 2,2); Özyineleme (Recursive) İşlevler Kendini çağıran fonksiyonlardır. Örnek : Faktoriyel hesabı long fakt(long i) /* fakt = i! */ if (i<2) return 1; else return i*fakt(i-1);

36 Örneğin n=4 için fonksiyonun kendisini çağırdığı satır şöyledir: 4 * fakt(3), 3 * fakt(2), 2 * Fakt(1) 24 = 4 * 6 <-- 3 * 2 <-- 2 * 1 Örnek : Ortak bölenlerin en büyüğünü bulan program (Euklid yöntemi). gcd = greatest common divisor long gcd (long m, long n ) /* m ve n sayılarının ortak bölenlerinin en büyüğü*/ if (n == 0) return m; else return gcd( n, m % n); Bazı fonksiyonlar C dilinde karekök almak için bir deyim yoktur, bunu yerine getiren C diline eklenmiş olan sqrt() fonksiyonu kullanılır. Aşağıda buna benzer C derleyecilerinde kullanılan bazı fonksiyonlar verilmiştir. Bu fonksiyonlar math.h başlık dosyasında tanımlıdır. Fonksiyon x,y Sonuç abs(x) int int x'in mutlak değeri fabs(x) double double x'in mutlak değeri pow(x, y) double double xy sqrt(x) double double x'in karekökü exp(x) double double ex değeri log(x) double double ln(x) değeri log10(x) double double log10(x) değeri ceil(x) double double x ten büyük ilk tamsayı ceil(5) 5 ceil(5.2) 6 ceil(-5.2) -5 floor(x) double double x ten küçük ilk tamsayı floor(5) 5 floor(5.2) 5 floor(-5.2) -6

37 Array (Diziler) Dizi veri yapısı: Aynı tip verilerin toplanıp tek isim altında tutulmasıdır. Dizi Tanımı ve Kullanımı Tip_Adı değişken[boyut]; Örneğin : float a[100]; Bu tanımlama ile a isimli değişkeni 100 gerçel değerin saklandığı bir diziyi gösterir. Bu 100 veriye a değişkeni ile erişilir. Dizinin herhangi bir elemanına erişmek veya değiştirmek için kaçıncı eleman olduğunu gösterir indis bilgisini vermek gerekir. İlk elemanın indisi 0 dır. A[4] dizinin 5. elemanı A[0] dizinin ilk elemanı A[1] := 45; dizinin 2. elemanına 45 atanır A[7] := A[7] + A[1]; dizinin 8. elemanına kendisi ile 2. elemanın toplamı atanır Dizinin eleman değerler tanımlama sırasında da yapılabilir. int a[10] = 25, 18, 20, 0, 29, 5, 4, 8,19,13 Örnek: Dizi elemanlarına değer ata, yazdır. /* 1-10 arsındaki sayıların karesini dizi elemanlarına yükle yazdır */ main() int a[10]; int i; for (i=0; i<=9; i++) a[i] = (i+1)*(i+1); for (i=0; i<=9; i++) printf("%d. elemanın değeri = %d\n", i, a[i]);

38 Ekranda çıkacak görüntü 0. elemanın değeri = 1 1. elemanın değeri = elemanın değeri = 100 Örnek : Dizide ilk 20 Fibonacci sayıyı oluştur /* ilk 20 Fibonacci f[0] = 0, f[1] = 1, f[i+1] = f[i] + h[i-1] */ #include <stdio.h> main() int fib[20]; int i; fib[0] = 0; fib[1] = 1; for (i=2; i<=19; i++) fib[i] = fib[i-1] + fib[i-2]; clrscr(); for (i=0; i<=19; i++) printf("%d. Fibonacci sayısı = %d\n", i, fib[i]); Ekranda çıkacak görüntü 0. Fibonacci sayısı = 0 1. Fibonacci sayısı = 1 2. Fibonacci sayısı = Fibonacci sayısı = 4181

39 Notlar * Tanımlanan dizi boyutunun dışında bir eleman kullanımı durumunda C dili hata vermez (uyarmaz). * İlk indisin değerinin sıfır olması dolayısıyla dizinin n. elemanın indisi n değil n-1 dir. * Gerektiği durumlarda dizi elemanlarının ilklendirilmesi (sıfırlamak) unutulmamalı - tanımlama anında int a[10] = 13, 45..; /* fazla eleman yazılırsa hata oluşur */ int a[] = 13, 45, 56; /* boyut belirtilen değer kadar olur */ - giriş yaptırarak scanf("%d", &a[i]); - doğrudan değer atayarak a[i] = 4; Diziyi Bir fonksiyona Gönderme Fonksiyonlere gönderilen parametrelerin içeriklerinin fonksiyon içerisinde değiştirilmesi mümkün değildir. Fonksiyona değişkenin değeri gönderilir. Fonksiyon içerisindeki işlemlerden parametre etkilenmez. Dizilerde durum böyle değildir. Normal kullanımda (şu ana kadar görülen) dizi fonksiyone gönderildiğinde elemanlar değiştirilebilir (referans). Dizinin sadece herhangi bir elemanı gönderildiğinde ise değeri değiştirilemez (değer) Diziyi fonksiyone gönderirken sadece adını parametre olarak yazmak yeterlidir. Örnek: fonksiyon içerisnde dizi eleman değerlerinin değiştirilmesi #include <stdio.h> void kareleri(int []); main() int a[10]; int i; for (i=0; i<=9; i++) a[i] = i + 1 ; clrscr(); printf("dizinin elemanlarının değerleri\n"); Ekranda çıkacak görüntü Dizinin elemanlarının değerleri for (i=0; i<=9; i++) printf("%d ",a[i]); Kare alma işlemi sonrası dizinin elemanlarının değerleri kareleri(a); printf("\n\nkare alma işlemi sonrası dizinin elemanlarının değerleri\n"); for (i=0; i<=9; i++)

40 printf("%d ",a[i]); void kareleri(int a[]) int i; for (i=0; i<=9; i++) a[i] = a[i] * a[i]; Dizinin Boyutunu Değişken Kılma #define önişlemcisi direktifi (preprocessor directive) Simgesel sabit tanımlanmasını sağlar. C dili deyimlerinden biri değildir (#include gibi). Kullanım biçimi #define SabitAdı Değeri Program çalıştırıldığınde derleme işlemi öncesinde program içerisinde SabitAdı simgesinim geçtiği yerlere Değeri konur. Örnek : 25 kişilik bir sınıftaki öğrencilerin sınav sonuçlarını okuyup ortalamasını bulan program. #include <stdio.h> #define OGR_SAY 25 void giris(int []); /* not bilgilerin saklanacağı veri yapısını belirle ve tipi tanımla */ float ortalama(int []); main() int ogr[ogr_say]; clrscr(); giris(ogr); printf("ortalama = %f\n", ortalama(ogr)); void giris(int ogr[]) int i; for (i=0; i<ogr_say; i++) /* 0 dan başladığı için < kullanıldı */

41 printf("%d. öğrencinin notunu gir : ",i+1); scanf("%d", &ogr[i]); /* notları girdiren yöntemi */ float ortalama(int ogr[]) float x; int i; x = 0; for (i=0; i<ogr_say; i++) x = x + ogr[i]; return x / OGR_SAY; /* Ortalamayı bulan fonksiyonu yaz* / * 50'den küçük değerleri yazan fonksiyon * 50'den küçük değerlerin sayısını veren fonksiyon * en yüksek notu veren fonksiyon * Standart sapmayı veren işlen ( (abs(xi - Xort) / OGR_SAY)) Örnek : İki dizinin toplamını üçüncü bir diziye yazan programı yazınız (A, B aynı tip dizi, C = A + B ). Doğrudan C := A + B yazılamayacağı için dizinin ilgili elemanlarını tek tek toplamalıyız. #include <stdio.h> #define MAX 20 void dizitopla(int [], int [], int []); main() int a[max], b[max], c[max]; int i; for (i=0; i<max; i++) a[i] = i; b[i] = 2 * i;

42 dizitopla(a, b, c); clrscr(); for (i=0; i<max; i++) printf(" %4d + %4d = %4d \n", a[i], b[i], c[i]); void dizitopla(int a[], int b[], int c[]) /* c = a +b */ int i; for (i=0; i<max; i++) c[i] = a[i] + b[i]; Sıralama Algoritması Dizi elemanlarının küçükten büyüğe veya büyükten küçüğe doğru dizilmesi işlemi. Selection Sort Dizinin en küçük elemanı bulunur ve birinci eleman ile yer değiştirilir. Bu işlem (n-1). elemana kadar tekrar edilir. Her adımda en küçük eleman dizinin kalan elemanlarından bulunur. 1. Dizinin en küçük elemanının indisini veren fonksiyon 2. Bu fonksiyoni kullanarak diziyi sıralama Buble Sort Bu yöntemde ardışıl iki eleman karşılaştırılır. Eğer önceki eleman sonrakinden büyük ise elemanlar yer değiştirilir. Bu şekilde dizi taranır. Eğer herhangi bir değişiklik yapılmış ise döngü işlemine tekrar edilir.

43 Çok Boyutlu Diziler Tanımlanması : Örneğin ; Tip Değişken_Adı[ indis1 ][ indis2 ][ indisn ]; float Enf[5][12]; C dilinde boyut sayısında bir sınır yoktur. Biligisayarın belleği boyutu sınırlar.!!! Çok boyutlu dizileri bir fonksiyona gönderirken ilk boyut dışındaki boyutların büyüklüklerini vermek zorunludur. Örnek : Bir kare matrisin 1. Matrisin simetrik olup olmamasını sınayan program 2. Matrisin transpozesini bir diğer matrise kopyalayan program 3. İki matrisinin çarpımını gerçekleştiren program 4. köşegeninin alt kısmındaki elemanları sıfırlayan yöntemi, 5. Determinantını hesaplayan fonksiyonu, 6. M<=P ve N<=Q olmak üzere A matrisi MxN ve B matrisi PxQ boyutlarındadır. B matrisi içerisinde A matrisininin olup olmadığı belirlenecektir. A matrisinin B matrisi içerisinde kaç kez bulunduğunu ve bunların B matrisi içerisinde başlangıç konumlarını (satır ve sütun olarak) veren programı yazınız. 7. MxN elemanlı bir matrisi tek boyutlu bir diziye dönüştüren program 8. P elemanlı bir diziyi MxN boyutlu matrise dönüştüren program (P sayısı M ve N e tam bölünür). /* Program Matris-2 */ #include <stdlib.h> #define SATIR 3 #define SUTUN 3 void matris_oku(int [][SUTUN]); void matris_yaz(int [][SUTUN]); int simetrik(int [][SUTUN]); /* matrisin simetrikliğini sınar */ void transpoze(int [][SUTUN], int [][SUTUN]); /* 2. = 1.nin transpozesi */ void matris_carp(int [][SUTUN], int [][SUTUN], int [][SUTUN]); /* 3 = 1*2 */ /*

44 alt_ucgen_sifirla(a); matris_yaz(a); printf(" \n"); transpoze(a, b); matris_yaz(b); matris_carp(a, b, c); printf(" \n"); matris_yaz(c); if (simetrik(a)) printf("simetriktir\n"); else printf("simetrik değildir\n"); */ getch(); void matris_oku(int a[][sutun]) int i, j; for (i = 0; i < SATIR; i++) for (j = 0; j < SUTUN; j++) a[i][j] = 1 + random(5); /* matris_oku */ void matris_yaz(int mat[][sutun]) int i, j; for (i = 0; i<satir; i++) for (j = 0; j<sutun; j++) printf("%3d ",mat[i][j]); printf("\n");

45 int simetrik(int a[][sutun]) int i,j; int durum; durum = 1; /*simetrik olduğunu varsay */ for (i = 0; i<satir; i++) for (j = 0; j<sutun; j++) if (a[i][j]!= a[j][i]) durum = 0; break; return durum; /* simetrik */ void transpoze(int a[][sutun], int b[][sutun]) int i, j; for (i = 0; i<satir; i++) for (j = 0; j<sutun; j++) b[i][j] = a[j][i]; void matris_carp(int a[][sutun], int b[][sutun], int c[][sutun]) /* c = a * b */ int i, j, k; for (i = 0; i<satir; i++) for (j = 0; j<sutun; j++) c[i][j] = 0; for (k=0; k<sutun; k++) c[i][j] = c[i][j] + a[i][k]*b[k][j];

46 void alt_ucgen_sifirla(int a[][sutun]) int i,j; for (i = 0; i<satir; i++) for (j = 0; j<i; j++) a[i][j] = 0; int det(int a[][sutun]) int i, j, k; int s, sx1, sx2; s = 0; /* for (j = 0; j<sutun; j++) sx1 = 1; sx2 = 1; for (k = 0; k<satir; k++) i = (j + k) % SUTUN; sx1 = sx1 * a[k][i]; sx2 = sx2 * a[k][satir-k]; s = s + sx1 - sx2; */ return s;

Programlamaya Giriş. Program : Belirli bir problemi çözmek için bir bilgisayar dili kullanılarak yazılmış deyimler dizisi.

Programlamaya Giriş. Program : Belirli bir problemi çözmek için bir bilgisayar dili kullanılarak yazılmış deyimler dizisi. Programlamaya Giriş Program : Belirli bir problemi çözmek için bir bilgisayar dili kullanılarak yazılmış deyimler dizisi. Programın Yazımında İzleyeceğimiz Adımlar Problemi anla. İhtiyaçları belirle. Problemin

Detaylı

Döngü ve Koşul Deyimleri

Döngü ve Koşul Deyimleri Döngü ve Koşul Deyimleri Programlar üç temel blok kullanılarak gerçekleştirilebilirler. art arda, bir koşula bağlı olarak ve sonlu sayıda yineleme (döngü) dir Koşul Deyimleri Birkaç seçenekten birini seçmek

Detaylı

C PROGRAMLAMA DİLİNE GİRİŞ

C PROGRAMLAMA DİLİNE GİRİŞ C PROGRAMLAMA DİLİNE GİRİŞ C Dilinin Tarihçesi 1972 de Dennis Ritchie tarafından AT&T Bell Laboratuarlarında B dilinden geliştirildi. C dili konusundaki ilk kitap 1978 de Dennis Ritchie ve Brain Kernighan

Detaylı

3/7/2011. ENF-102 Jeoloji 1. Tekrar -- Değişken Tanımlamaları (Definition) ve Veri Türleri (Data Type) Veri Tanımları ve Mantıksal Đşlemler

3/7/2011. ENF-102 Jeoloji 1. Tekrar -- Değişken Tanımlamaları (Definition) ve Veri Türleri (Data Type) Veri Tanımları ve Mantıksal Đşlemler Veri Tanımları ve Mantıksal Đşlemler Tekrar -- Değişken Tanımlamaları (Definition) ve Veri Türleri (Data Type) Kullanılacak bütün değişkenlerin kullanılmadan önce C derleyicisine bildirilmeleri gerekir.

Detaylı

PROGRAMLAMAYA GİRİŞ DERS 2

PROGRAMLAMAYA GİRİŞ DERS 2 PROGRAMLAMAYA GİRİŞ DERS 2 Program editörde oluşturulur ve diske kaydedilir Tipik Bir C Programı Geliştirme Ortamının Temelleri 1. Edit 2. Preprocess 3. Compile 4. Link 5. Load 6. Execute Önişlemci programı

Detaylı

Genel Programlama II

Genel Programlama II Genel Programlama II 15.02.2011 1 Genel Programlama Tekrar Program : Belirli bir problemi çözmek için bir bilgisayar dili kullanılarak yazılmış deyimler dizisi. Önceki bölümde bir problemin çözümü ile

Detaylı

Eln 1001 Bilgisayar Programlama I

Eln 1001 Bilgisayar Programlama I Eln 1001 Bilgisayar Programlama I GiriŞ / ǹk¹Ş Fonksiyonlar¹ Ne ÖĆreneceĆiz? Temel Giriş/Çıkış Yapısı Giriş Fonksiyonları Karakterler için giriş fonksiyonları Scanf fonksiyonu Formatlı giriş Çıkış Fonksiyonları

Detaylı

Temel Giriş/Çıkış Fonksiyonları

Temel Giriş/Çıkış Fonksiyonları Temel Giriş/Çıkış Fonksiyonları Temel giriş/çıkış fonksiyonları, bütün programla dillerinde mevcuttur. Bu tür fonksiyonlar, kullanıcıya ekrana veya yazıcıya bilgi yazdırmasına, ve bilgisayara klavyeden

Detaylı

Bil101 Bilgisayar Yazılımı I. M. Erdem ÇORAPÇIOĞLU Bilgisayar Yüksek Mühendisi

Bil101 Bilgisayar Yazılımı I. M. Erdem ÇORAPÇIOĞLU Bilgisayar Yüksek Mühendisi Bil101 Bilgisayar Yazılımı I Bilgisayar Yüksek Mühendisi Editör Disk 1)Kaynak kodlar editör aracılığı ile oluşturulur. (.c) Kaynak dosya Önişleyici Disk 2)Önişleyici kodlar içerisindeki ilk işleme işini

Detaylı

BİLGİSAYAR TEMELLERİ VE PROGRAMLAMAYA GİRİŞ

BİLGİSAYAR TEMELLERİ VE PROGRAMLAMAYA GİRİŞ BİLGİSAYAR TEMELLERİ VE PROGRAMLAMAYA GİRİŞ Yrd.Doç.Dr. Emel ARSLAN earslan@istanbul.edu.tr Program Nedir? Program, hesaplamayı gerçekleştirmek için gereken birbirini izleyen yönergelerden (komutlardan)

Detaylı

EBG101 PROGRAMLAMA TEMELLERİ VE ALGORİTMA

EBG101 PROGRAMLAMA TEMELLERİ VE ALGORİTMA 6. HAFTA EBG101 PROGRAMLAMA TEMELLERİ VE ALGORİTMA Öğr. Gör. S. M. Fatih APAYDIN apaydin@beun.edu.tr EMYO Bülent Ecevit Üniversitesi Kdz. Ereğli Meslek Yüksekokulu ALGORİTMA ÖRNEK1: İki sayının toplamı

Detaylı

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

Uzaktan Eğitim Uygulama ve Araştırma Merkezi JAVA PROGRAMLAMA Öğr. Gör. Utku SOBUTAY İÇERİK 2 Java Veri Tipleri ve Özelilkleri Değişken Tanımlama Kuralları Değişken Veri Tipi Değiştirme (Type Casting) Örnek Kodlar Java Veri Tipleri ve Özelilkleri

Detaylı

Sınav tarihi : Süre : 60 dak. a) ABCDE b) BCDE c) ABCD d) kod hatalı e) BCD

Sınav tarihi : Süre : 60 dak. a) ABCDE b) BCDE c) ABCD d) kod hatalı e) BCD Selçuk Üniversitesi, Mühendislik Fakültesi, Harita Mühendisliği Bölümü Yıliçi Sınavı Test Soruları Adı soyadı : Öğrenci no : Sınav tarihi : 13.04.2015 Süre : 60 dak. 1. Hangisi gerçek sayı değişmezi değildir?

Detaylı

C Programlama Dilininin Basit Yapıları

C Programlama Dilininin Basit Yapıları Bölüm 2 C Programlama Dilininin Basit Yapıları İçindekiler 2.1 Sabitler ve Değişkenler......................... 13 2.2 Açıklamalar (Expresions)........................ 14 2.3 İfadeler (Statements) ve İfade

Detaylı

Diziler. Yrd.Doç.Dr.Bülent ÇOBANOĞLU

Diziler. Yrd.Doç.Dr.Bülent ÇOBANOĞLU Diziler Yrd.Doç.Dr.Bülent ÇOBANOĞLU Dizi (Array) Nedir? Bellekte sürekli yer kaplayan artarda sıralanmış aynı türden verilerin oluşturduğu kümeye dizi (array) denir. Dizi, çok fazla miktardaki tek tip

Detaylı

Programlama Dilleri. C Dili. Programlama Dilleri-ders02/ 1

Programlama Dilleri. C Dili. Programlama Dilleri-ders02/ 1 Programlama Dilleri C Dili Programlama Dilleri-ders02/ 1 Değişkenler, Sabitler ve Operatörler Değişkenler (variables) bellekte bilginin saklandığı gözlere verilen simgesel isimlerdir. Sabitler (constants)

Detaylı

C PROGRAMLAMA D İ L İ

C PROGRAMLAMA D İ L İ C PROGRAMLAMA DİLİ C Programlama Dilinin Temelleri C Programlama Dili'ni popüler kılan önemli nedenler aşağıda listelenmiştir: C, güçlü ve esnek bir dildir. C ile işletim sistemi veya derleyici yazabilir,

Detaylı

Bölüm 2 - C ile Programlamaya Giriş

Bölüm 2 - C ile Programlamaya Giriş 1 Bölüm 2 - C ile Programlamaya Giriş Başlıklar 2.1 Giriş 2.2 Basit C Programları: Bir Metni Yazdırmak 2.3 Basit C Programları: İki Tam Sayıyı Toplamak 2.4 Hafıza Konuları 2.5 C de Aritmetik 2.6 Karar

Detaylı

Algoritma ve Programlama: Karar Yapıları ve Döngüler

Algoritma ve Programlama: Karar Yapıları ve Döngüler Algoritma ve Programlama: Karar Yapıları ve Döngüler Bir algoritma, herhangi bir programlama dili (C, C++, Pascal, Visual Basic, Java gibi) ile kodlandığında program haline gelir. Algoritmada yer alan

Detaylı

B02.6 Karar Verme, Eşitlik ve Bağıntı Operatörleri

B02.6 Karar Verme, Eşitlik ve Bağıntı Operatörleri B02.6 Karar Verme, Eşitlik ve Bağıntı Operatörleri 49 Yrd. Doç. Dr. Yakup EMÜL, Bilgisayar Programlama Ders Notları (B02) Çalıştırılabilir C ifadeleri ya bir işlem gerçekleştirir ( girilen verilerin toplanması

Detaylı

Fonksiyonlar. C++ ve NESNEYE DAYALI PROGRAMLAMA 51. /* Fonksiyon: kup Bir tamsayının küpünü hesaplar */ long int kup(int x) {

Fonksiyonlar. C++ ve NESNEYE DAYALI PROGRAMLAMA 51. /* Fonksiyon: kup Bir tamsayının küpünü hesaplar */ long int kup(int x) { Fonksiyonlar Kendi içinde bağımsız olarak çalışabilen ve belli bir işlevi yerine getiren program modülleridir. C programları bu modüllerden (fonksiyonlar) oluşurlar. Fonksiyonların yazılmasındaki temel

Detaylı

Fonksiyonlar (Altprogram)

Fonksiyonlar (Altprogram) Fonksiyonlar (Altprogram) C Programlama Dili fonksiyon olarak adlandırılan alt programların birleştirilmesi kavramına dayanır. Bir C programı bir ya da daha çok fonksiyonun bir araya gelmesi ile oluşur.

Detaylı

Veri Tanımları ve Mantıksal İşlemler

Veri Tanımları ve Mantıksal İşlemler Veri Tanımları ve Mantıksal İşlemler Tekrar -- Değişken Tanımlamaları (Definition) ve Veri Türleri (Data Type) Kullanılacak bütün değişkenlerin kullanılmadan önce C derleyicisine bildirilmeleri gerekir.

Detaylı

MAK 1005 Bilgisayar Programlamaya Giriş C DİLİNE GİRİŞ. Prof. Dr. Necmettin Kaya

MAK 1005 Bilgisayar Programlamaya Giriş C DİLİNE GİRİŞ. Prof. Dr. Necmettin Kaya MAK 1005 Bilgisayar Programlamaya Giriş C DİLİNE GİRİŞ Prof. Dr. Necmettin Kaya C PROGRAMLAMA DİLİ ÖZELLİKLERİ C programlama dili, 1972 yılında Bell Labortuvarı nda Dennis Ritchie tarafından geliştirilmiştir.

Detaylı

C DİLİ KULLANARAK BİLGİSAYAR PROGRAMLAMA

C DİLİ KULLANARAK BİLGİSAYAR PROGRAMLAMA C DİLİ KULLANARAK BİLGİSAYAR PROGRAMLAMA Hüseyin PEKTAŞ Bu doküman KOÜ Elektronik ve Haberleşme Mühendisliği Bölümü ndeki Bilgisayar ve Yazılım I-II derslerine ait notlarını içerir. Dökümanda büyük oranda

Detaylı

ESM-361 Mikroişlemciler. 3. Hafta Ders Öğretim Üyesi Dr.Öğr.Üyesi Ayşe DEMİRHAN

ESM-361 Mikroişlemciler. 3. Hafta Ders Öğretim Üyesi Dr.Öğr.Üyesi Ayşe DEMİRHAN ESM-361 Mikroişlemciler 3. Hafta Ders Öğretim Üyesi Dr.Öğr.Üyesi Ayşe DEMİRHAN Bit operatörleri Bit operatörleri bit düzeyinde işlem yapan operatörlerdir; yani sayıları bir bütün olarak değil, bit bit

Detaylı

BLM-111 PROGRAMLAMA DİLLERİ I. Ders-8 Değişken Tipleri ve Temel Giriş/Çıkış İşlemleri

BLM-111 PROGRAMLAMA DİLLERİ I. Ders-8 Değişken Tipleri ve Temel Giriş/Çıkış İşlemleri BLM-111 PROGRAMLAMA DİLLERİ I Ders-8 Değişken Tipleri ve Temel Giriş/Çıkış İşlemleri Yrd. Doç. Dr. Ümit ATİLA umitatila@karabuk.edu.tr http://web.karabuk.edu.tr/umitatilla/ Temel Veri Tipleri C dilinde

Detaylı

Ders 2: Veri Tipleri, Değişkenler ve Sabitler

Ders 2: Veri Tipleri, Değişkenler ve Sabitler Ders 2: Veri Tipleri, Değişkenler ve Sabitler Giriş Orta ve yüksek seviyeli dillerin hemen hemen hepsinde veri tipi ve değişken kavramı bulunmaktadır. Bu kısımda C programlama dilindeki temel veri tipleri,

Detaylı

Genel Programlama I

Genel Programlama I Genel Programlama I 30.09.2010 1 Genel Programlama I Ders İçeriği Programlamaya giriş ve algoritma kavramları Basit ve karmaşık veri tipleri Program kontrol komutları (Döngü ve şart yapıları) Diziler ve

Detaylı

Sınav tarihi : Süre : 60 dak. a) strstr b) strchr c) strcat d) strcpy e) strlen. a) b) d) e) 0

Sınav tarihi : Süre : 60 dak. a) strstr b) strchr c) strcat d) strcpy e) strlen. a) b) d) e) 0 Selçuk Üniversitesi, Mühendislik Fakültesi, Harita Mühendisliği Bölümü Bitirme Sınavı Test Soruları Adı soyadı : Öğrenci no : Sınav tarihi : 01.06.2017 Süre : 60 dak. 1. t değişkeni hakkında aşağıdakilerden

Detaylı

B tekrarlama kontrol komutları 7. do-while döngüsü 8. while döngüsü 9. for döngüsü

B tekrarlama kontrol komutları 7. do-while döngüsü 8. while döngüsü 9. for döngüsü PROGRAM KONTROL KOMUTLARI A karşılaştırma kontrol komutları 1. if koşulu 2. if else koşulu 3. if - else if koşulu 4. (? :) üçlü koşul 5. goto deyimi 6. switch deyimi B tekrarlama kontrol komutları 7. do-while

Detaylı

/ C Bilgisayar Programlama Final Sınavı Test Soruları. Adı soyadı :... Öğrenci no :... İmza :... Tarih, Süre : , 60 dak.

/ C Bilgisayar Programlama Final Sınavı Test Soruları. Adı soyadı :... Öğrenci no :... İmza :... Tarih, Süre : , 60 dak. Selçuk Üniversitesi Mühendislik Fakültesi Harita Mühendisliği Bölümü Final Sınavı Test Soruları dı soyadı :... Öğrenci no :... İmza :... Tarih, Süre :09.01.2013, 60 dak. Dikkat!!! Soru kitapçığında ve

Detaylı

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

Uzaktan Eğitim Uygulama ve Araştırma Merkezi JAVA PROGRAMLAMA Öğr. Gör. Utku SOBUTAY İÇERİK 2 Java da Fonksiyon Tanımlamak Java da Döngüler Java da Şart İfadeleri Uygulamalar Java da Fonksiyon Tanımlamak JAVA DA FONKSİYON TANIMLAMAK 4 Fonksiyonlar;

Detaylı

BÖLÜM 11: YAPISAL VERİ TİPLERİ

BÖLÜM 11: YAPISAL VERİ TİPLERİ BÖLÜM 11: YAPISAL VERİ TİPLERİ I. STRUCTURE-YAPI (struct) TİPİ DEĞİŞKENLER Birbiriyle bağlantılı ve bir küme teşkil eden değerler bir tek değişkenin çatısı altında bu değişkenin alt alanları olarak tanımlanabilirler.

Detaylı

BÖLÜM 1b: C++ PROGRAMLAMANIN YAPISI. C++, hard diskte TC, BIN, INCLUDE, LIB gibi alt dizinlere yüklenir.

BÖLÜM 1b: C++ PROGRAMLAMANIN YAPISI. C++, hard diskte TC, BIN, INCLUDE, LIB gibi alt dizinlere yüklenir. BÖLÜM 1b: C++ PROGRAMLAMANIN YAPISI C++, hard diskte TC, BIN, INCLUDE, LIB gibi alt dizinlere yüklenir. TC programı çalıştırıldığında C++ çalışma ortamı açılır. C++ çalışma ortamında istenirse yeni bir

Detaylı

Sınav tarihi : Süre : 60 dak.

Sınav tarihi : Süre : 60 dak. Selçuk Üniversitesi, Mühendislik Fakültesi, Harita Mühendisliği Bölümü Final Sınavı Test Soruları Adı soyadı : Öğrenci no : Sınav tarihi : 31.05.2016 Süre : 60 dak. 1. Ekranda ne görüntülenir? int i =

Detaylı

2. Dereceden Denklemin Köklerini Bulan Program

2. Dereceden Denklemin Köklerini Bulan Program 2. Dereceden Denklemin Köklerini Bulan Program [crayon-5bb74e5b18b15225541464/] C++ 2.dereceden denklemin köklerini bulan program [crayon-5bb74e5b18b25989362529/] ÇIKTI; C++ 2. dereceden denklemin köklerini

Detaylı

BİLGİSAYAR MÜHENDİSLİĞİ ALGORİTMA VE PROGRAMLAMA II 2.HAFTA SWİTCH (CASE), SAYAÇLAR, DÖNGÜLER,

BİLGİSAYAR MÜHENDİSLİĞİ ALGORİTMA VE PROGRAMLAMA II 2.HAFTA SWİTCH (CASE), SAYAÇLAR, DÖNGÜLER, BİLGİSAYAR MÜHENDİSLİĞİ ALGORİTMA VE PROGRAMLAMA II 2.HAFTA SWİTCH (CASE), SAYAÇLAR, DÖNGÜLER, C++ İÇİN UFAK HATIRLATMALAR Değişken adları bir harf ile başlamalıdır. (a-z, A-Z). Değişken adı numara içerebilir.

Detaylı

Çoktan Seçmeli Değerlendirme Soruları Akış Şemaları İle Algoritma Geliştirme Örnekleri Giriş 39 1.Gündelik Hayattan Algoritma Örnekleri 39 2.Say

Çoktan Seçmeli Değerlendirme Soruları Akış Şemaları İle Algoritma Geliştirme Örnekleri Giriş 39 1.Gündelik Hayattan Algoritma Örnekleri 39 2.Say İÇİNDEKİLER 1. Bilgisayarın Yapısı Ve Programlama Dilleri Giriş 1 Bilgisayar ve Programlamanın Kısa Bir Tarihçesi 2 Donanım ve Yazılım Kavramları 3 Bilgisayarın Donanımsal yapısı 4 Giriş Birimi (Input

Detaylı

Giriş. ENF102 Jeoloji

Giriş. ENF102 Jeoloji DİZİLER Arrays Giriş Aynı isim altında, aynı türde birden fazla değer tutmak için kullanılan veri yapılarıdır (Data Structure). Dizi bir kümedir; aynı türde verilere tek bir isimle erişmek için kullanılır.

Detaylı

C# Yazım Kuralları ERCİYES. Ü. BİLGİSAYAR M. COMPUTER PROGRAMMING II 1 FEHİM KÖYLÜ

C# Yazım Kuralları ERCİYES. Ü. BİLGİSAYAR M. COMPUTER PROGRAMMING II 1 FEHİM KÖYLÜ C# Yazım Kuralları 1 İçindekiler C# Yazım Kuralları Veritipleri Değişkenler Operatörler Sınıflar Nesneler, Özellik, Metot ve Olay Bileşenler 2 C# yazım kuralları Deyimlerde büyük küçük harf yazıma uyulmalı

Detaylı

C DİLİ KULLANARAK BİLGİSAYAR PROGRAMLAMA

C DİLİ KULLANARAK BİLGİSAYAR PROGRAMLAMA C DİLİ KULLANARAK BİLGİSAYAR PROGRAMLAMA Bu doküman KOÜ Elektronik ve Haberleşme Mühendisliği Bölümü ndeki Bilgisayar ve Yazılım I-II derslerine ait notlarını içerir. Dökümanda büyük oranda anlatım eksikliği

Detaylı

BİLGİSAYAR TEMELLERİ VE PROGRAMLAMAYA GİRİŞ

BİLGİSAYAR TEMELLERİ VE PROGRAMLAMAYA GİRİŞ BİLGİSAYAR TEMELLERİ VE PROGRAMLAMAYA GİRİŞ Yrd.Doç.Dr. Emel ARSLAN earslan@istanbul.edu.tr C Program Akış Kontrol Yapıları Kontrol Komutları Normal şartlarda C dilinde bir programın çalışması, komutların

Detaylı

BİL1001 Bilgisayar Bilimlerine Giriş 1

BİL1001 Bilgisayar Bilimlerine Giriş 1 DEÜ Bilgisayar Bilimleri Bölümü BİL1001 Bilgisayar Bilimlerine Giriş 1 Öğr. Gör. Dr. Alper VAHAPLAR 2017 Yaz Okulu Tekrarlı Yapılar Algoritmanın belirli bir kısmının, belirli kere ya da belirli durumlar

Detaylı

BMT 101 Algoritma ve Programlama I 6. Hafta. Yük. Müh. Köksal Gündoğdu 1

BMT 101 Algoritma ve Programlama I 6. Hafta. Yük. Müh. Köksal Gündoğdu 1 BMT 101 Algoritma ve Programlama I 6. Hafta Yük. Müh. Köksal Gündoğdu 1 C++ Veri Tipleri Yük. Müh. Köksal Gündoğdu 2 Veri Tipleri Tam sayı ve Ondalık sayı veri tipleri Veri Tipi Alt Sınıf Üst Sınıf Duyarlı

Detaylı

2 ALGORİTMA VE AKIŞ DİYAGRAMLARI

2 ALGORİTMA VE AKIŞ DİYAGRAMLARI İÇİNDEKİLER IX İÇİNDEKİLER 1 GİRİŞ 1 Kitabın Amacı 1 Algoritmanın Önemi 2 Bilgisayarın Doğuşu ve Kullanım Amaçları 3 Programlama Dili Nedir? 3 Entegre Geliştirme Ortamı (IDE) Nedir? 4 2 ALGORİTMA VE AKIŞ

Detaylı

ÖDEV (Vize Dönemi) CEVAPLAR. 1. Ekrana Merhaba Dünya! yazdıran algoritmanın akış diyagramını çiziniz ve sözde kod olarak yazınız.

ÖDEV (Vize Dönemi) CEVAPLAR. 1. Ekrana Merhaba Dünya! yazdıran algoritmanın akış diyagramını çiziniz ve sözde kod olarak yazınız. ÖDEV (Vize Dönemi) CEVAPLAR 1. Ekrana Merhaba Dünya! yazdıran algoritmanın akış diyagramını çiziniz ve sözde kod olarak yazınız. PROGRAM Soru1 PRINT Merhaba Dünya! ; 2. Klavyeden girilen negatif bir sayıyı

Detaylı

BĠLGĠSAYAR PROGRAMLAMA II C++ Programlamaya GiriĢ http://www.cplusplus.com/doc/tutorial/ Published by Juan Soulié

BĠLGĠSAYAR PROGRAMLAMA II C++ Programlamaya GiriĢ http://www.cplusplus.com/doc/tutorial/ Published by Juan Soulié BĠLGĠSAYAR PROGRAMLAMA II C++ Programlamaya GiriĢ http://www.cplusplus.com/doc/tutorial/ Published by Juan Soulié DERSİN WEB SİTESİ: http://nucleus.istanbul.edu.tr/~bilprog2/ DeğiĢkenler ve Data Türleri

Detaylı

C NASIL BİR DİL?.. PROGRAMIN ÇALIŞMASI

C NASIL BİR DİL?.. PROGRAMIN ÇALIŞMASI 1 Programlama Dillerinin Seviyelerine Göre Sınıflandırılması Önce seviye kavramının ne anlama geldiğini açıklamak gerekmektedir. Seviye, bir programlama dilinin insan algılamasına olan yakınlığının bir

Detaylı

/ C Bilgisayar Programlama Yıliçi Sınavı Test Soruları. Adı soyadı :... Öğrenci no :... İmza :... Tarih, Süre : , 60 dak.

/ C Bilgisayar Programlama Yıliçi Sınavı Test Soruları. Adı soyadı :... Öğrenci no :... İmza :... Tarih, Süre : , 60 dak. Selçuk Üniversitesi Mühendislik-Mimarlık Fakültesi Harita Mühendisliği Bölümü Yıliçi Sınavı Test Soruları dı soyadı :... Öğrenci no :... İmza :... Tarih, Süre :26.11.2012, 60 dak. Dikkat!!! Soru kitapçığında

Detaylı

Adı soyadı :... Öğrenci no :... İmza :... Tarih, Süre : dak.

Adı soyadı :... Öğrenci no :... İmza :... Tarih, Süre : dak. Selçuk Üniversitesi Mühendislik Fakültesi Harita Mühendisliği Bölümü ra Sınavı Test Soruları dı soyadı :... Öğrenci no :... İmza :... Tarih, Süre :13.04.2017 60 dak. Dikkat!!! Soru kitapçığında ve cevap

Detaylı

Döngü (Loop) Deyimleri / Veri Belirleyicileri / Matematiksel Fonksiyonlar

Döngü (Loop) Deyimleri / Veri Belirleyicileri / Matematiksel Fonksiyonlar Bölüm 5 Döngü (Loop) Deyimleri / Veri Belirleyicileri / Matematiksel Fonksiyonlar İçindekiler 5.1 Formatlı Yazdırma............................ 34 5.2 Döngü Deyimleri............................. 34 5.2.1

Detaylı

C Konsol Giriş Çıkış Fonksiyonları

C Konsol Giriş Çıkış Fonksiyonları C Konsol Giriş Çıkış Fonksiyonları Öğr. Gör. M. Ozan AKI Rev 1.0 Stringlerde Özel Karakterler \n : Bir sonraki satırın ilk sütununa git \b : Backspace (önceki karakteri sil) \a : Bip sesi \\ : Ters bölü

Detaylı

Dr. Fatih AY Tel:

Dr. Fatih AY Tel: Bilgisayar Programlama Ders 5 Dr. Fatih AY Tel: 0 388 225 22 55 fatihay@fatihay.net www.fatihay.net Fonksiyonlar Fonksiyonlar Büyük programlar geliştirmenin en iyi yolu, onu orijinal programdan daha kolay

Detaylı

İnternet Programcılığı Dersi 2.Dönem Ders Notu

İnternet Programcılığı Dersi 2.Dönem Ders Notu İnternet Programcılığı Dersi 2.Dönem Ders Notu DEĞİŞKEN TİPLERİ TAM SAYI (İNTEGER) VERİ TİPİ Negatif veya pozitif ondalık kısmı bulunmayan sayılardır. Örnek: $i=65; $x=345; ONDALIK(REAL)VERİ TİPİ Ondalıklı

Detaylı

PASCAL PROGRAMLAMA DİLİ YAPISI

PASCAL PROGRAMLAMA DİLİ YAPISI BÖLÜM 3 PASCAL PROGRAMLAMA DİLİ YAPISI 3.1. Giriş Bir Pascal programı en genel anlamda üç ayrı kısımdan oluşmuştur. Bu kısımlar bulunmaları gereken sıraya göre aşağıda verilmiştir. Program Başlığı; Tanımlama

Detaylı

Algoritma ve Programlamaya Giriş

Algoritma ve Programlamaya Giriş Algoritma ve Programlamaya Giriş Algoritma Bir sorunu çözebilmek için gerekli olan sıralı ve mantıksal adımların tümüne Algoritma denir. Doğal dil ile yazılabilir. Fazlaca formal değildir. Bir algoritmada

Detaylı

C Programlama Dilinde Değişkenler

C Programlama Dilinde Değişkenler C Programlama Dilinde Değişkenler Değişkenler bir programlama dilinin en önemli bileşenlerindendir. En basit bir aritmetik işlemin bile kullanıcının girdiği değerleri saklamak için çeşitlik bellek alanlarına

Detaylı

BLM-111 PROGRAMLAMA DİLLERİ I. Ders-12 Fonksiyonlar. Yrd. Doç. Dr. Ümit ATİLA

BLM-111 PROGRAMLAMA DİLLERİ I. Ders-12 Fonksiyonlar. Yrd. Doç. Dr. Ümit ATİLA BLM-111 PROGRAMLAMA DİLLERİ I Ders-12 Fonksiyonlar Yrd. Doç. Dr. Ümit ATİLA umitatila@karabuk.edu.tr http://web.karabuk.edu.tr/umitatilla/ Fonksiyonlar Fonksiyonlar C de modüller Programlar kullanıcı tanımlı

Detaylı

BİL1001 Bilgisayar Bilimlerine Giriş 1

BİL1001 Bilgisayar Bilimlerine Giriş 1 DEÜ Bilgisayar Bilimleri Bölümü BİL1001 Bilgisayar Bilimlerine Giriş 1 Öğr. Gör. Dr. Alper VAHAPLAR 2017 Yaz Okulu Bilgisayar Bilimlerine Giriş 1 Programlama Dillerine (Programming Languages) Giriş Dil

Detaylı

Ders 4: Temel Giriş/Çıkış Fonksiyonları

Ders 4: Temel Giriş/Çıkış Fonksiyonları Ders 4: Temel Giriş/Çıkış Fonksiyonları Giriş Temel giriş/çıkış fonksiyonları, bütün programla dillerinde mevcuttur. Bu tür fonksiyonlar, kullanıcıya ekrana veya yazıcıya bilgi yazdırmasına, ve bilgisayara

Detaylı

DİZİLER 5/4/2010. ENF-102 Jeoloji Giriş. Tek Boyutlu Diziler. Tek Boyutlu Diziler. Örnek. Örnek

DİZİLER 5/4/2010. ENF-102 Jeoloji Giriş. Tek Boyutlu Diziler. Tek Boyutlu Diziler. Örnek. Örnek Giriş DİZİLER Arrays Aynı isim altında, aynı türde birden fazla değer tutmak için kullanılan veri yapılarıdır (Data Structure). Dizi bir kümedir; aynı türde verilere tek bir isimle erişmek için kullanılır.

Detaylı

BÖLÜM 5: TEMEL GİRİŞ/ÇIKIŞ FONKSİYONLARI

BÖLÜM 5: TEMEL GİRİŞ/ÇIKIŞ FONKSİYONLARI BÖLÜM 5: TEMEL GİRİŞ/ÇIKIŞ FONKSİYONLARI Bu bölümde, C programlama dilinde kullanılan temel giriş ve çıkış fonksiyonları ele alınacaktır. C programlama dilinde default (varsayılan) giriş cihazı klavye

Detaylı

Hafta 13 Fonksiyonlar

Hafta 13 Fonksiyonlar BLM111 Programlama Dilleri I Hafta 13 Fonksiyonlar Yrd. Doç. Dr. Caner ÖZCAN Fonksiyonlar Fonksiyonlar C de modüller Programlar kullanıcı tanımlı fonksiyonları ve kütüphane fonksiyonlarını birlikte kullanırlar.

Detaylı

Örnek: İki fonksiyondan oluşan bir program. Fonksiyon Tanımı

Örnek: İki fonksiyondan oluşan bir program. Fonksiyon Tanımı Fonksiyonlar Fonksiyon Tanımı Değer Döndürmeyen Fonksiyonlar Değer Döndüren Fonksiyonlar Çok Parametreli Fonksiyonlar Değişken Kapsamları Çok Fonksiyonlu Programlar Fonksiyon Tanımı Karmaşıkveuzunprogramları,

Detaylı

C++ Operatörler (Operators)

C++ Operatörler (Operators) C++ Operatörler (Operators) Konular Operatörler o Aritmetiksel (Matematiksel) Operatörler o Karşılaştırma Operatörleri o Mantıksal Operatörler o Atama Operatörleri o Bit Düzeyinde Operatörler o Özel Amaçlı

Detaylı

Değişkenler. Geçerli değişken isimleri : baslamazamani, ad_soyad, x5 Geçersiz değişken isimleri : 3x, while

Değişkenler. Geçerli değişken isimleri : baslamazamani, ad_soyad, x5 Geçersiz değişken isimleri : 3x, while Değişkenler Değişkenler bir bilginin bellekteki konumunu temsil eden sembolik isimlerdir. Bilgisayarda hemen hemen tüm işlemler bellekte yapılır. Program çalıştırıldığında değişken ve bu değişkenin türüne

Detaylı

Dr. Fatih AY Tel: 0 388 225 22 55 fatihay@fatihay.net www.fatihay.net

Dr. Fatih AY Tel: 0 388 225 22 55 fatihay@fatihay.net www.fatihay.net Bilgisayar Programlama Ders 6 Dr. Fatih AY Tel: 0 388 225 22 55 fatihay@fatihay.net www.fatihay.net Fonksiyon Prototipleri Fonksiyon Prototipleri Derleyici, fonksiyonların ilk hallerini (prototiplerini)

Detaylı

Pointer Kavramı. Veri Yapıları

Pointer Kavramı. Veri Yapıları Pointer Kavramı Veri Yapıları Pointer Kavramı- Pointer Nedir? Göstericiler, işaretçiler ya da pointer adı da verilmektedir. Gösterici (pointer); içerisinde bellek adresi tutan değişkenlerdir. Şu ana kadar

Detaylı

BİL-142 Bilgisayar Programlama II

BİL-142 Bilgisayar Programlama II BİL-142 Bilgisayar Programlama II (C/C++) Hazırlayan: M.Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü Konular Giriş math Kütüphane Fonksiyonları Çok Parametreyle Fonksiyon Tanımı Fonksiyon

Detaylı

HSancak Nesne Tabanlı Programlama I Ders Notları

HSancak Nesne Tabanlı Programlama I Ders Notları DİZİLER Bellekte ard arda yer alan aynı türden nesneler kümesine dizi (array) denilir. Bir dizi içerisindeki bütün elemanlara aynı isimle ulaşılır. Yani dizideki bütün elemanların isimleri ortaktır. Elemanlar

Detaylı

C Programlama printf() Fonksiyonu

C Programlama printf() Fonksiyonu C Programlama printf() Fonksiyonu Standart C kütüphanesinin bir parçası olan printf() C Programlama Dili'nin genel amaçlı çıktı alma fonksiyonudur. Girdi ve çıktı deyimleri gerçekte C dilinin bir parçası

Detaylı

Değişkenler, içerisinde tek bir değer tutabilen yapılardır. Örneğin haftanın günlerini değişkenlerde tutmak istersek, her bir gün adı için bir

Değişkenler, içerisinde tek bir değer tutabilen yapılardır. Örneğin haftanın günlerini değişkenlerde tutmak istersek, her bir gün adı için bir DİZİLER (ARRAYS) Değişkenler, içerisinde tek bir değer tutabilen yapılardır. Örneğin haftanın günlerini değişkenlerde tutmak istersek, her bir gün adı için bir değişken tanımlamak gereklidir. string gun1,

Detaylı

Temel Giriş/Çıkış Fonksiyonları (Devam) Örnek :

Temel Giriş/Çıkış Fonksiyonları (Devam) Örnek : Temel Giriş/Çıkış Fonksiyonları (Devam) Örnek : scanf() Fonksiyonu Birçok programda ekrana verilerin yazdırılması yanısıra klavyeden veri okunması gerekebilir. scanf() fonksiyonu klavyeden veri okumak

Detaylı

BÖLÜM 4: DEĞİŞKENLER, SABİTLER VE OPERATÖRLER

BÖLÜM 4: DEĞİŞKENLER, SABİTLER VE OPERATÖRLER BÖLÜM 4: DEĞİŞKENLER, SABİTLER VE OPERATÖRLER C programlama dilinde, değişken, sabit, etiket ve fonksiyon isimleri programcı tarafından tanımlanır. İsimler, İngiliz alfabesini oluşturan 26 harf kullanılarak

Detaylı

BLM 111 ALGORİTMA VE PROGRAMLAMA I

BLM 111 ALGORİTMA VE PROGRAMLAMA I 1 BLM 111 ALGORİTMA VE PROGRAMLAMA I DİZİLER (ARRAYS) Kullanıcıdan N tane tamsayı, xi, alalım ve 1. Bu sayıların ortalamasını hesaplamak isteyelim ort = 0; for (i=0; i

Detaylı

Sınav tarihi : Süre : 60 dak. c) En başta #include<stdio.h> yazılmamıştır. c) zt d) Pi e) X0

Sınav tarihi : Süre : 60 dak. c) En başta #include<stdio.h> yazılmamıştır. c) zt d) Pi e) X0 Selçuk Üniversitesi, Mühendislik Fakültesi, Harita Mühendisliği Bölümü Yıliçi Sınavı Test Soruları Adı soyadı : Öğrenci no : Sınav tarihi : 14.04.2015 Süre : 60 dak. 1. Tür dönüşümleri... olmak üzere iki

Detaylı

Karakter katarları ile ilgili fonksiyonlar içerir Yerel kayan noktalı sayılar tanımlanır

Karakter katarları ile ilgili fonksiyonlar içerir Yerel kayan noktalı sayılar tanımlanır stringh floath Karakter katarları ile ilgili fonksiyonlar içerir Yerel kayan noktalı sayılar tanımlanır 32 Sorgulama İfadesi - if Deyimi (5 Hafta) Bu deyim sorgulamanın tek basamakta yapılacağı yerlerde

Detaylı

BÖLÜM 2 C PROGRAMLAMADA AKIŞ KONTROLÜ. GOTO: C programında programın herhangi bir yerinden bir yerine şartsız olarak atlanmasını sağlayan komuttur.

BÖLÜM 2 C PROGRAMLAMADA AKIŞ KONTROLÜ. GOTO: C programında programın herhangi bir yerinden bir yerine şartsız olarak atlanmasını sağlayan komuttur. BÖLÜM 2 C PROGRAMLAMADA AKIŞ KONTROLÜ GOTO: C programında programın herhangi bir yerinden bir yerine şartsız olarak atlanmasını sağlayan komuttur. #include main () { int a=5 ; dal1: printf (

Detaylı

Değişkenler tanımlanırken onlara ne tür veriler atanabileceği de belirtilir. Temel veri türleri oldukça azdır:

Değişkenler tanımlanırken onlara ne tür veriler atanabileceği de belirtilir. Temel veri türleri oldukça azdır: C VERİ TÜRLERİ BASİT VERİ TÜRLERİ Değişkenler, program içinde üzerinde işlem yapılan, veri saklanan ve durumlarına göre programın akışı sağlanan nesnelerdir. C de bir değişken kullanılmadan önce tanımlanmalıdır.

Detaylı

3/3/2011. ENF-102 Jeoloji 1. Akış Diyagramı. Akış Diyagramı Şekilleri

3/3/2011. ENF-102 Jeoloji 1. Akış Diyagramı. Akış Diyagramı Şekilleri Akış Diyagramı Akış Diyagramı Algoritma adımlarını şekillerle ifade etme işine akış diyagramı adı verilir. Standartlaşmış şekillerle ifade edilirler. Akış Diyagramı Şekilleri Akış Diyagramı Şekilleri başla

Detaylı

BÖLÜM 6: KARŞILAŞTIRMALI KONTROL YAPILARI

BÖLÜM 6: KARŞILAŞTIRMALI KONTROL YAPILARI BÖLÜM 6: KARŞILAŞTIRMALI KONTROL YAPILARI C programlama dilinde, diğer programlama dillerinde olduğu gibi, işlemler, ilk satırdan başlamak üzere sırayla çalışır. Program kontrol yapıları ise, programın

Detaylı

Döngü Komutları. Komutu. while Komutu Diğer Operatörler Bileşik Komut for Komutu. İçiçe Döngüler break ve continue Komutları

Döngü Komutları. Komutu. while Komutu Diğer Operatörler Bileşik Komut for Komutu. İçiçe Döngüler break ve continue Komutları Döngüler Döngü Komutları while Komutu Diğer Operatörler Bileşik Komut for Komutu do-while Komutu İçiçe Döngüler break ve continue Komutları while Komutu Döngü komutları komutların bir çok kez yeniden yürülmesini

Detaylı

Diziler (Arrays) Çok Boyutlu Diziler

Diziler (Arrays) Çok Boyutlu Diziler Diziler (Arrays) Çok Boyutlu Diziler ÇOK BOYUTLU DİZİLER Birden fazla indis numarası ile elemanlarına ulaşılan dizilere çok boyutlu diziler denir. Bunlardan en sık kullanılanı çift boyutlu dizilerdir.

Detaylı

Döngüler - Loops 4/9/2010. ENF-102 Jeoloji Giriş. Sayaç kontrollü bir döngüdeki temel öğeler. Sayaç (counter) Kontrollü Döngüler.

Döngüler - Loops 4/9/2010. ENF-102 Jeoloji Giriş. Sayaç kontrollü bir döngüdeki temel öğeler. Sayaç (counter) Kontrollü Döngüler. Giriş Döngüler - Loops Bir ifade kümesinin tekrarlanması, yani birden fazla çalıştırılması işlemine döngü (loop) dendiğiğ programlamaya giriş ş kısmında belirtilmişti. Bu derste döngülerin C programlama

Detaylı

ELN1001 BİLGİSAYAR PROGRAMLAMA I

ELN1001 BİLGİSAYAR PROGRAMLAMA I ELN1001 BİLGİSAYAR PROGRAMLAMA I DİNAMİK BELLEK YÖNETİMİ TEMEL G/Ç FONKSİYONLARI Dinamik Bellek Tahsisi Tanımlanmış olan dizilere eleman sayısı ve elemanlarının tiplerine göre, sistem belleğinde bir yer

Detaylı

Programlama Dilleri Laboratuvarı

Programlama Dilleri Laboratuvarı 2014 2015 Programlama Dilleri Laboratuvarı Ders Sorumlusu: Yrd. Doç. Dr. İsmail KURNAZ Laboratuvar Sorumluları: İÇİNDEKİLER Deney 1: Bilgisayar Kavramları, Algoritma Geliştirme ve Çözümü, Programlamaya

Detaylı

Hafta 8 C Dilinde Değişken Tipleri ve Temel Giriş/Çıkış İşlemleri

Hafta 8 C Dilinde Değişken Tipleri ve Temel Giriş/Çıkış İşlemleri BLM111 Programlama Dilleri I Hafta 8 C Dilinde Değişken Tipleri ve Temel Giriş/Çıkış İşlemleri Yrd. Doç. Dr. Caner ÖZCAN C Dilinde Temel Veri Tipleri C dilinde kullanılacak değişkenler ve veri tipleri

Detaylı

MAK 1005 Bilgisayar Programlamaya Giriş. Fonksiyonlar. Prof. Dr. Necmettin Kaya

MAK 1005 Bilgisayar Programlamaya Giriş. Fonksiyonlar. Prof. Dr. Necmettin Kaya MAK 1005 Bilgisayar Programlamaya Giriş Fonksiyonlar Prof. Dr. Necmettin Kaya Gerçek hayattaki problemlerin çözümü için geliştirilen programlar çok büyük boyutlardadır. Daha büyük programlar yazmanın en

Detaylı

Temel Bilgisayar Bilimleri Ders Notu #4-2. kısım

Temel Bilgisayar Bilimleri Ders Notu #4-2. kısım Nisan 2009 9031150 - Temel Bilgisayar Bilimleri Ders Notu #4-2. kısım Referans: Bugün: 1. Ders Notları. Ders #4.1 Tekrar Dowhile ve for döngüleri Diziler Göstergeler 1. Tekrar for döngüleri Genel yazılımı

Detaylı

BLM 111 ALGORİTMA VE PROGRAMLAMA I

BLM 111 ALGORİTMA VE PROGRAMLAMA I 1 BLM 111 ALGORİTMA VE PROGRAMLAMA I ÇOK BOYUTLU DİZİLER, YAPILAR [MULTIDIMENSIONAL ARRAYS, STRUCTURES] ÇOK BOYUTLU DİZİLER Çok boyutlu diziler tanımlayabiliriz. İki boyutta, çok boyutlu diziler bellek

Detaylı

BİLGİSAYAR TEMELLERİ VE PROGRAMLAMAYA GİRİŞ

BİLGİSAYAR TEMELLERİ VE PROGRAMLAMAYA GİRİŞ BİLGİSAYAR TEMELLERİ VE PROGRAMLAMAYA GİRİŞ Yrd.Doç.Dr. Emel ARSLAN earslan@istanbul.edu.tr C DİLİNDE FONKSİYONLAR C DİLİNDE FONKSİYONLAR C programlama dili fonksiyon olarak adlandırılan alt programların

Detaylı

KOCAELİ ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ. BİLGİSAYAR LABORATUVARI II FİNAL SINAVI SORU ve CEVAPLARI(I. ogr)

KOCAELİ ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ. BİLGİSAYAR LABORATUVARI II FİNAL SINAVI SORU ve CEVAPLARI(I. ogr) KOCAELİ ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ BİLGİSAYAR LABORATUVARI II FİNAL SINAVI SORU ve CEVAPLARI(I. ogr) 1. Kendisine gönderilen iki karakter dizisini birleştirip geriye tek bir dizi döndüren ve

Detaylı

YZM 2105 Nesneye Yönelik Programlama

YZM 2105 Nesneye Yönelik Programlama YZM 2105 Nesneye Yönelik Programlama Yrd. Doç. Dr. Deniz KILINÇ Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi Yazılım Mühendisliği 1 BÖLÜM - 2 C# Programlama Dili Elemanları Bu bölümde;

Detaylı

Programlama Dilleri 1. Ders 4: Diziler

Programlama Dilleri 1. Ders 4: Diziler Programlama Dilleri 1 Ders 4: Diziler Genel Bakış Tanım Dizilerin tanımlanması Dizilere ilk değer verilmesi Yerel ve Global diziler Dizilerin birbirine atanması Diziler ile ilgili örnekler Çalışma soruları

Detaylı

HSancak Nesne Tabanlı Programlama I Ders Notları

HSancak Nesne Tabanlı Programlama I Ders Notları SABİTLER VE DEĞİŞKENLER Değişken, verilerin bellekte geçici olarak kaydedilmesini ve gerektiğinde kullanılmasını sağlayan değerdir. Nesne tabanlı programlama dilinde değişken kullanımı diğer programlama

Detaylı

Kocaeli Üniversitesi C Bilgisayar Programlama Ara Sınavı Test Soruları

Kocaeli Üniversitesi C Bilgisayar Programlama Ara Sınavı Test Soruları Kocaeli Üniversitesi Mühendislik Fakültesi Harita Mühendisliği Bölümü ra Sınavı Test Soruları dı soyadı :... Öğrenci no :... İmza :... Tarih, Süre : 11.04.2018, 50 dak. Dikkat!!! Soru kitapçığında ve cevap

Detaylı

ALGORİTMA VE PROGRAMLAMA I

ALGORİTMA VE PROGRAMLAMA I ALGORİTMA VE PROGRAMLAMA I Yrd. Doç. Dr. Deniz KILINÇ deniz.kilinc@cbu.edu.tr YZM 1101 Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi Genel Bakış 2 Diziler Dizi Nedir? Dizilerin Bildirimi

Detaylı

NESNE YÖNELİMLİ PROGRAMLAMA HAFTA # 2

NESNE YÖNELİMLİ PROGRAMLAMA HAFTA # 2 NESNE YÖNELİMLİ PROGRAMLAMA HAFTA # 2 JAVA DA PROGRAM DENETİMİ VE OPERATÖRLER Java programlama dilinde temel tipleri ve nesneleri yönlendirmek ve değiştirmek için operatörler kullanılır. Atamalar sağ taraftaki

Detaylı