Strings(Karakter Dizisi)
|
|
|
- Serhat Levent Erdal
- 7 yıl önce
- İzleme sayısı:
Transkript
1 Strings(Karakter Dizisi) 0 {\ /\ Suhap SAHIN Onur GÖK 1
2 Tanımlama ve Kullanım char ad[20]; printf("adinizi girin: "); scanf("%s", ad); printf("\nmerhaba %s\n\n", ad); 2
3 Tanımlama ve Kullanım char ad[20]; printf("adinizi girin: "); scanf("%s", ad); printf("\nmerhaba %s\n\n", ad); 3
4 Tanımlama ve Kullanım char ad[20]; printf("adinizi girin: "); scanf("%s", ad); printf("\nmerhaba %s\n\n", ad); 4
5 Tanımlama ve Kullanım char ad[20]; printf("adinizi girin: "); scanf("%s", ad); printf("\nmerhaba %s\n\n", ad); 5
6 Tanımlama ve Kullanım // Tanimlarken deger atama char s1[20] = "deneme2"; printf("%s\n", s1); 6
7 Tanımlama ve Kullanım // Tanimlarken deger atama char s1[20] = "deneme2"; printf("%s\n", s1); 7
8 Tanımlama ve Kullanım // sabit yapma const char *s2 = "deneme3"; printf("%s\n", s2); 8
9 Tanımlama ve Kullanım // sabit yapma const char *s2 = "deneme3"; printf("%s\n", s2); 9
10 Tanımlama ve Kullanım // dizinin boyutunu atanan degere gore otomatik belirleme char s3[] = "deneme4"; printf("%s\n", s3); 10
11 Tanımlama ve Kullanım // dizinin boyutunu atanan degere gore otomatik belirleme char s3[] = "deneme4"; printf("%s\n", s3); 11
12 Sonlandırma Karakteri char kelime[20]; printf("bir kelime girin: "); scanf("%s", kelime); int i; // tamamini karakter karakter yazdirirsak, girilmemis kisim rastgele olur for (i = 0 ; i < 20 ; i++) printf("%c", kelime[i]); printf("\n\n"); 12
13 Sonlandırma Karakteri char kelime[20]; printf("bir kelime girin: "); scanf("%s", kelime); int i; // tamamini karakter karakter yazdirirsak, girilmemis kisim rastgele olur for (i = 0 ; i < 20 ; i++) printf("%c", kelime[i]); printf("\n\n"); 13
14 Sonlandırma Karakteri char kelime[20]; printf("bir kelime girin: "); scanf("%s", kelime); int i; // tamamini karakter karakter yazdirirsak, girilmemis kisim rastgele olur for (i = 0 ; i < 20 ; i++) printf("%c", kelime[i]); printf("\n\n"); 14
15 Sonlandırma Karakteri char kelime[20]; printf("bir kelime girin: "); scanf("%s", kelime); int i; // tamamini karakter karakter yazdirirsak, girilmemis kisim rastgele olur for (i = 0 ; i < 20 ; i++) printf("%c", kelime[i]); printf("\n\n"); 15
16 Sonlandırma Karakteri char kelime[20]; printf("bir kelime girin: "); scanf("%s", kelime); int i; // stringin bittigini anlamak icin '\0' karakteri kullaniliyor // printf %s asagidaki dongu gibi calisiyor for (i = 0 ; kelime[i]!= '\0' ; i++) printf("%c", kelime[i]); printf("\n\n"); 16
17 Sonlandırma Karakteri char kelime[20]; printf("bir kelime girin: "); scanf("%s", kelime); int i; // stringin bittigini anlamak icin '\0' karakteri kullaniliyor // printf %s asagidaki dongu gibi calisiyor for (i = 0 ; kelime[i]!= '\0' ; i++) printf("%c", kelime[i]); printf("\n\n"); 17
18 Sonlandırma Karakteri char kelime[20]; printf("bir kelime girin: "); scanf("%s", kelime); int i; // stringin bittigini anlamak icin '\0' karakteri kullaniliyor // printf %s asagidaki dongu gibi calisiyor for (i = 0 ; kelime[i]!= '\0' ; i++) printf("%c", kelime[i]); printf("\n\n"); 18
19 Sonlandırma Karakteri char kelime[20]; printf("bir kelime girin: "); scanf("%s", kelime); int i; // stringin bittigini anlamak icin '\0' karakteri kullaniliyor // printf %s asagidaki dongu gibi calisiyor for (i = 0 ; kelime[i]!= '\0' ; i++) printf("%c", kelime[i]); printf("\n\n"); 19
20 Karakterleri Say Tersten Yazdır char kelime[20]; int karakter_sayisi; int i; printf("bir kelime girin: "); // NOT: birden fazla kelime girilirse ilkini okur. bosluk, tab ve enter //kelime sonunu belirler scanf("%s", kelime); printf("girilen kelime: %s\n", kelime); 20
21 Karakterleri Say Tersten Yazdır char kelime[20]; int karakter_sayisi; int i; printf("bir kelime girin: "); // NOT: birden fazla kelime girilirse ilkini okur. bosluk, tab ve enter //kelime sonunu belirler scanf("%s", kelime); printf("girilen kelime: %s\n", kelime); 21
22 Karakterleri Say Tersten Yazdır char kelime[20]; int karakter_sayisi; int i; printf("bir kelime girin: "); // NOT: birden fazla kelime girilirse ilkini okur. bosluk, tab ve enter //kelime sonunu belirler scanf("%s", kelime); printf("girilen kelime: %s\n", kelime); 22
23 Karakterleri Say Tersten Yazdır char kelime[20]; int karakter_sayisi; int i; printf("bir kelime girin: "); // NOT: birden fazla kelime girilirse ilkini okur. bosluk, tab ve enter //kelime sonunu belirler scanf("%s", kelime); printf("girilen kelime: %s\n", kelime); 23
24 Karakterleri Say Tersten Yazdır // karakter sayisini sayma islemi karakter_sayisi = 0; while (kelime[karakter_sayisi]!= '\0') karakter_sayisi++; printf("karakter sayisi: %d\n", karakter_sayisi); // karakter sayisini sayma islemi for (karakter_sayisi = 0 ; kelime[karakter_sayisi]!= '\0' ; karakter_sayisi++) { /* bos dongu. sadece harf sayisini arttiriyor */ printf("karakter sayisi: %d\n", karakter_sayisi); 24
25 Karakterleri Say Tersten Yazdır // karakter sayisini sayma islemi karakter_sayisi = 0; while (kelime[karakter_sayisi]!= '\0') karakter_sayisi++; printf("karakter sayisi: %d\n", karakter_sayisi); // karakter sayisini sayma islemi for (karakter_sayisi = 0 ; kelime[karakter_sayisi]!= '\0' ; karakter_sayisi++) { /* bos dongu. sadece harf sayisini arttiriyor */ printf("karakter sayisi: %d\n", karakter_sayisi); 25
26 Karakterleri Say Tersten Yazdır // tersten yazdirma printf("tersten yazilisi: "); for (i = karakter_sayisi-1 ; i >= 0; i--) printf("%c", kelime[i]); printf("\n"); 26
27 gets ve puts fonksiyonları char s[100]; // gets fonksiyonu ile cumle okunabilir (bosluklar dahil). // scanf %s ile kelime okunabiliyor. scanf %s bosluklari almiyor. printf("cumle girin: "); gets(s); printf("cumle: "); puts(s); 27
28 gets ve puts fonksiyonları char s[100]; // gets fonksiyonu ile cumle okunabilir (bosluklar dahil). // scanf %s ile kelime okunabiliyor. scanf %s bosluklari almiyor. printf("cumle girin: "); gets(s); printf("cumle: "); puts(s); 28
29 gets ve puts fonksiyonları char s[100]; // gets fonksiyonu ile cumle okunabilir (bosluklar dahil). // scanf %s ile kelime okunabiliyor. scanf %s bosluklari almiyor. printf("cumle girin: "); gets(s); printf("cumle: "); puts(s); 29
30 gets fonksiyonunun hatası int a = 10; char yazi[8]; int b = 20; printf("a: %d ve b: %d\n\n", a, b); printf("programi 8 veya daha fazla karakter girerek test edin\n"); printf("yazi girin: "); gets(yazi); // scanf'de de ayni problem var // scanf("%s", yazi); printf("girilen kelime: "); puts(yazi); printf("\na: %d ve b: %d\n", a, b); 30
31 gets fonksiyonunun hatası int a = 10; char yazi[8]; int b = 20; printf("a: %d ve b: %d\n\n", a, b); printf("programi 8 veya daha fazla karakter girerek test edin\n"); printf("yazi girin: "); gets(yazi); // scanf'de de ayni problem var // scanf("%s", yazi); printf("girilen kelime: "); puts(yazi); printf("\na: %d ve b: %d\n", a, b); 31
32 gets fonksiyonunun hatası int a = 10; char yazi[8]; int b = 20; printf("a: %d ve b: %d\n\n", a, b); printf("programi 8 veya daha fazla karakter girerek test edin\n"); printf("yazi girin: "); gets(yazi); // scanf'de de ayni problem var // scanf("%s", yazi); printf("girilen kelime: "); puts(yazi); printf("\na: %d ve b: %d\n", a, b); 32
33 gets fonksiyonunun hatası int a = 10; char yazi[8]; int b = 20; printf("a: %d ve b: %d\n\n", a, b); printf("programi 8 veya daha fazla karakter girerek test edin\n"); printf("yazi girin: "); gets(yazi); // scanf'de de ayni problem var // scanf("%s", yazi); printf("girilen kelime: "); puts(yazi); printf("\na: %d ve b: %d\n", a, b); 33
34 gets fonksiyonu!!! ISO C11 (2011) standartında gets fonksiyonu kaldırıldı. Derste kullanılan derleyici C99 (1999) standartını kullanmaktadır. Gets fonksiyonu güvenlik açıgı (buffer overflow) olusturmaktadır. Büyük bir string girerek programın akısını bozulabilmektedir. string yerine makine kodu girilirse, programın içindeki verilere hatta bilgisayarın dosya sistemine erisime bile sebep olabilir. Buffer overflow problemi scanf %s ile de ortaya çıkabilir. Dolayısıyla eleman sayısına göre okuma yapılmalıdır. Örnegin string 50 elemanlı ise scanf( %49s, str); seklinde kullanılmalıdır. 34
35 gets yerine fgets Kullanılısı; char *fgets(char *str, int n, FILE *stream) Parametreler; *str: Okunan string in saklandıgı yeri tutan isaretçi n: Okunacak maksimum karakter sayısı (son bos karakter de dahil) *stream: Sring in okundugu yeri tutan isaretçi 35
36 gets yerine fgets Kullanılısı; char *fgets(char *str, int n, FILE *stream) Geri dönüs degeri; islem basarılı ise, str isaretçisi döner Dosya Sonu ile karsılasıldıgında veya hiçbir karakter okunmazsa, str isaretçisinin içerigi degismeden kalır ve bos isaretçisi (Null Pointer) döndürülür. döndürülür. Bir hata olusursa, bos isaretçi(null Pointer) döner. Bir hata olusursa, bos isaretçi(null Pointer) döner. 36
37 gets fonksiyonunun alternatifi Uyarı: fgets fonksiyonu kelimenin sonunda enter ( int a = 10; \n ) karakteri bırakır. Bundan dolayı fgets den char s[8]; // 7 karakter + 1 sonlandirma karakteri hemen sigabilir sonra sondaki \n karakterinin yerine \0 a int b = 20; atanmalıdır. printf("a: %d ve b: %d\n\n", a, b); printf("programi 8 veya daha fazla karakter Örnek: girerek test edin\n"); printf("kelime girin: "); fgets(s, 8, stdin); fgets(s, 8, stdin); // gets yerine bu sekilde kullanabiliriz s[strlen(-1)]='\0'; // sondaki \n yerine \0 ata // scanf ile kelime okumak istersek // scanf("%7s", s); printf("girilen kelime: "); puts(s); printf("\na: %d ve b: %d\n", a, b); 37
38 gets fonksiyonunun alternatifi int a = 10; char s[8]; // 7 karakter + 1 sonlandirma karakteri sigabilir int b = 20; printf("a: %d ve b: %d\n\n", a, b); printf("programi 8 veya daha fazla karakter girerek test edin\n"); printf("kelime girin: "); fgets(s, 8, stdin); // gets yerine bu sekilde kullanabiliriz // scanf ile kelime okumak istersek // scanf("%7s", s); printf("girilen kelime: "); puts(s); printf("\na: %d ve b: %d\n", a, b); 38
39 gets fonksiyonunun alternatifi int a = 10; char s[8]; // 7 karakter + 1 sonlandirma karakteri sigabilir int b = 20; printf("a: %d ve b: %d\n\n", a, b); printf("programi 8 veya daha fazla karakter girerek test edin\n"); printf("kelime girin: "); fgets(s, 8, stdin); // gets yerine bu sekilde kullanabiliriz // scanf ile kelime okumak istersek // scanf("%7s", s); printf("girilen kelime: "); puts(s); printf("\na: %d ve b: %d\n", a, b); 39
40 gets fonksiyonunun alternatifi int a = 10; char s[8]; // 7 karakter + 1 sonlandirma karakteri sigabilir int b = 20; printf("a: %d ve b: %d\n\n", a, b); printf("programi 8 veya daha fazla karakter girerek test edin\n"); printf("kelime girin: "); fgets(s, 8, stdin); // gets yerine bu sekilde kullanabiliriz // scanf ile kelime okumak istersek // scanf("%7s", s); printf("girilen kelime: "); puts(s); printf("\na: %d ve b: %d\n", a, b); 40
41 string içinde karakter arama char cumle[100]; printf("bir cumle girin: "); fgets(cumle, 100, stdin); // gets yerine bu sekilde kullanabiliriz // gets(cumle); printf("cumlenin uzunlugu: %d\n", karakter_sayisi(cumle)); int yer = karakter_ara(cumle, 'a'); if (yer == -1) printf("cumlede a karakteri yok\n"); else printf("cumlede a karakteri %d. indexte var\n", yer); Uyarı: Bu işlemi yapan hazır fonksiyon C kütüphanesinde vardır. 41
42 string içinde karakter arama char cumle[100]; printf("bir cumle girin: "); fgets(cumle, 100, stdin); // gets yerine bu sekilde kullanabiliriz // gets(cumle); printf("cumlenin uzunlugu: %d\n", karakter_sayisi(cumle)); int yer = karakter_ara(cumle, 'a'); if (yer == -1) printf("cumlede a karakteri yok\n"); else printf("cumlede a karakteri %d. indexte var\n", yer); 42
43 string içinde karakter arama char cumle[100]; printf("bir cumle girin: "); fgets(cumle, 100, stdin); // gets yerine bu sekilde kullanabiliriz // gets(cumle); printf("cumlenin uzunlugu: %d\n", karakter_sayisi(cumle)); int yer = karakter_ara(cumle, 'a'); if (yer == -1) printf("cumlede a karakteri yok\n"); else printf("cumlede a karakteri %d. indexte var\n", yer); 43
44 string içinde karakter arama char cumle[100]; printf("bir cumle girin: "); fgets(cumle, 100, stdin); // gets yerine bu sekilde kullanabiliriz // gets(cumle); printf("cumlenin uzunlugu: %d\n", karakter_sayisi(cumle)); int yer = karakter_ara(cumle, 'a'); if (yer == -1) printf("cumlede a karakteri yok\n"); else printf("cumlede a karakteri %d. indexte var\n", yer); 44
45 string içinde karakter arama int karakter_sayisi(const char *s) { int i; for (i = 0 ; s[i]!= '\0' ; i++) { /* islem yapmadan say */ return i; int karakter_ara(const char *s, char c) { int i; for (i = 0 ; s[i]!= '\0' ; i++) { if (s[i] == c) return i; return -1; 45
46 string içinde karakter arama int karakter_sayisi(const char *s) { int i; for (i = 0 ; s[i]!= '\0' ; i++) { /* islem yapmadan say */ return i; int karakter_ara(const char *s, char c) { int i; for (i = 0 ; s[i]!= '\0' ; i++) { if (s[i] == c) return i; return -1; 46
47 string birlestirme Uyarı: Bu işlemi yapan hazır fonksiyon C kütüphanesinde vardır. char cumle_1[100]; char cumle_2[50]; printf("bir cumle girin: "); fgets(cumle_1, 50, stdin); // gets yerine bu sekilde kullanabiliriz printf("eklenecek cumle girin: "); fgets(cumle_2, 50, stdin); // gets yerine bu sekilde kullanabiliriz // cumle_1'in sonuna cumle_2'yi ekle string_ekle(cumle_1, cumle_2); printf("ikinci cumle, birinci cumleye eklendi.\n\n"); puts(cumle_1); 47
48 string birlestirme char cumle_1[100]; char cumle_2[50]; printf("bir cumle girin: "); fgets(cumle_1, 50, stdin); // gets yerine bu sekilde kullanabiliriz printf("eklenecek cumle girin: "); fgets(cumle_2, 50, stdin); // gets yerine bu sekilde kullanabiliriz // cumle_1'in sonuna cumle_2'yi ekle string_ekle(cumle_1, cumle_2); printf("ikinci cumle, birinci cumleye eklendi.\n\n"); puts(cumle_1); 48
49 string birlestirme char cumle_1[100]; char cumle_2[50]; printf("bir cumle girin: "); fgets(cumle_1, 50, stdin); printf("eklenecek cumle girin: "); fgets(cumle_2, 50, stdin); // gets yerine bu sekilde kullanabiliriz // cumle_1'in sonuna cumle_2'yi ekle string_ekle(cumle_1, cumle_2); printf("ikinci cumle, birinci cumleye eklendi.\n\n"); puts(cumle_1); 49
50 string birlestirme char cumle_1[100]; char cumle_2[50]; printf("bir cumle girin: "); fgets(cumle_1, 50, stdin); printf("eklenecek cumle girin: "); fgets(cumle_2, 50, stdin); // cumle_1'in sonuna cumle_2'yi ekle string_ekle(cumle_1, cumle_2); printf("ikinci cumle, birinci cumleye eklendi.\n\n"); puts(cumle_1); 50
51 string birlestirme char cumle_1[100]; char cumle_2[50]; printf("bir cumle girin: "); fgets(cumle_1, 50, stdin); printf("eklenecek cumle girin: "); fgets(cumle_2, 50, stdin); // cumle_1'in sonuna cumle_2'yi ekle string_ekle(cumle_1, cumle_2); printf("ikinci cumle, birinci cumleye eklendi.\n\n"); puts(cumle_1); 51
52 string birlestirme int karakter_sayisi(const char *s) { int i; for (i = 0 ; s[i]!= '\0' ; i++) { /* islem yapmadan say */ return i; // bastaki isimli stringe, sondaki isimli stringi ekler void string_ekle(char *bastaki, const char *sondaki) { int bastaki_n = karakter_sayisi(bastaki); int sondaki_n = karakter_sayisi(sondaki); int i; for (i = 0 ; i < sondaki_n ; i++) bastaki[i+bastaki_n] = sondaki[i]; bastaki[bastaki_n+sondaki_n] = '\0'; 52
53 string birlestirme int karakter_sayisi(const char *s) { int i; for (i = 0 ; s[i]!= '\0' ; i++) { /* islem yapmadan say */ return i; // bastaki isimli stringe, sondaki isimli stringi ekler void string_ekle(char *bastaki, const char *sondaki) { int bastaki_n = karakter_sayisi(bastaki); int sondaki_n = karakter_sayisi(sondaki); int i; for (i = 0 ; i < sondaki_n ; i++) bastaki[i+bastaki_n] = sondaki[i]; bastaki[bastaki_n+sondaki_n] = '\0'; 53
54 string birlestirme ba k [0] 'B' *bastaki ba k [1] ba k [2] İ R char cumle_1[3] = {'B', 'İ', 'R' char cumle_2[3] = {'İ', 'K', 'İ' int bastaki_n = karakter_sayisi(bastaki); 105 so k [0] İ *sondaki int sondaki_n = karakter_sayisi(sondaki); so k [1] K so k [2] İ 54
55 string birlestirme ba k [0] 'B' *bastaki int bastaki_n = 3 int sondaki_n = 3 ba k [1] ba k [2] 103 İ R for (i = 0 ; i < sondaki_n ; i++) bastaki[i+bastaki_n] = sondaki[i]; so k [0] İ *sondaki for (i = 0 ; i < 3 ; i++) bastaki[i+3] = sondaki[i]; so k [1] K so k [2] İ 55
56 string birlestirme ba k [0] ba k [1] ba k [2] ba k [3] ba k [4] ba k [5] 'B' İ R İ K İ *bastaki bastaki[bastaki_n+sondaki_n] = '\0'; bastaki[3+3] = '\0'; ba k [6] \
57 string birlestirme int karakter_sayisi(const char *s) { int i; for (i = 0 ; s[i]!= '\0' ; i++) { /* islem yapmadan say */ return i; // bastaki isimli stringe, sondaki isimli stringi ekler void string_ekle(char *bastaki, const char *sondaki) { int bastaki_n = karakter_sayisi(bastaki); int sondaki_n = karakter_sayisi(sondaki); int i; for (i = 0 ; i < sondaki_n ; i++) bastaki[i+bastaki_n] = sondaki[i]; bastaki[bastaki_n+sondaki_n] = '\0'; 57
58 string içerisinde string arama char cumle[100]; char aranan[20]; printf("bir cumle girin: "); fgets(cumle, 100, stdin); // gets yerine bu sekilde kullanabiliriz // gets(cumle); printf("aranan kelime: "); scanf("%20s", aranan); printf("cumlenin uzunlugu: %d\n", karakter_sayisi(cumle)); printf("aranan kelimenin uzunlugu: %d\n", karakter_sayisi(aranan)); int var = string_ara(cumle, aranan); if (var == 0) { printf("aranan kelime cumlede yok\n"); else { printf("aranan kelime cumlede var\n"); Uyarı: Bu işlemi yapan hazır fonksiyon C kütüphanesinde vardır. 58
59 string içerisinde string arama char cumle[100]; char aranan[20]; printf("bir cumle girin: "); fgets(cumle, 100, stdin); // gets yerine bu sekilde kullanabiliriz // gets(cumle); printf("aranan kelime: "); scanf("%20s", aranan); printf("cumlenin uzunlugu: %d\n", karakter_sayisi(cumle)); printf("aranan kelimenin uzunlugu: %d\n", karakter_sayisi(aranan)); int var = string_ara(cumle, aranan); if (var == 0) { printf("aranan kelime cumlede yok\n"); else { printf("aranan kelime cumlede var\n"); 59
60 string içerisinde string arama char cumle[100]; char aranan[20]; printf("bir cumle girin: "); fgets(cumle, 100, stdin); // gets yerine bu sekilde kullanabiliriz // gets(cumle); printf("aranan kelime: "); scanf("%20s", aranan); printf("cumlenin uzunlugu: %d\n", karakter_sayisi(cumle)); printf("aranan kelimenin uzunlugu: %d\n", karakter_sayisi(aranan)); int var = string_ara(cumle, aranan); if (var == 0) { printf("aranan kelime cumlede yok\n"); else { printf("aranan kelime cumlede var\n"); 60
61 string içerisinde string arama char cumle[100]; char aranan[20]; printf("bir cumle girin: "); fgets(cumle, 100, stdin); // gets yerine bu sekilde kullanabiliriz // gets(cumle); printf("aranan kelime: "); scanf("%20s", aranan); printf("cumlenin uzunlugu: %d\n", karakter_sayisi(cumle)); printf("aranan kelimenin uzunlugu: %d\n", karakter_sayisi(aranan)); int var = string_ara(cumle, aranan); if (var == 0) { printf("aranan kelime cumlede yok\n"); else { printf("aranan kelime cumlede var\n"); 61
62 string içerisinde string arama char cumle[100]; char aranan[20]; printf("bir cumle girin: "); fgets(cumle, 100, stdin); // gets yerine bu sekilde kullanabiliriz // gets(cumle); printf("aranan kelime: "); scanf("%20s", aranan); printf("cumlenin uzunlugu: %d\n", karakter_sayisi(cumle)); printf("aranan kelimenin uzunlugu: %d\n", karakter_sayisi(aranan)); int var = string_ara(cumle, aranan); if (var == 0) { printf("aranan kelime cumlede yok\n"); else { printf("aranan kelime cumlede var\n"); 62
63 string içerisinde string arama int karakter_sayisi(const char *s) { int i; for (i = 0 ; s[i]!= '\0' ; i++) { /* islem yapmadan say */ return i; 63
64 string içerisinde string arama int string_ara(const char *s, const char * aranan) { int i, j; int s_n = karakter_sayisi(s); int aranan_n = karakter_sayisi(aranan); for (i = 0 ; i <= s_n-aranan_n ; i++) { // i'den basla, aranan_n tanesi ayni mi bak for (j = 0 ; j < aranan_n ; j++) { if (s[i+j]!= aranan[j]) break; // farkliysa digerlerine bakmaya gerek yok // eger j == aranan_n olduysa: j dongusu bitmis ve aranan_n tanesi aynidir if (j == aranan_n) return 1; // return var 64
65 string içerisinde string arama cu [0] cu [1] 'B' A *s char cumle[5] = {'B', 'A', 'K', 'I', 'R' cu [2] K char aranan[2] = {'I', 'R' cu [3] cu [4] 105 ar [0] I R I *aranan int s_n = karakter_sayisi(s); int aranan_n = karakter_sayisi(aranan); ar [1] R
66 string içerisinde string arama cu [0] cu [1] 'B' A *s char cumle[5] = {'B', 'A', 'K', 'I', 'R' cu [2] K char aranan[2] = {'I', 'R' cu [3] cu [4] 105 ar [0] ar [1] I R I R *aranan int s_n = 5 int aranan_n = 2 for (i = 0 ; i <= s_n-aranan_n ; i++) 108 for (i = 0 ; i <= (5-2) ; i++) 66
67 string içerisinde string arama int string_ara(const char *s, const char * aranan) { int i, j; int s_n = karakter_sayisi(s); int aranan_n = karakter_sayisi(aranan); for (i = 0 ; i <= s_n-aranan_n ; i++) { // i'den basla, aranan_n tanesi ayni mi bak for (j = 0 ; j < aranan_n ; j++) { if (s[i+j]!= aranan[j]) break; // farkliysa digerlerine bakmaya gerek yok // eger j == aranan_n olduysa: j dongusu bitmis ve aranan_n tanesi aynidir if (j == aranan_n) return 1; // return var 67
68 string içerisinde string arama cu [0] cu [1] 'B' A *s char cumle[5] = {'B', 'A', 'K', 'I', 'R' char aranan[2] = {'I', 'R' cu [2] K cu [3] cu [4] 105 ar [0] ar [1] 108 I R I R *aranan for (i = 0 ; i <= 3 ; i++) { for (j = 0 ; j < 2 ; j++) { if (s[i+j]!= aranan[j]) break; 68
69 string içerisinde string arama int string_ara(const char *s, const char * aranan) { int i, j; int s_n = karakter_sayisi(s); int aranan_n = karakter_sayisi(aranan); for (i = 0 ; i <= s_n-aranan_n ; i++) { for (j = 0 ; j < aranan_n ; j++) { if (s[i+j]!= aranan[j]) break; // eger j == aranan_n olduysa: j dongusu bitmis ve aranan_n tanesi aynidir if (j == aranan_n) return 1; // return var 69
70 Sorular 70
Hazır Fonksiyonlar {\} /\ Suhap SAHIN Onur GÖK 1
Hazır Fonksiyonlar 0 {\ /\ Suhap SAHIN Onur GÖK 1 string kutuphaneleri https://www.tutorialspoint.com/c_standard_library/ctype_h.htm 2 isdigit #include char c1; printf("karakter girin: "); scanf("
Hafta 12 Karakter Tutan Diziler
BLM111 Programlama Dilleri I Hafta 12 Karakter Tutan Diziler Yrd. Doç. Dr. Caner ÖZCAN Katar (String) Tanımlama Dizileri ve çok boyutlu dizileri gördük. Katar dediğimiz şey de aslında bir dizidir. Değişken
C ile Uygulamalar 2 - Cevaplar
C ile Uygulamalar 2 - Cevaplar Cevap-1: //Soru 1 void degistir(int *,int *); //Fonksiyonun prototipi tanımlanmaktadır. int a=1,b=2; printf("a=%d ve b=%d",a,b); degistir(&a,&b); //a ve b'nin adresleri üzerinden
BLM-111 PROGRAMLAMA DİLLERİ I. Ders-11 Karakter Diziler. Yrd. Doç. Dr. Ümit ATİLA
BLM-111 PROGRAMLAMA DİLLERİ I Ders-11 Karakter Diziler Yrd. Doç. Dr. Ümit ATİLA [email protected] http://web.karabuk.edu.tr/umitatilla/ Karakter ve String Karakter Karakter bir sabit tek tırnak
Eln 1002 Bilgisayar Programlama II
Eln 1002 Bilgisayar Programlama II C»de Dosya ğşleme : S¹ral¹ EriŞim Ne ÖĆreneceĆiz? Dosyalar ve Streamler Sequential (sıralı) erişim dosyaların yaratılması Sıralı Erişim Dosyalarından Veri Okuma Sıralı
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ı
ÇOK BOYUTLU DİZİLER VE DİNAMİK BELLEK YÖNETİMİ İLE İLGİLİ ÖRNEKLER
ÇOK BOYUTLU DİZİLER VE DİNAMİK BELLEK YÖNETİMİ İLE İLGİLİ ÖRNEKLER // 5 adet ogrenci icin 8 adet sinavi // temsil etmesi icin bir ogrenci tablosu // olusturuyoruz. Bunun icin 5x8 bir matris // yaratilmasi
STRİNG DİZİLER(KATARLAR)
STRİNG DİZİLER(KATARLAR) Giriş Katar bir char tipinde bildirilen karakter dizisidir. Katarlar (strings), içeriği harfler, rakamlar, veya bazı semboller olan text bilgilerini tutmak(saklamak) için kullanılır.
Temel Bilgisayar Programlama Final Sınavı Çalışma Notları
Diziler Temel Bilgisayar Programlama Final Sınavı Çalışma Notları (Dr. Övünç ÖZTÜRK, Dr. Tahir Emre KALAYCI) (İnşaat Mühendisliği ve Gıda Mühendisliği Grupları İçin) Diziler aynı türden bilgileri saklamak
10. DOSYA GİRİŞ ÇIKIŞ FONKSİYONLARI
10. DOSYA GİRİŞ ÇIKIŞ FONKSİYONLARI İkincil bellekte tanımlanmış bölgelere dosya denir. Her dosyanın bir ismi vardır. Ancak dosyaların isimlendirme kuralları sistemden sisteme göre değişebilmektedir. Dosya
ELN1002 BİLGİSAYAR PROGRAMLAMA 2
ELN1002 BİLGİSAYAR PROGRAMLAMA 2 DOSYALAMA Sunu Planı Veri Hiyerarşisi Dosyalar ve Akımlar(streams) Sıralı Erişim (Sequential Access) dosyalarının oluşturulması Sıralı Erişim Dosyalarından Veri Okuma Rasgele
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
BLM-112 PROGRAMLAMA DİLLERİ II. Ders-8 Dosya İşlemleri-1. Yrd. Doç. Dr. Ümit ATİLA
BLM-112 PROGRAMLAMA DİLLERİ II Ders-8 Dosya İşlemleri-1 Yrd. Doç. Dr. Ümit ATİLA [email protected] http://web.karabuk.edu.tr/umitatilla/ Giriş Değişken ve dizilerde tutulan değerler programın çalışması
C ile Uygulamalar 3 - Cevaplar
C ile Uygulamalar 3 - Cevaplar Cevap-1: //Soru 1 int recursivefaktoriyel(int); //Fonksiyonun prototipi tanımlanmaktadır. int sayi; printf("faktoriyeli Hesaplanacak Sayiyi Giriniz:"); scanf("%d",&sayi);
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
C Dosyalama. Öğr. Gör. M. Ozan AKI. Rev 1.0
C Dosyalama Öğr. Gör. M. Ozan AKI Rev 1.0 Dosyalama Dosyalar, disk üzerinde verilerin kalıcı olarak saklanmasını ve başka bir ortama kopyalanarak taşınabilmesini sağlayan yapılardır. Dosyalama C Dili ve
şeklinde tanımlanmıştır. O halde, dosyaları daha önceki bilgilerimizi kullanarak FILE *Dosya1, *Dosya2;
Dosya İşlemleri Nedir? Programlarınızı girdi (input) olarak aldığı verileri bir text dosyasında yada word dosyasında vb. saklamasıdır. Artık C programınızın yaratıp içine veriler koyacağı text dosyasını
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 =
Yrd. Doç. Dr. Caner ÖZCAN
Yrd. Doç. Dr. Caner ÖZCAN GİRİŞ Değişken ve dizilerde tutulan değerler programın çalışması esnasında değerlerini korurlarken programın çalışması sona erdiğinde veri kaybolur. Dosyalar verinin kalıcı olarak
mod ile açılacak olan dosyanın ne amaçla açılacağı belirlenir. Bunlar:
Dosyalama Çoğu programda, bazı verilerin disk üzerinde saklanmasına gerek duyulur. C programlama dilinde, disk dosyasına erişme (okuma ve yazma için) iki farklı yöntemle yapılır. Bunlar üst düzey ve alt
BLM 111 ALGORİTMA VE PROGRAMLAMA I
1 BLM 111 ALGORİTMA VE PROGRAMLAMA I KONTROL YAPILARI TEKRARLAMA DEYİMLERİ = DÖNGÜLER (while, for, do-while) Şimdiye kadar, sıralı deyimleri ve seçim deyimlerini gördük. Ama, geldiğimiz aşamada, aşağıdaki
Dr. Fatih AY Tel: 0 388 225 22 55 [email protected] www.fatihay.net
Bilgisayar Programlama Ders 6 Dr. Fatih AY Tel: 0 388 225 22 55 [email protected] www.fatihay.net Fonksiyon Prototipleri Fonksiyon Prototipleri Derleyici, fonksiyonların ilk hallerini (prototiplerini)
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ı
girilen metnin karakter uzunluğu bulan C programı girilen metin içerisindeki küçük ve büyük harf sayısını bulan C programı void main() int sayac=0; printf("metin giriniz:"); while(metin[sayac]!= '\0')
Temel Dosya İşlemleri. Kütük Organizasyonu 1
Temel Dosya İşlemleri Kütük Organizasyonu 1 Dosyaların Temel İşlemleri Bilgiler dosyada belirli bir düzen içerisinde yer alırlar Örn: ALAN THARP 100 100 100 JOHN BISHOP 70 80 75 PAUL AUSTER Bir satırda
C PROGRAMLAMA D İ L İ
C PROGRAMLAMA DİLİ Diziler Dizi bir kümedir. Aynı tipteki verilere tek bir isimle erişmek için kullanılır. Bir dizi bildirildikten sonra, dizinin bütün elemanları bellekte peşpeşe saklanır. Bu yüzden dizilere
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ü
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
AHMET YESEVİ ÜNİVERSİTESİ BİLİŞİM SİSTEMLERİ VE MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ LİSANS DÖNEM ÖDEVİ
AHMET YESEVİ ÜNİVERSİTESİ BİLİŞİM SİSTEMLERİ VE MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ LİSANS DÖNEM ÖDEVİ TBIL-303-01 Veri Yapıları ve Algoritmalar İki Yönlü Bağlantılı Liste Uygulaması HAZIRLAYAN
DİZİLER-KATARLAR ALGORİTMA VE PROGRAMLAMA II
DİZİLER-KATARLAR ALGORİTMA VE PROGRAMLAMA II DİZİLER Dizi, aynı tipteki verilere tek bir isimle erişmek için kullanılan bir kümedir. Bir dizi bildirildikten sonra, dizinin bütün elemanları bellekte peşpeşe
ELN1002 BİLGİSAYAR PROGRAMLAMA 2
ELN1002 BİLGİSAYAR PROGRAMLAMA 2 KARAKTERLER KARAKTER DİZİLERİ (STRING) Sunu Planı Karakterler ve Stringler Karakter İşleme Kütüphanesi String Dönüşüm Fonksiyonları Standart Giriş/Çıkış Kütüphane Fonksiyonları
int printf (const char *format [, argument,...]);
1 printf (): Fonksiyonu Sayısal ve alfanümerik değerleri ekrana (çıkış elemanı olarak tanımlı ise) göndermek için kullanılan formatlı çıkış fonksiyonudur. Bu fonksiyon stdio.h başlık dosyası altında tanımlıdır.
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
Week 7. Düğüm bulma Tekli bağlı liste: phead ve ptail Dairesel bağlı liste Çift bağlı liste
Week 7 Düğüm bulma Tekli bağlı liste: phead ve ptail Dairesel bağlı liste Çift bağlı liste Düğüm bulma While kullanarak Loop kullanarak Düğüm bulma: While döngüsü ile Node* temp; temp=phead; while (temp->!=xvalue)
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
8. İŞARETCİLER (POINTERS)
8. İŞARETCİLER (POINTERS) Verilerin bilgisayar hafızasında tutulduğu fiziki alan adres olarak tanımlanabilir. Adres, hem donanımla hem de yazılımla ilişkilidir. Donanımsal açıdan adres bellekte yer gösteren
Giris {\} /\ Suhap SAHIN Onur GÖK
Giris 0 \ /\ Suhap SAHIN Onur GÖK Fonksiyon C: Ana Fonksiyon(main) main() main() C: Ana Fonksiyon(main) main() main() C: Ana Fonksiyon(main) Giris? main() Çıkıs main() C: Ana Fonksiyon(main) void main()
String Sınıfını Yönetmek
String Sınıfı String Sınıfını Yönetmek Stringler karakterlerden oluşur. Bir string sabiti çift tırnak arasında verilmiş karakterler listesidir. "Bu örnek bir string dir" 2 Yukardaki string 27 adet karakterden
Görsel Programlama 1
Görsel Programlama 1 1. Ekrana Hello world! yazan c# console application kodları: Console.Write("Hello world!"); 2. Ekranda ilk satıra Hello, ikinci satıra world! yazan kod: Console.WriteLine("Hello");
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
String ve Karakter Dizileri. Yrd. Doç. Dr. Fehim KÖYLÜ Erciyes Üniversitesi Bilgisayar Mühendisliği Bölümü
String ve Karakter Dizileri #include Temel giriş çıkış akımları nesnelerinin tanımlandığı kütüphanedir. cin,cout,cerr,clog, wcin,wcout,wcerr,wclog nesneleri içerir. using namespace std; //std
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.
DİZGİLER (STRINGS) Dizgiler char tipli karakterlerin gruplanmş haline dizgi(string) denilir. Bazen katar ismide kullanılabilir. C dilinde karakter m şeklinde tek tırnak içerisinde yazılan ifadelerdir.
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.
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ı
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ı
PROGRAMLAMA. Dosyalama İşlemleri. Yrd. Doç. Dr. Bülent Çobanoğlu. Sakarya Üniversitesi Mekatronik Mühendisliği. Yrd.Doç.Dr.
PROGRAMLAMA Dosyalama İşlemleri Yrd. Doç. Dr. Bülent Çobanoğlu Sakarya Üniversitesi Mekatronik Mühendisliği Yrd.Doç. Dosyalama İşlemleri Program ve verileri daha sonra kullanabilmek amacı ile kalıcı olarak
STRING (SÖZEL) İŞLEMLER. Yrd. Doç.Dr. Bülent Çobanoğlu
STRING (SÖZEL) İŞLEMLER Yrd. Doç.Dr. Bülent Çobanoğlu String ve Karakter Tanımlama Tek bir karakter tanımlamak: char a; Bir karakter dizisi tanımlamak: char a[10]; Pointer kullanarak char *a= ali ; Pointer
ALGORİTMA VE PROGRAMLAMA II
ALGORİTMA VE PROGRAMLAMA II Yrd. Doç. Dr. Deniz KILINÇ [email protected] YZM 1102 Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi Genel Bakış 2 Veri Hiyerarşisi Dosyalara Giriş
ALGORİTMA VE PROGRAMLAMA I
ALGORİTMA VE PROGRAMLAMA I Yrd. Doç. Dr. Deniz KILINÇ [email protected] YZM 1101 Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi Genel Bakış 2 Diziler Dizi Nedir? Dizilerin Bildirimi
Java String İşlemleri
Java String İşlemleri Karakterler (Characters) "char" kelimesi bir karakter tanımlamak için kullanılır. Karakter tek tırnak içine alınmalıdır. Bir char'ın aralığı 0 ile 65536 arasındadır. Char türü işaretsiz
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ı
BÖLÜM 12: DOSYA İŞLEMLERİ
BÖLÜM 12: DOSYA İŞLEMLERİ Birçok program uygulamasında, programa girilen veya program tarafından üretilen bilgilerin yardımcı bellekte (disket veya hard disk) depo edilip daha sonra tekrar kullanılması
BASİT C PROGRAMLARI Öğr.Gör.Dr. Mahmut YALÇIN
BASİT C PROGRAMLARI Öğr.Gör.Dr. Mahmut YALÇIN Basit C Programları: Bir Metni Yazdırmak #include /* program çalışmaya main fonksiyonundan başlar*/ int main() { printf( "C diline hoşgeldiniz!\n"
ALFASAYISAL BİLGİLER KARAKTER DİZİLERİ (STRING)
ALFASAYISAL BİLGİLER KARAKTER DİZİLERİ (STRING) 1. HAFTA KARAKTER Karakterler, programlarda kullanılan temel simgelerdir. Her karakterin ASCII kod tablosunda bir tamsayı değer karşılığı vardır ve C programlama
Ç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
Kocaeli Üniversitesi Bilgisayar Mühendisliği Programlama 2 Dersi Final Sınavı. A Grubu
Kocaeli Üniversitesi Bilgisayar Mühendisliği Programlama 2 Dersi Final Sınavı A Grubu Ad Soyad: 11.06.2012 Numara: İmza: 1.) Aşağıdaki pointer bildiriminin anlamı hangisidir? int(*(*ptr1)())[2]; A.) ptr
ALGORİTMA VE PROGRAMLAMA I DERS NOTU#8
ALGORİTMA VE PROGRAMLAMA I DERS NOTU#8 YZM 1105 Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi 6. BÖLÜM 2 Çok Boyutlu Diziler Çok Boyutlu Dizi 3 Bir dizi aşağıdaki gibi bildirildiğinde
Başkent Üniversitesi MühendislikFakültesi BaharYarıyılı YerSıra No BİL 101 Bilgisayar Yazılımı-I Dersi Dönem Sonu MAZERET Sınavı
Başkent Üniversitesi MühendislikFakültesi 2013-2014 BaharYarıyılı YerSıra No BİL 101 Bilgisayar Yazılımı-I Dersi Dönem Sonu MAZERET Sınavı SınavTarihi : 03.06.2015 SınavBaşlamaSaati : 12:00 SınavSüresi
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.
Telefon Rehberi Uygulaması
Sayfa1 Telefon Rehberi Uygulaması Uygulama, temel düzeyde, telefon rehberi üzerinedir. Kullanıcı, telefon rehberine eklediği her bir kayıt içi ad, soyad, ev telefonu ve üç adet cep telefonu bilgisi girebilmektedir.
Örnek 4: Örnek Özyinelemeli fonksiyon örneği Bölüm 9. C++ programlama dilinde Nesne ve sınıf
İçindekiler 1. Giriş... 1 1.2. c++ Programı Yapısı... 2 1.3.Using Direktifi... 5 Bölüm 2. Veri türleri, değişken kavramı, sabit ve değişken bildirimleri ve c++ da kullanımı 7 2.1. Temel veri türleri...
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
BÖLÜM 8: DİZİLER Dizi bir kümedir. Aynı tipte verilere tek bir isimle erişmek için kullanılır. Bir dizinin bütün elemanları bellekte peş peşe saklanır. Dizi Tipi Tek boyutlu İki boyutlu Çok boyutlu Genel
12. Saat : Dosyalar I (Files)
12. Saat : Dosyalar I (Files) Dosyalar (Files) Programın çalışma esnasında her türlü değişken içinde tutulan ve işlenen bilgiler RAM (Read Access Memory) bellekte tutulur ve program sona erdiğinde RAM
#include<stdio.h> #include<conio.h> #define doktorsayisi 3. typedef struct dr{ int ay1, ay2, ay3, ay4; } doktor; float hesapla(doktor dktr){
/* Bir hastanedeki 30 doktorun dört ay boyunca baktığı hasta sayısı dr isimli bir topluluğun üyeleri olarak tanımlanıp, main( ) fonksiyonunda değerleri veriliyor. Dr topluluğunun her bir değerini "hesapla"
BÖLÜM 7: DÖNGÜ KONTROL YAPILARI
I. for DÖNGÜSÜ BÖLÜM 7: DÖNGÜ KONTROL YAPILARI for döngüsü, diğer programlama dillerinde olduğu gibi C programlama dilinde de yaygın bir şekilde kullanılır. Bir veya bir grup işlemin belirli bir sayıda
Metin Dosyaları. Metin Dosyaları Dosya Açma ve Kapama Dosya Okuma ve Yazma Rastgele Erişim Standart Girdi/Çıktı Hata Kontrolü
Metin Dosyaları Metin Dosyaları Dosya Açma ve Kapama Dosya Okuma ve Yazma Rastgele Erişim Standart Girdi/Çıktı Hata Kontrolü Metin Dosyaları Metin dosyaları, verileri bir kere hazırlayıp, ikincil saklama
Diziler. Dizi Tanımı Dizi Elemanlarına Değer Atama Diziler ve Göstergeler 2-Boyutlu Diziler
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
ALGORİTMA VE PROGRAMLAMA I
ALGORİTMA VE PROGRAMLAMA I YZM 1101 Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi Genel Bakış 2 Karakter Dizileri Karakter Dizilerini Okumak ve Yazmak Karakter Dizilerinin Uzunluğunu
NESNEYE YÖNELİK PROGRAMLAMA
NESNEYE YÖNELİK PROGRAMLAMA İŞARETÇİ ELEMANLI SINIFLAR REFERANSLAR OPERATÖRLERİN AŞIRI YÜKLENMESİ ATAMA OPERATÖRÜ Özlem AYDIN Trakya Üniversitesi Bilgisayar Mühendisliği Bölümü İşaretçi Elemanlı Sınıflar
C++ Dersi: Nesne Tabanlı Programlama
C++ Dersi: Nesne Tabanlı Programlama Bölüm 17: string Sınıfı İçerik string Yapıcı Fonksiyonları string ile Girdi/Çıktı string Operatörleri ı string Nesnesine Sayı Değeri Ekleme 2 string Birden fazla karakter
DÖNGÜLER (LOOPS) while(), do-while(), for(), foreach()
(LOOPS) while(), do-while(), for(), foreach() Döngüler (loops) while do-while for foreach while ( koşul ) işlemler; do işlemler; while (koşul ); for (başlangıç ; koşul ; arttırma) işlemler; foreach ( tip
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ı
C ile Uygulamalar 4 - Cevaplar
C ile Uygulamalar 4 - Cevaplar Cevap-1: //Soru 1 #include //Standart kütüphane başlık dosyası. #include //Tarih ve saat fonksiyonlarının yer aldığı başlık dosyası. int dizidensil(int
while(), do-while(), for() M.İLKUÇAR 2010 MAKU-MYO
while(), do-while(), for() Döngü (loop) : Bir koşul sağlandığı (true olduğu) sürece bir veya birden çok komutun tekrarlanması işlemidir. Java Döngüler (loops) While() do-while() for ( ) while ( koşul )
void main() { int a[] = {1, 2, 3, 4, 5, 6}; int *p=&a[2]; int **pp=&p; printf("%d", **pp+2); }
Adı Soyadı Öğrenci No 1 (25p) 2 (25p) +10p 3 (25p) 4 (25p) Toplam (100p) Açıklamalar: Öğrenciler yanlarında hatırlatma amacıyla sadece bir yüzüne C fonksiyonlarını açıkladıkları, kullanımlarını örnekledikleri
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
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
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
İNÖNÜ ÜNİVERSİTESİ MÜH. FAK. BİLGİSAYAR MÜH. BÖL. ALGORİTMA VE PROGRAMLAMA 1 DERSİ LAB. ÖDEVİ
İNÖNÜ ÜNİVERSİTESİ MÜH. FAK. BİLGİSAYAR MÜH. BÖL. ALGORİTMA VE PROGRAMLAMA 1 DERSİ LAB. ÖDEVİ AD SOYAD : TESLİM TARİHİ : OKUL NO : TESLİM SÜRESİ : 1 hafta Ödev No : 5 1. Aşağıdaki programların çıktısı
Yrd. Doç. Dr. Caner ÖZCAN
Yrd. Doç. Dr. Caner ÖZCAN GİRİŞ Değişken ve dizilerde tutulan değerler programın çalışması esnasında değerlerini korurlarken programın çalışması sona erdiğinde veri kaybolur. Dosyalar verinin kalıcı olarak
Program Akış Kontrol Yapıları
Program Akış Kontrol Yapıları Giriş Normal şartlar altında program içerisindeki çalıştırılabilir satırlar, yazılmış oldukları sırada, yani birinden sonra diğerinin çalışması şeklinde ilerler. Programın
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
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
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.
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 [email protected] http://web.karabuk.edu.tr/umitatilla/ Temel Veri Tipleri C dilinde
8. Bölüm DİZİLER. tip dizi_ismi[eleman_sayısı]; Bütün diziler 0 ile baţlar.
DİZİLER 8. Bölüm Dizi aynı ad altında toplanmış ve aynı tipte olan değişkenlerin sıralı bir listesidir. C de bir dizi için bildirim yapılırken kullanılan genel kural şudur. tip dizi_ismi[eleman_sayısı];
ALGORİTMA VE PROGRAMLAMA I
ALGORİTMA VE PROGRAMLAMA I Yrd. Doç. Dr. Deniz KILINÇ [email protected] YZM 1101 Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi Genel Bakış 2 Karakter Dizileri Karakter Dizilerini
Adı Soyadı Öğrenci No. Toplam (100p) 2 (10p) +10p. 5 (25p) +10p. 3 (20p) 4 (25p) 1 (20p)
Adı Soyadı Öğrenci No 1 (20p) 2 (10p) +10p 3 (20p) 4 (25p) 5 (25p) +10p Toplam (100p) Açıklamalar: Öğrenciler yanlarında hatırlatma amacıyla sadece bir yüzüne C fonksiyonlarının açıkladıkları, kullanımlarını
C++ Dersi: Nesne Tabanlı Programlama
C++ Dersi: Nesne Tabanlı Programlama Bölüm 6: Diziler İçerik Diziler Dizi Elemanlarına İlk Atama Diziler ve Fonksiyonlar İki Boyutlu Diziler İki Boyutlu Dizi Tanımı İki Boyutlu Dizi Elemanlarına Erişim
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
BLM 111 Algoritma ve Programlama I Güz 2018
BLM 111 Algoritma ve Programlama I Güz 2018 Eğitmen: Dr. Umut Konur [email protected] 2618 Asistanlar: Batuhan Cem Öğe, Murat Varul, Ersin Kılıç Ders kitabı: Deitel & Deitel, C ve C++, Prentice Hall Başvuru
ALGORİTMA VE PROGRAMLAMA II
ALGORİTMA VE PROGRAMLAMA II Yrd. Doç. Dr. Deniz KILINÇ [email protected] YZM 1102 Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi Genel Bakış 2 Dosya İşlemleri (Rastgele Erişim)
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;
İstanbul Üniversitesi Elektrik Elektronik Mühendisliği DİZİLER. Kaynak: C ve Sistem Programcıları Derneği Kurs notu. Yrd.Doç. Dr.
DİZİLER Kaynak: C ve Sistem Programcıları Derneği Kurs notu Yrd.Doç. Dr. Mahmut YALÇIN DİZİLER Veri Yapısı Nedir Bir konuyla ilgili, mantıksal ilişki içindeki verilerin bellekte saklanmasına yönelik düzenlemelere
NOT: Bu kodlar çeşitli internet siteleri, üniversite siteleri ve ders kitaplarından derlenerek hazırlanmıştır.
NOT: Bu kodlar çeşitli internet siteleri, üniversite siteleri ve ders kitaplarından derlenerek hazırlanmıştır. 1.FOR DÖNGÜSÜ int sayac; for(sayac=1;sayac
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
NESNEYE YÖNELİK PROGRAMLAMA
NESNEYE YÖNELİK PROGRAMLAMA Rastgele sayı üretme C#'ta program yazarken (özellikle oyun programlarında) rastgele değerlere ihtiyaç duyabiliriz. Rastgele sayı üretebilmemiz için öncelikle Random sınıfı
printf("\nbilgilerini goruntulemek istediginiz ogrencinin numarasini girin: "); scanf("%d",&no);
////////////////////////////////////////////////////////////////////////////////////////////////////////// /////////////////////////// ALGORITMA VE PROGRAMLAMA DERSİ-2 // ODEV-2 ////////////////////////
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
BÖLÜM 9: POINTERLER (İŞARETÇİLER)
BÖLÜM 9: POINTERLER (İŞARETÇİLER) Bilgisayarın ana belleği (RAM) her biri 1 byte olmak üzere sıralı kaydetme hücrelerinden oluşmaktadır. Her hücreye kullanılan işletim sistemi tarafından bir adres atanmıştır.
YAPILAR BİRLİKLER SAYMA SABİTLERİ/KÜMELERİ. 3. Hafta
YAPILAR BİRLİKLER SAYMA SABİTLERİ/KÜMELERİ 3. Hafta YAPILAR Farklı veri tipindeki bilgilerin bir araya gelerek oluşturdukları topluluklara yapı (structure) denir. Yani yapılar, birbiriyle ilişkili değişkenlerin
