Diziler. Dizi Tanımı Dizi Elemanlarına Değer Atama Diziler ve Göstergeler 2-Boyutlu Diziler

Benzer belgeler
Diziler. Dizi Tanımı Dizi Elemanlarına Değer Atama Diziler ve Göstergeler 2-Boyutlu Diziler

scanf () Fonksiyonu Klavyeden veri okumak için kullanılır. Yapı olarak printf () fonksiyonu aynıdır. Kullanım biçimi:

DİZİLER-KATARLAR ALGORİTMA VE PROGRAMLAMA II

STRİNG DİZİLER(KATARLAR)

ALFASAYISAL BİLGİLER KARAKTER DİZİLERİ (STRING)

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

BİL1001 Bilgisayar Bilimlerine Giriş 1

Fonksiyonlar (Altprogram)

ALGORİTMA VE PROGRAMLAMA I DERS NOTU#8

Diziler (Arrays) Çok Boyutlu Diziler

Hafta 12 Karakter Tutan Diziler

Temel Bilgisayar Programlama Final Sınavı Çalışma Notları

C PROGRAMLAMA D İ L İ

Giriş. ENF102 Jeoloji

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

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

C++ Dersi: Nesne Tabanlı Programlama

C Konsol Giriş Çıkış Fonksiyonları

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

ALGORİTMA VE PROGRAMLAMA I

Eln 1001 Bilgisayar Programlama I

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

PROGRAMLAMAYA GİRİŞ DERS 2

ELN1002 BİLGİSAYAR PROGRAMLAMA 2

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

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

Telefon Rehberi Uygulaması

ÇOK BOYUTLU DİZİLER VE DİNAMİK BELLEK YÖNETİMİ İLE İLGİLİ ÖRNEKLER

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

Deney 7: Fonksiyon Tanımlama ve Parametre Aktarım Yöntemleri

ALGORİTMA VE PROGRAMLAMA I

String ve Karakter Dizileri. Yrd. Doç. Dr. Fehim KÖYLÜ Erciyes Üniversitesi Bilgisayar Mühendisliği Bölümü

Programlama Dilleri 1. Ders 4: Diziler

Bölüm 8, Yrd. Doç. Dr. A. Kadir YALDIR PAÜ Bilgisayar Mühendisliği Bölümü BÖLÜM 8: DİZİLER

BLM-111 PROGRAMLAMA DİLLERİ I. Ders-11 Karakter Diziler. Yrd. Doç. Dr. Ümit ATİLA

Temel Giriş/Çıkış Fonksiyonları

STRING (SÖZEL) İŞLEMLER. Yrd. Doç.Dr. Bülent Çobanoğlu

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

ALGORİTMA VE PROGRAMLAMA I

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

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

Programlama Dilleri Laboratuvarı

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

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

İstanbul Teknik Üniversitesi IEEE Öğrenci Kolu DİZİLER

Giris {\} /\ Suhap SAHIN Onur GÖK

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

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

Klavyeden girilen metnin karakter uzunluğu bulan C programı. Klavyeden girilen metin içerisindeki küçük ve büyük harf sayısını bulan C programı

Hazır Fonksiyonlar {\} /\ Suhap SAHIN Onur GÖK 1

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

BASİT C PROGRAMLARI Öğr.Gör.Dr. Mahmut YALÇIN

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

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

YAPILAR BİRLİKLER SAYMA SABİTLERİ/KÜMELERİ. 3. Hafta

BLM111 Programlama Dilleri I. Hafta 10 Diziler. Yrd. Doç. Dr. Caner ÖZCAN

2) /* Kullanıcıdan alınan iki sayının obebini alt fonksiyon yardımı ile hesaplayan C programı*/

BLM 111 ALGORİTMA VE PROGRAMLAMA I

Dizgiler. C dilinde karakter m şeklinde tek tırnak içerisinde yazılan ifadelerdir. Bu karakterlerin her biri aslında bir tamsayı ile ifade edilir.

BM102 BİLGİSAYAR PROGRAMLAMA II LABORATUVAR UYGULAMALARI. 3Hafta

8. Bölüm DİZİLER. tip dizi_ismi[eleman_sayısı]; Bütün diziler 0 ile baţlar.

Görsel Programlama 1

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

Hafta 13 Fonksiyonlar

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

Kocaeli Üniversitesi Bilgisayar Mühendisliği Programlama 2 Dersi Final Sınavı. A Grubu

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

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

