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 cevap anahtarında gerekli bilgileri mutlaka yazınız, kodlayınız! Bilgilerini eksik yazan ya da yanlış kodlayan öğrencilerin kağıtları iptal edilir! Soru kitapçığında yapılan işaretlemeler değerlendirilmez! Eş anlamlı terimler fonksiyon işlev fonksiyon prototipi fonksiyon bildirimi operatör işleç operand terim string dizge faaliyet alanı bilinirlik alanı sabit değişmez global değişken genel değişken 1. m=10/2-5>9%4>3+2*4+1; sonunda m değişkeninin değeri ne olur? 0 2 1-1 Kod hatalı. 4. Hangi değişken tanımlaması geçersizdir? main kenar yeni z0 semt mai1 2. Kod çalıştığında ekran görüntüsü ne olur? int x=6; int y; x++;y=x;y--; printf(" %d %d \n", x,y); 7 7 6 6 7 6 6 7 3. Ekran görüntüsü ne olur? void goster(char *p); char str[]="merhaba"; goster(str); void goster(char *p) while(*p!= \0 ) *p= - ; putchar(*p); p++; Ekranda görüntü oluşmaz. Merhaba Kod hatalıdır ------- 5. Bildirimler aşağıdakilerden hangisi söylenemez? Bildirimler fonksiyon parantezlerinin de yapılamaz. Tüm blokların dışında yapılabilir. Fonksiyon parametresi olarak fonksiyon parantezlerinin de ya da parantezlerden sonra Bildirimler blokların başında yapılabilir. 6. Küçük tamsayı türlerinin büyük tamsayı türlerine dönüşümünde... negatif sayılar dönüşüme sokulmaz. yüksek anlamlı byte değerleri kaybolur. küçükten büyüğe doğru sıralama yapılır. bilgi kaybı olmaz. soldan sağa bitlerin sırası değişir. 7. printf fonksiyonunda kullanılan format bildirimlerinden %p ne amaçla kullanılır? Böyle bir format bildirimi yoktur. dres değerlerini yazdırmak double türü değişken değerlerini yazdırmak char türü değişken değerlerini yazdırmak long int türü değişken değerlerini yazdırmak 1 Bildirici ve Üstüntaş
8. şağıdaki kodun çalışması sonunda ekranda ne görülür? #include<math.h> #define karekok sqrt double x,y=25; x=karekok(y)+2.; printf("%.2lf",x); 7.00 Kod hatalıdır. Derlenmez. 07.0000 7.2 Görüntü oluşmaz. 9. şağıdakilerden hangisi double sabitidir? 5.67F 5 21.67f 10.5 Hepsi 10. şağıdaki kodun çalışması sonucu ekranda ne görünür? #include <stdio.h> double x=5.,y=3.,z; z=x*y; printf("%lf\n",z); 0 15 1 Kod derlenmez lf 12. şağıdaki kod derlenmekte ancak program çalışmamaktadır. Neden? int sayi; printf("sayi %d \n", sayi); return den sonra -1 yazılmalıdır. sayi değişkenine başlangıç değeri verilmemiştir. printf fonksiyonunun kullanımı hatalıdır. sayi değişkeninin türü unsigned int olursa çalışır. 13. Tamsayı değişkenleri printf fonksiyonu ile ekrana basabilmek % işaretiyle birlikte hangi karakter kullanılmalıdır? c x f d p 14. char c[]="merhaba Dunya"; şeklinde tanımlanan c dizisinin eleman sayısı kaçtır? 256 128 14 13 Bu şekilde dizi tanımlanmaz. 15. şağıdaki kodun çalışması sonucu ekranda ne görülür? int x=1; int y; int x=0; y=x-1; if(y) printf("%d",x+y); 11. z=0?5:6; z değişkeninin değeri ne olur? 5 1 0 6-1 1 0 Kod hatalıdır. Görüntü oluşmaz. 2 Bildirici ve Üstüntaş
16. Ekran görüntüsü ne olur? double x; double a=3,b=2; x=a/b; printf("%2.1lf",(int)x); 1.0 1 1.5 0.0 17. Ekran görüntüsü ne olur? int k; for(k=2;k>-1;--k) printf("%2.lf",k); 210 0 0 0 21 Yazım hatası var. 18. Bir dizi de, diğer nesneler gibi... derleyiciye bilgi verir. değişmez ve değişir olabilir. işlemci tarafından kontrol edilmez. karakter değişmezleri içerebilir. yerel ve genel (global) olabilir. 19. Dizi taşmaları... (I) kontrol edilmez. Böyle hatalar... (II) çalışma zamanı ile ilgilidir. I derleme zamanında, II programın I bellek denetimi açısından, II işlemcinin I genellikle, II işlemcinin I -, II I bazen, II 20. Tür dönüştürme operatörü (işleci)... sonek konumunda bulunan tek terimli bir operatördür. araek konumunda bulunan iki terimli bir operatördür. üç terimli bir operatördür. önek konumunda bulunan tek terimli bir operatördür. ilişkisel operatörler arasında yer alır. 21. Kod derlenmemektedir. Neden? int x=9,y; y=2*x; Fonksiyon geri dönüş değeri tanımlanmadığından son satırdaki kaldırılmalıdır. Son satırdan önce printf("%d",y); eklenirse çalışır. Son satırın sonunda ; eksiktir. En başta yazılmamıştır. Burada bir hata yoktur. 22. switch deyimi... okunabilirlik açısından bir seçenek oluşturur. bazen sembolik sabitlere else if merdivenlerine for döngülerine değişmez ifadelerine 23. Programın çalışması sonucu ekranda ne görülür? int i; for(i=0;i<5;i++) printf("%d",2*i+1); 13579 02468 0 dan 8 e kadar alt alta çift sayılar 1 den 9 a kadar alt alta tek sayılar 24. Hangi değişken tanımlaması geçersizdir? 1 2semt x1 sq kenar ac1 3 Bildirici ve Üstüntaş
25. Bir döngünün gövdesi de continue deyimin kullanılması ile... programın başına geri dönülür. gövde de geriye kalan deyimler atlanarak bir sonraki tura geçilir. döngüden çıkılır. gövde de geriye kalan deyimler yapılarak, döngüden çıkılır. gövde de geriye kalan deyimler yapılarak bir sonraki tura geçilir. 26. Hangi satırda bir fonksiyon prototipi tanımlanmaktadır. //1 double carp(double, double); //2 //3 //4 double x,y=3,z=5; //5 x=carp(y,z); //6 //7 //8 double carp(double a, double b) //9 //10 return a*b; //11 //12 1 9 11 2 Burada fonksiyon prototipi yoktur. 27. Global (genel) değişkenler... nesne değildir. dinamik ömürlüdür. bellekte yer kaplamaz. blokların en başında tanımlanır. statik ömürlüdür. 28. Ekranda ne görünür? double x[]=-0.5,9.75,-1.25,0.25,k=100.; int i; for(i=0;i<sizeof(x)/sizeof(double);i++) if(x[i]<k) k=x[i]; printf("%f\n",k); 9.75 100. 0.25-0.5 29. Dizi tanımlamalarında dizi ismi dizinin bellekteki başlangıç değerini gösterir. bir nesnedir. dizinin ilk elemanına atama yapılmasını sağlar. sabit olarak tanımlanır. dizinin bellekteki başlangıç adresini gösterir. 30. şağıda kod ne amaçla yazılmıştır? int i,j=0,z[]=3,5,9,100; for(i=0;i<sizeof(z)/sizeof(int);i++) j+=z[i]; Kod hatalıdır. Faktöriyel almak z dizisinin toplam eleman sayısını bulmak Kod çalışır, ancak herhangi bir amacı yoktur. z dizisinin elemanlarını toplamak 31. Hangisi bir deyim türü değildir? Statik Bileşik Kontrol Yalın Bildirim 32. while anahtar sözcüğünü izleyen ayraç deki ifadeye ne denir? 33. ifade Döngü gövdesi Kontrol atomu Kontrol ifadesi Koşul deyimi Kontrol değişkeni atom türlerinden biridir. değişken, operatörler ve sabitlerin kombinasyonlarına denir. değişken, operatörler ve kütüphanelerin kombinasyonlarına denir. fonksiyon prototipleri ile eş anlamlıdır. 4 Bildirici ve Üstüntaş
34. şağıdaki program ne amaçla yazılmıştır? int a[5]=17,54,21,98,5; int i,k; k=a[0]; for(i=0;i<5;i++) if(a[i]>k) k=a[i]; printf("%d",k); a dizisi elemanlarının en küçüğünü bulmak. a dizisi elemanlarının toplamını bulmak. a dizisi elemanlarının ortalamasını bulmak. Kod hatalıdır. a dizisi elemanlarından en büyüğünü bulmak. 35. Ekran görüntüsü ne olur? #include <stdio.h> int f1(int a) return a/=3; int x=9,y; y=f1(x); printf("%d %d\n", y); 9 3 3 9 3 0 9 0 36. Program çalıştığında ekran görüntüsü ne olur? int top=0,i;int a[5]=20,30,40,10,50; for(i=1;i<4;i++) top+=a[i]; printf("%d", top); 37. Ekran görüntüsü ne olur? printf("%d",sizeof(double)); 4 0 8 Görüntü oluşmaz. Kod derlenmez. 38. Ondalıklı bir sayıyı printf fonksiyonu ile ekrana basabilmek % işaretiyle birlikte hangi karakter kullanılmalıdır? d c i x f 39. printf fonksiyonunun ilk parametresi olan string ifade (dizge) deki % karakteri ile diğer parametre değerleri ekrana yazdırılır. sabitler tanımlanır. değişkenler tanımlanır. ekranda bir satır alta geçilmesi sağlanır. 40. Ekranda ne görüntülenir? int y; if(y<10) printf("merhaba "); printf("dunya "); 80 70 100 90 Merhaba Dunya yazısı ekrana çıkar. Dunya yazısı ekrana çıkar. Çalışma zamanı hatası oluşur. Yazım hatası var, program derlenmez. 5 Bildirici ve Üstüntaş
Cevap nahtarı 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 1 Bildirici ve Üstüntaş