Örnek Soru 1: a) 1 ile 99 arasındaki 3 ile tam bölünebilen sayıların toplamını hesaplayan while döngüsü yazınız. int main() { int i = 1, sum = 0; while (i <= 99) { if (i % 3 == 0) sum += i; i++; } printf("The sum is : %d", sum); return 0; } b) x = 5 ve y = 7 değerleri için aşağıdaki programların ekran çıktısı ne olur? OUTPUT if (x *y == 50) { if (x < 7) { if (x<5) x = x + 5; else x = x - 5; } } else if (x*y == 40) x = x + 7; else { if (y > 5) x = x + 3; else x = x - 3; } 8 OUTPUT switch (x - y / 2) { case 0: case 1: x = x + 3; break; case 2: { if (y / 3 > 2) x = x + 6; else x = x + 5; } break; default: x = x + 9; } printf("%d", x); 10 printf("%d", x); c) 100 – 300 arasında 4 ile bölünebilen sayıların toplamını hesaplayan for döngüsü yazınız. int main() { int i, sum = 0; for (i = 101; i < 300; i++) { if (i % 4 == 0) sum += i; } printf("The sum is : %d", sum); return 0; } 1 Örnek Soru 2: Aşağıdaki program parçacığının ekran çıktısı ne olur? float item, num; int i = 3; item = 24 / i++; num = 24 / ++i; printf("%4.1f % 2d", item, i); printf("%4.1f % 2d", num, i); Cevap: 8 . 0 5 4 . 0 5 Örnek Soru 3: Kullanıcıdan iki sayı (n1 ve n2) alıp, bu sayıları alt ve üst limit olarak kullanan (n1 < n2), daha sonra kullanıcıdan 100 tane sayı alıp, bunlardan n1 ve n2 arasında olanların tek ve çift olanların sayısını ekrana basınız. Örnek çalıştırma (italik değerler kullanıcı tarafından girilmiştir) Alt limiti giriniz: 48 Üst limiti giriniz: 174 Bir sayı giriniz: 84 Bir sayı giriniz: 33 Bir sayı giriniz: 244 …… …… girilen sayılar arasında 44 tanesi 48 ile 174 arasındadır. Bunlardan 24 tanesi tek, 20 tanesi çift sayıdır. Çözüm: int main() { int n1, n2; int sayi, i; int tek = 0, cift = 0, count = 0; printf("Iki printf("Alt scanf("%d", printf("Üst scanf("%d", sayı giriniz, bunlardan birincisi ikincisinden küçük olsun\n"); limiti giriniz>"); &n1); limiti giriniz>"); &n2); for (i = 0; i < 100; i++) { printf("Bir sayı giriniz>"); scanf("%d", &sayi); if ((n1 < sayi) && (n2>sayi)) { if (sayi % 2 == 0) cift++; else tek++; count++; } } printf("girilen sayılar arasında %d tanesi %d ile %d arasındadır.", count, n1, n2); printf("Bunlardan %d tanesi tek, %d tanesi çift sayıdır.", tek, cift); return 0; } 2 Örnek Soru 4: 3 basamaklı sayılar için aşağıdaki koşulu sağlayıp sağlamadığını kontrol eden bir program yazınız. klm = k3 + l3 + m3 Örneğin = 153 = 13 + 53 + 33 Örnek çalıştırma (italic değerler kullanıcı tarafından girilmiştir) Bir sayı giriniz: 153 153 gerekli şartı sağlamaktadır. ……. ……. Çözüm: int main() { int sayi; int birler, onlar, yuzler; printf("Bir sayi giriniz: "); scanf("%d", &sayi); birler = sayi % 10; onlar = ((sayi % 100) - birler)/10; yuzler = (sayi / 100); printf("birler: %d\nonlar: %d\nyuzler: %d\n",birler,onlar,yuzler); if(sayi == (pow(birler,3) + pow(onlar,3) + pow(yuzler,3))) printf("%d gerekli sarti saglamaktadir.",sayi); else printf("%d gerekli sarti saglamiyor.",sayi); return 0; } Örnek Soru 5: Aşağıdaki programın çıktısı ne olur? void func1(int p, int z); int main(void) { int x = 2, y = 4; func1(y, x); printf("%3d%3d\n", x, y); func1(x, y); printf("%5d%5d\n", x, y); return (0); } void func1(int p, int q) { q = 3 + q; p = q++; printf("%4d%4d\n", p, q); } 3