2. Dereceden Denklemin Köklerini Bulan Program

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

elemanlarının gezilmesine yönelik bir örnek sunulmuştur, inceleyiniz.

C Programlama printf() Fonksiyonu

Hafta 11 Çok Boyutlu Diziler

ALGORİTMA VE PROGRAMLAMA II

Metin Dosyaları. Metin Dosyaları Dosya Açma ve Kapama Dosya Okuma ve Yazma Rastgele Erişim Standart Girdi/Çıktı Hata Kontrolü

C Programlama Dilininin Basit Yapıları

BİLG Dr. Mustafa T. Babagil 1

Adı Soyadı : Öğrenci No :

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

BLM 111 ALGORİTMA VE PROGRAMLAMA I

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

Final Sınavı Soruları Güz, Süre: 90 Dakika

GENEL GĐRĐŞ-ÇIKIŞ FONKSĐYONLARI. ENF102 Jeoloji 1. #include <stdio.h> printf Fonksiyonu ÖRNEK. printf

ALGORİTMA VE PROGRAMLAMA I

Özyineleme (Recursion)

/* Çember alanını hesaplar */

Eastern Mediterranean University Faculty of Arts & Sciences -- Department Of Mathematics BİLG213 BİLGİSAYAR PROGRAMLAMAYA GİRİŞ

C ile Uygulamalar 2 - Cevaplar

elemanlı bir dizide bir sinyalin 1 er saniye aralıklarla ölçülen gerilim değerleri tutulmaktadır. Bu sinyalin tepeden tepeye genliğini,

C dilinde if-else yapısı

ELN1001 BİLGİSAYAR PROGRAMLAMA I

Dr. Fatih AY Tel: fatihay@fatihay.net

Dizi nin Önemi. Telefon rehberindeki numaralar, haftanın günleri gibi v.b.

D İ Z İ L E R A R R A Y S

NESNE TABANLI PROGRAMLAMA Final Sınavı Cevapları

10. DOSYA GİRİŞ ÇIKIŞ FONKSİYONLARI

ALGORİTMA VE PROGRAMLAMA II

MATLAB/Değişkene Değer Atamak

C de Detaylı Üs Alma Programı. C# Dilinde Metot Tanımlama ve Yazdırma

Strings(Karakter Dizisi)

Transkript:

Diziler Dizi Tanımı Dizi Elemanlarına Değer Atama Diziler ve Göstergeler 2-Boyutlu Diziler

Dizi Tanımı Değişkenler aynı anda tek bir değer tutabilen temel değişkenler ve birden fazla değer saklayabilen bileşik değişkenler olmak üzere ikiye ayrılır. Temel değişkenler bellekte tek bir hücreyi tanımlayıp, içlerinde tek bir değeri tutabilirler. Diziler ise ardarda sıralanmış bellek hücreleridirler. Diziler bu bağlamda bileşik değişkenlerdir ve bellekte aynı anda birden fazla değerin saklamasını mümkün kılarlar.

Dizi Tanımı veri_tipi dizi_ismi [eleman_sayısı]; Bellek Görüntüsü:

Dizi Tanımı Örnek: int not[4]; int i; not[0]=20; 20 not[2]= not[0]+10; 20 30 i=0; not[i]=90; not[++i]=70; 90 70 30

Dizi Elemanlarına Değer Atama int a[3],b; scanf( %d, &b); a[2]=b; veya int a[3]; scanf( %d, &a[2]);

Dizi Elemanlarına Değer Atama Örnek:Kullanıcıdan alınan 5 tamsayı değerini bir dizide saklayan ve bu değerlerin ortalamasını bulan bir program yazalım #include <stdio.h> int main(void) { int a[5]; int i,toplam; double orta; /*Kullanici degerlerinin dizide saklanmasi*/ printf( Bes tamsayi giriniz: ); for(i=0;i<5;++i) scanf( %d,&a[i]); /*Toplam ve ortalamanin bulunmasi*/ toplam=0; for(i=0;i<5;++i) toplam=toplam+a[i]; orta= toplam/5.0; printf( Ortalama=%5.2f,orta); return (0); }

Diziler ve Göstergeler Bir dizi ismi aslında dizinin ilk elemanını gösteren sabit bir gösterge olarak yaratılır. 5 5

