C programlama dilinde diziler (array) konusunu daha iyi anlamaya yardımcı olması amacıyla örnek sorular ve çözümlerini aşağıda inceleyebilirsiniz. Çözümlere hemen geçmeden kendi çözümlerinizi denemeniz kavrama açısından daha faydalı olacaktır.
C Dili Diziler Arrays Örnek Sorular |
1. Kullanıcıdan dizi uzunlugunu (n) alınız. N adet sayı alarak diziye ekleyiniz. Diziyi ters sırada yazdırınız.
2. Bir dizinin elemanlarının toplamını ekrana yazan C programı kodu yazınız.
3. Bir dizinin elemanlarını başka bir diziye kopyalayan C kodu yazınız.
4. Kullanıcıdan alınan dizi elemanlarının tekrar sayılarını ekrana yazan C kodu yazınız.
5. Kullanıcıdan alınan dizi elemanlarından sadece tekrar etmeyen (unique), tek adet bulunan elemanları ekrana yazan C programı yazınız.
6. 3 X 3 boyutlarında iki matrisin çarpımını hesaplayan C kodu yazınız.
Cevaplar
1.
#include <stdio.h> #include <stdlib.h> #include<stdbool.h> // diziyi ters sirada yazdir // see muratoksuzer.com int main() { int n; int dizi_uzunlugu; printf("\nDizi uzunlugunu giriniz:\n"); scanf("%d", &dizi_uzunlugu); n = dizi_uzunlugu; int dizi[n]; int i = 0; while(n > 0) { printf("%d. elemani giriniz:\n" , i+1); scanf("%d", &dizi[i]); i++; n--; } printf("\n ters sirada dizi: \n"); for(i = dizi_uzunlugu - 1; i >=0; i--){ printf("%d ", dizi[i]); } return(0); }
2.
#include <stdio.h> #include <stdlib.h> #include<stdbool.h> // dizi elemanlari toplamini yazdir // see muratoksuzer.com int main() { int n; int dizi_uzunlugu; printf("\nDizi uzunlugunu giriniz:\n"); scanf("%d", &dizi_uzunlugu); n = dizi_uzunlugu; int dizi[n]; int i = 0; while(n > 0) { printf("%d. elemani giriniz:\n" , i+1); scanf("%d", &dizi[i]); i++; n--; } int toplam = 0; for(i = 0; i < dizi_uzunlugu; i++){ toplam = toplam + dizi[i]; } printf("\n dizideki elemanlarin toplami: %d\n", toplam); return(0); }
3.
#include <stdio.h> #include <stdlib.h> #include<stdbool.h> // diziyi baska diziye kopyala // see muratoksuzer.com int main() { int n; int dizi_uzunlugu; printf("\nDizi uzunlugunu giriniz:\n"); scanf("%d", &dizi_uzunlugu); n = dizi_uzunlugu; int dizi[n]; int kopya_dizi[n]; int i = 0; while(n > 0) { printf("%d. elemani giriniz:\n" , i+1); scanf("%d", &dizi[i]); i++; n--; } int toplam = 0; for(i = 0; i < dizi_uzunlugu; i++){ kopya_dizi[i] = dizi[i]; } printf("\n Kopya dizi icerigi \n"); for(i = 0; i < dizi_uzunlugu; i++){ printf("%d ",kopya_dizi[i]); } printf("\n"); return(0); }
4.
#include <stdio.h> #include <stdlib.h> #include<stdbool.h> // dizideki elemanlarin tekrar sayilarini yazdir // see muratoksuzer.com int main() { int n; int dizi_uzunlugu; printf("\nDizi uzunlugunu giriniz:\n"); scanf("%d", &dizi_uzunlugu); n = dizi_uzunlugu; int dizi[n]; int kopya_dizi[n]; int tekrarEdenElemanSayilari[n]; int i = 0; while(n > 0) { printf("%d. elemani giriniz:\n" , i+1); scanf("%d", &dizi[i]); i++; n--; } for(i = 0; i < dizi_uzunlugu; i++){ kopya_dizi[i] = dizi[i]; tekrarEdenElemanSayilari[i] = 1; } for(i = 0; i < dizi_uzunlugu; i++){ for(int j = 0; j <dizi_uzunlugu; j++){ if(i != j) { if(dizi[i] == kopya_dizi[j]) { tekrarEdenElemanSayilari[i] = tekrarEdenElemanSayilari[i] + 1; } } } } for(i = 0; i < dizi_uzunlugu; i++){ printf("%d elemani tekrar sayisi: %d\n" ,dizi[i], tekrarEdenElemanSayilari[i]); } return(0); }
5.
#include <stdio.h> #include <stdlib.h> #include<stdbool.h> // dizideki unique elemanlari yazdir // see muratoksuzer.com int main() { int n; int dizi_uzunlugu; printf("\nDizi uzunlugunu giriniz:\n"); scanf("%d", &dizi_uzunlugu); n = dizi_uzunlugu; int dizi[n]; int kopya_dizi[n]; int i = 0; while(n > 0) { printf("%d. elemani giriniz:\n" , i+1); scanf("%d", &dizi[i]); i++; n--; } for(i = 0; i < dizi_uzunlugu; i++){ int eleman = dizi[i]; int bulunmaSayisi = 0; for(int j = 0; j < dizi_uzunlugu; j++) { if(dizi[j] == eleman) { bulunmaSayisi++; } } if(bulunmaSayisi == 1) { printf("unique eleman: %d\n" , eleman); } } return(0); }
6.
#include <stdio.h> #include <stdlib.h> #include<stdbool.h> // 3 X 3 matris carpimi // see muratoksuzer.com int main() { int matris_A[3][3]; int matris_B[3][3]; int matris_Sonuc[3][3]; printf("A matris degerlerini giriniz:\n"); for (int i = 0; i < 3; i++) { for (int j = 0; j < 3; j++) { printf("i,j (%d,%d):\n",i, j); scanf("%d", &matris_A[i][j]); } } int toplam = 0; printf("B matris degerlerini giriniz:\n"); for (int i = 0; i < 3; i++) { for (int j = 0; j < 3; j++) { printf("i,j (%d,%d):\n",i, j); scanf("%d", &matris_B[i][j]); } } for (int i = 0; i <= 2; i++) { for (int j = 0; j <= 2; j++) { toplam = 0; for (int k = 0; k <= 2; k++) { toplam = toplam + matris_A[i][k] * matris_B[k][j]; } matris_Sonuc[i][j] = toplam; } } printf("\niki matrisin carpim sonucu: \n"); for (int i = 0; i < 3; i++) { for (int j = 0; j < 3; j++) { printf(" %d ", matris_Sonuc[i][j]); } printf("\n"); } return(0); }
Daha fazlası için youtube kanalıma göz atabilirsiniz.
0 Yorumlar