Diziler ve Göstergeler Gösterge Gösterimi Dizi Gösterimi *dizptr = 5; diz[0] = 5; *(dizptr + 1) = 6; diz[1] = 6; *(dizptr + 2) = 7; diz[2] = 7;...... *(dizptr + i) = 8; diz[i] = 8;

Diziler ve Göstergeler

Dizi Elemanının Fonksiyona Gönderilmesi Diziler ve Fonksiyonlar

Diziler ve Fonksiyonlar Dizinin Fonksiyona Gönderilmesi int a[5]={10,20,30,40,50}; a dizisini f() fonksiyonuna yollamak için aşağıdaki komutu kullanmalıyız. f(...,a,...); Bu fonksiyonun başlığı ise iki şekilde olabilir. void f(,int x[5], ) void f(,int x[], ) Fonksiyon parametresinde tanımlanan x dizisi yoluyla yapılan değişiklikler, gerçek parametre olan a dizisini etkileyecektir. Çünkü dizi ismi dizinin ilk elemanının yerini gösteren bir göstergedir ve kaynak parametresi gibi davranacaktır.

Diziler ve Fonksiyonlar Örnek: #include <stdio.h> void f1(int b[], int n); int main(void) { int i, a[]={1,2,3}; f1(a,3); printf("\nmain fonksiyonu "); for(i=0;i<3;++i) printf("%d", a[i]); return(0); } void f1(int b[], int n) { int i; printf("f1 fonksiyonu "); for(i=0;i<n;++i) { printf("%d", b[i]); b[i]=8; } } Çıktı: f1 fonksiyonu 123 main fonksiyonu 888

Dizi Yerine Gösterge Kullanımı Diziler ve Fonksiyonlar

veri_tipi dizi_ismi[satır_büyüklüğü][sütun_ büyüklüğü]; int not[3][30]; 2-Boyutlu Diziler Her elemanı bir boyutlu dizi olan yapılara ise çok boyutlu diziler denir. Bu bölümde matris veya tablo olarak da bilinen 2-boyutlu dizilere değineceğiz.

2-Boyutlu Diziler 2-Boyutlu Dizilere Değer Atama scanf( %d, &not[29][0]); not[1][1]=90; Tanımlama Sırasında Değer Atama satır yönünde atama

Tanımlama Sırasında Değer Atama 2-Boyutlu Diziler

2-Boyutlu Diziler Tanımlama Sonrasında Satır Yönünde Değer Atama int a[30][3]; for(satir=0; satir<30; ++satir) { for (sutun=0;sutun<3; ++sutun) a[satir][sutun]=0; }

2-Boyutlu Diziler Tanımlama Sonrasında Sütun Yönünde Değer Atama int a[30][3]; for(sutun=0; sutun <3; ++sutun) for (satir=0;satir<30;++satir) a[satir][sutun]=0;......

2-Boyutlu Diziler Örnek:Kullanıcının, 30 kişilik bir sınıftaki her öğrenci için 3 er sınav notu gireceği ve her sınav için sınıf ortalamasının ekranda gösterileceği bir program yazınız. #include <stdio.h> int main(void) { int not1[5][3]; int i,j,toplam; double orta; /* Kullanicidan notlarin alinmasi*/ for(i=0;i<5;++i) { printf("%d. ogrenci notlari:",i+1); for(j=0;j<3;++j) scanf("%d", &not1[i][j]); } /*Her sinavin ortalamasinin bulunmasi*/ for(j=0;j<3;++j) { toplam=0; for(i=0;i<5;++i) toplam+=not1[i][j]; orta=toplam/5.0; printf("%d. sinav ortalamasi: %5.2f\n",j+1,orta); } return (0); }

2-Boyutlu Diziler 2-Boyutlu Diziler ve Fonksiyonlar Dizi tanımı int a[2][3]={1,2,3,4,5,6}; Fonksiyon çağırma f1(,a, ); Fonksiyon başlığı f1(, int b[][3], );

2-Boyutlu Diziler Örnek: Öğrencilerin sınav ortalamalarını bulacak bir program yazalım. Bu program için ortalama() isimli bir fonksiyon kullanalım. ortalama() fonksiyonu çağırıldığı yerden 2-boyutlu bir dizi alır, dizinin her satırının ortalamasını bulup, tek boyutlu bir başka dizide saklar ve ortalamaları tutan bu tek boyutlu diziyi çağırıldığı yere geri döndürür.

#include<stdio.h> #include<conio.h> void ortalama(int ogr_sa,int sinav_sa, int not1[][3], double orta[]) { double toplam; int i,j; for(i=0;i<ogr_sa;++i) { toplam=0; for(j=0;j<sinav_sa;++j) toplam+=not1[i][j]; orta[i]=toplam/3.0; } } int main(void) { int test[30][3]; int i,j,toplam; double averaj[30]; for(i=0;i<30;++i) /*Kullanicidan notlarin alinmasi*/ { printf("%d. ogrenci notlari:", i+1); for(j=0;j<3;++j) scanf("%d",&test[i][j]); } ortalama(30,3,test,averaj) ; /*Her ogrencinin ortalamasinin bulunmasi*/ for(i=0;i<30;++i) printf("%d.ogrenci ortalamasi:%5.2f\n",i+1, averaj[i]); }

Dizgiler Dizgi Tanımı Dizgi Girdi İşlemleri Dizgi Çıktı İşlemleri Dizgi Fonksiyonları Karakter Fonksiyonları Gösterge Dizgileri

Dizgi Tanımı İki çift tırnak işareti ve (string) adı verilmektedir. içinde tanımlanmış olan sıralı karakterler bütününe dizgi Dizgi Açıklama Merhaba 7 karakter içeren bir dizgi Bu bir dizgi 12 karakter içeren dizgi. B Bir karakter içeren bir dizgi Boş dizgi

Dizgi Tanımı char dizi_adı[uzunluk] ; char kelime[11]; kelime[0] = A ;

Dizgi Tanımı kelime[1] = l ; kelime[2] = i ; kelime[3] = \0 ; Bir dizginin sonu boş karakter (NULL character) olan \0 karakteri ile biter.

Dizgi Tanımı Dizgileri tanımlarken ilk değerini de atayabiliriz. char dizi_adı[uzunluk] = dizgi_sabiti; char ad[30]= IRMAK ; ad[0]= E ;

Dizgi Tanımı Dizgi tanımlamalarını, dizgi uzunluğunu dizi tanımlaması sırasında verilmeden ve ilk değerini atayarak da yapabiliriz. char dizgi[] = dizgi_sabiti; char cumle[] = Bilim Kurgu ;

Dizgi Tanımı Dizgiler tanımlanırken göstergeler kullanılarak da aşağıdaki gibi tanımlanabilir. Çünkü her bir dizgi aslında bir dizi ile tanımlanmıştır. char *dizgi_adı = dizgi_sabiti; char *cumle = Bilim Kurgu ;

Karakter dizisine değer yükleme Üç farklı yolla yapılır: o static char kk[]= Ankara ; /* burada program derlenirken karakter uzunluğu*/ o static char kk[]={ A, n, k, a, r, a, \0 }; o static char kk[7]= Ankara ;

Dizgi Tanımı Örnek: ileriki bölümlerde açıklanacak bir yapı char cumle[] = "Merhaba Dunya"; int say = 0; int i; for (i = 0; cumle[i]!= '\0'; i++) say++; printf("%s %d karakter icerir.", cumle, say); Çıktı: Merhaba Dunya 13 karakter icerir.

ÖRNEK: Üniversitenizin adını ekrana yazdıran kodu yazınız? #include <stdio.h> #include <conio.h> int main() { char kk[]= Gazi Universitesi ; printf( Universiteniz %s dir\n, kk); return 0; }

Dizgi Girdi İşlemleri scanf() fonksiyonu girilen değerler içinde boşluk veya enter işareti ( ) görünceye kadar okuma işine devam eder Örnek: scanf ( %s, dizgi_adı); char kelime[11]; scanf ( %s, kelime);

Dizgi Girdi İşlemleri char kelime[11]; scanf ( %7s, kelime); Girdi kelime Programlama P r o g r a m \0 Prog. P r o g. \0

Örnek: char cumle[15]; gets (cumle); gets (dizgi_adı); Dizgi Girdi İşlemleri gets() fonksiyonu enter ya da girdi sonunu belirleyen (ctrl+z) karakterini görünceye kadar girdiyi okumaya devam eder ve okuduğu değerin sonuna boş karakterini \0 otomatik olarak ekleyerek dizgi_adı na bu değerleri atar.

Dizgi Girdi İşlemleri sscanf() fonksiyonu kullanıldığında girdi bilgisi klavyeden değil bir başka dizgiden alınır. sscanf (dizgi_adı, format_dizgisi, girdi_listesi); Örnek: char cumle[]="hakan bugun 40 yasina girdi"; char dizgi1[20], dizgi2[20]; int i; sscanf (cumle,"%s %s %d",dizgi1,dizgi2,&i); printf ("%s --> %d\n",dizgi1, i);

printf() fonksiyonunu dizgilerin bastırılması amacıyla da kullanabiliriz. Dizgi Çıktı İşlemleri printf ( %s, dizgi_adı); Örnek: char dizgi1[15]= merhaba ; char dizgi2[]= iyi ;

Dizgi Çıktı İşlemleri puts() fonksiyonu standart çıktı birimine yani ekrana dizginin değerinin bastırılmasını sağlar ve daha sonra yeni satır karakterini otomatik olarak çıktının sonuna ekler. puts (dizgi_adı); Örnek: char dizgi1[15]= merhaba ; char dizgi2[]= iyi ; char dizgi1[]="merhaba"; char dizgi2[]="nasilsin?"; puts(dizgi1); puts(dizgi2); Çıktı: merhaba nasilsin?

Dizgi Çıktı İşlemleri sprintf() fonksiyonu farklı değişkenlerin değerini belirli bir format dizgisine uygun olarak yeni bir dizginin içine kopyalar. sprintf (dizgi_adı, format_dizgisi, liste); Örnek: float benzin = 47.0; float km = 300; char benzin_km[80]; sprintf(benzin_km,"km.de %5.3f lt. benzin yakiyor", km/benzin); printf ("%s ", benzin_km); Çıktı: km. de 6.383 lt. benzin yakiyor

Dizgi Fonksiyonları Dizgi işleme amacıyla hazırlanmış programlarda kolaylık sağlayabilecek bir çok fonksiyon <string.h> kütüphanesi içinde tanımlanmıştır. Bir dizginin içindeki karakter sayısını bulmak için strlen() fonksiyonu kullanılır. strlen (dizgi_adı); Örnek: int uzunluk; char dizgi[10] = Ali uzunluk = strlen(dizgi); 3

Dizgi Fonksiyonları strcpy() fonksiyonu dizgi kopyalama fonksiyonudur. strcpy (dizgi2_adı, dizgi1_adı); Örnek: char dizgi1[13]="iyi gunler"; char dizgi2[13]; strcpy (dizgi2, dizgi1);

Dizgi Fonksiyonları strncpy() fonksiyonu dizgi1_adı nın içindeki ilk n karakterin dizgi2_adı na kopyalanmasını sağlar. strncpy (dizgi2_adı, dizgi1_adı, n); Örnek: char isim[30]= Onur Ahmet Uslu ; char soyad[10], ilkad[10], ortaad[10]; strncpy(ilkad, isim,4); ilkad[4]= \0 ; strncpy(ortaad, &isim[5], 5); ortaad[4]= \0 ; strcpy(soyad, &isim[11]);

Dizgi Fonksiyonları strcat() fonksiyonu bir dizginin sonuna diğer bir dizginin yapıştırılmasını sağlar. strcat (dizgi1_adı, dizgi2_adı); Örnek: char dizgi1[12]="iyi gunler "; char dizgi2[12]= Nasilsiniz? ; strcat (dizgi1, dizgi2); printf ("\ndizgi 1: %s %d",dizgi1, strlen(dizgi1)); printf ("\ndizgi 2: %s ",dizgi2);

Dizgi Fonksiyonları strncat() fonksiyonu dizgi2_adı nın ilk n karakterinin dizgi1_adı nın sonuna yapıştırılmasını sağlar. strncat (dizgi1_adı, dizgi2_adı, n); Örnek: char dizgi1[15]="iyi gunler "; char dizgi2[15]= Nasilsiniz? ; strncat (dizgi1, dizgi2, 5); printf ("\ndizgi 1: %s ",dizgi1); printf ("\ndizgi 2: %s ",dizgi2); Çıktı: dizgi 1: iyi gunler Nasil dizgi 2: Nasilsiniz?

Dizgi Fonksiyonları strcmp() fonksiyonu iki dizginin karşılaştırılmasını sağlar. strcmp (dizgi1_adı, dizgi2_adı);

Dizgi Fonksiyonları strncmp() fonksiyonu iki dizginin ilk n karakterlerinin karşılaştırılmasını sağlar. strncmp (dizgi1_adı, dizgi2_adı, n); Örnek: char dizgi1[13]="iyi gunler "; char dizgi2[13]= "iyi misiniz?"; printf ("\n%d ",strncmp (dizgi1, dizgi2, 3)); Çıktı: 0

Dizgi Fonksiyonları strstr() fonksiyonu bir dizginin içinde diğer bir dizgiyi arar. strstr(dizgi1_adı, dizgi2_adı); Örnek: char dizgi1[13]="iyi gunler "; char dizgi2[13]= "gun"; if (strstr (dizgi1, dizgi2) == '\0') printf ("dizgi2 dizgi1 in icinde YOK"); else printf ("dizgi2 dizgi1 in icinde VAR"); Çıktı: dizgi2 dizgi1 in icinde VAR

Dizgi Fonksiyonları Örnek: Kullanıcının girdiği bir dizgiyi okuyarak, bu dizginin tersini bulan bir program yazınız. #include <string.h> int main(void) { char str2[30], str1[30]; int i, uzunluk; printf("bir dizgi giriniz:"); gets(str1); uzunluk=strlen(str1); for(i=0;i<=uzunluk;++i) strncpy(&str2[i],&str1[uzunluk-i-1],1); printf("%s", str2); return(0); } Çıktı: Bir dizgi giriniz:kitap patik

Karakter Fonksiyonları char k; Fonksiyon isalpha(k) isdigit(k) islower(k) isupper(k) isspace(k) tolower(k) toupper(k) Döndürdüğü Değer k bir harf ise, sıfırdan farklı, diğer durumlarda sıfır k bir sayı ise, sıfırdan farklı, diğer durumlarda sıfır k küçük bir harf ise, sıfırdan farklı, diğer durumlarda sıfır. k büyük bir harf ise, sıfırdan farklı, diğer durumlarda sıfır k boşluk, yeni satır veya tab karakteri gibi bir karakterse, sıfırdan farklı, diğer durumlarda sıfır k nın değerinin küçük harf karşılığı k nın değerinin büyük harf karşılığı

Karakter Fonksiyonları Örnek:Kullanıcıdan isimler ve notların karışık olarak girildiği bir dizgi alan ve bu dizginin içindeki isimleri ekranda gösteren bir program yazınız. #include <stdio.h> #include <ctype.h> #include <string.h> int main(void) { char str1[70]; int k, i; printf("bir dizgi giriniz:"); gets(str1); k=strlen(str1); for(i=0;i<=k;++i) if(isalpha(str1[i])) printf("%c", str1[i]); return(0); } Çıktı: Bir dizgi giriniz:o12s34m6a7n 100 Osman

Diziler ve göstergeleri kullanarak da dizgileri tanımlayabiliriz. Gösterge Dizgileri Örnek: char diz1[4][4]; char *diz2[4];

Gösterge Dizgileri Örnek: char mevsimler[4]={ Sonbahar, Kis, Ilkbahar, Yaz };

ÖRNEK: Klavyeden doğum yerinizi girdiğinizde bunu görüntüleyen program yazınız? #include <stdio.h> # include <conio.h> int main() { char kk[10]; printf( Doğum yerinizi yazınız\n ); fgets(kk,20,stdin); printf( Doğum yeriniz %s,kk); return 0; }

ÖRNEK: Klavyeden adınızı ve soyadınızı giren ve ekrana görüntüleyen bir program yazınız? #include <stdio.h> # include <conio.h> int main() { char kk[20]; printf( Adınızı ve Soyadinizi yaziniz\n ); fgets(kk,20,stdin); /*Çok kelimelerin hepsini alır*/ Scanf( %s,kk); /*Tek kelime alır*/ printf( Adiniz %s,kk); return 0; }

Ödev 4 1. Bir boyutlu bir dizi içine klavyeden girilmek sureti ile atanacak sayılardan sırasına bağlı olarak sorulduğunda sayıyı gösterecek programı yapınız. 2. 2x2 boyutunda bir matrisin sıra ile değerlerini soran ve sonunda matrisin elemanlarını satır ve sütunları belli olacak şekilde ekranda gösteren programı yapınız 3. Sizden sırası ile önce adınızı sonra soyadınızı yaşınızı ve telefonunuz sorup, işlem sonunda hepsini tek satırda gösteren programı yapınız 4. 2x2 boyutunda bir matrisin sıra ile değerlerini soran ve terisini başka bir matrise atayarak matrisi ekranda gösteren programı yapınız 5. Girilecek bir ismin ilk harfi büyük diğerleri küçük olacak şekilde ekranda gösteren programı yapınız.