C intervyu savol-javoblari


ULASHISH

C bo‘yicha intervyu savollari va javoblari

Bu sahifada qisqa javoblari bilan oddiy C intervyu savollari berilgan. Savollar yangi boshlovchilar uchun tuzilgan, shuning uchun ulardan testlar va ish suhbatlariga tayyorlanishda foydalanishingiz mumkin.

  • C asoslari va dastur tuzilishi
  • O‘zgaruvchilar va ma’lumot tiplari
  • Shartlar va sikllar
  • Massivlar va stringlar
  • Ko‘rsatkichlar (pointers) va xotira
  • Funksiyalar, ko‘rinish sohasi (scope) va strukturalar

C asoslari

1. C nima uchun ishlatiladi?

Javob:

  • C — tez va samarali dasturlar yozish uchun ishlatiladigan dasturlash tili.
  • U ko‘pincha tizimli dasturiy ta’minot, o‘rnatilgan tizimlar va yuqori unumdorlik talab qilinadigan ilovalar uchun ishlatiladi.

2. C dasturining asosiy tuzilishi qanday?

Javob:

  • Odatiy C dasturida #include qatorlari, main() funksiyasi va { } ichidagi C ko‘rsatmalari (statements) bo‘ladi.
#include <stdio.h>

int main() {
  printf("Hello World!");
  return 0;
}

3. C tilida main() funksiyasi nima vazifani bajaradi?

Javob:

  • main() har qanday C dasturining boshlanish nuqtasidir.
  • Dastur ishga tushganda birinchi bo‘lib main() ichidagi kod bajariladi.
  • return 0; qatori odatda "dastur muvaffaqiyatli yakunlandi" degan ma’noni bildiradi.


4. #include <stdio.h> nima uchun kerak?

Javob:

  • #include <stdio.h> kompilyatorga standart kiritish/chiqarish kutubxonasini ulashni buyuradi.
  • U printf() va scanf() kabi funksiyalardan foydalanish imkonini beradi.

5. printf() nima qiladi?

Javob:

  • printf() ekranga matn va qiymatlarni chiqaradi.
  • Butun sonlar uchun %d, suzuvchi nuqtali sonlar uchun %f kabi format spetsifikatorlaridan foydalanishingiz mumkin.
#include <stdio.h>

int main() {
  int age = 30;
  printf("Age: %d\n", age);
  return 0;
}

O‘zgaruvchilar va ma’lumot tiplari

6. C tilida o‘zgaruvchi nima?

Javob:

  • O‘zgaruvchi — xotirada qiymat saqlanadigan nomlangan joy.
  • C tilida o‘zgaruvchi nomidan oldin uning tipini e’lon qilishingiz shart.
int count = 10;
float price = 19.95;
char grade = 'A';

7. int, float va char o‘rtasida qanday farq bor?

Javob:

  • int butun sonlarni saqlaydi (masalan, 3, -10, 200).
  • float kasr qismli sonlarni saqlaydi (masalan, 3.14, -0.5).
  • char bitta belgini saqlaydi (masalan, 'A', 'B').

8. Konstanta nima va undan nima uchun foydalaniladi?

Javob:

  • Konstanta — o‘rnatilgandan keyin o‘zgartirib bo‘lmaydigan qiymat.
  • const kalit so‘zidan foydalanish niyatingizni aniq ko‘rsatadi va qiymatni adashib o‘zgartirib yuborilishidan himoya qiladi.
const int DAYS_IN_WEEK = 7;
// DAYS_IN_WEEK = 8; // not allowed

9. C tilida foydalanuvchi kiritgan ma’lumot qanday o‘qiladi?

Javob:

  • Klaviaturadan qiymatlarni o‘qish uchun scanf() funksiyasidan foydalanishingiz mumkin.
  • O‘zgaruvchining manzilini & yordamida uzatishingiz shart.
int number;
scanf("%d", &number);

Shartlar va sikllar

10. if operatori nima uchun ishlatiladi?

Javob:

  • if operatori dasturga qaror qabul qilish imkonini beradi.
  • if bloki ichidagi kod faqat shart rost (true) bo‘lgandagina bajariladi.
int age = 20;

if (age >= 18) {
  printf("Adult\n");
} else {
  printf("Not adult\n");
}

11. C tilida sikl nima?

Javob:

  • Sikl bir xil kod blokini bir necha marta takrorlaydi.
  • C tilida for, while va do...while sikllari mavjud.
for (int i = 1; i <= 5; i++) {
  printf("%d\n", i);
}

12. while va do...while o‘rtasida qanday farq bor?

Javob:

  • while sikl tanasini bajarishdan oldin shartni tekshiradi.
  • do...while sikl tanasini bir marta bajaradi, so‘ng shartni tekshiradi.
  • Bu do...while har doim kamida bir marta bajarilishini anglatadi.

13. switch operatori nima?

Javob:

  • switch operatori ifoda qiymatiga qarab bajariladigan bitta kod blokini tanlaydi.
  • Har bir variant case sifatida yoziladi, default esa qolgan barcha qiymatlarni qayta ishlaydi.
int day = 2;

switch (day) {
  case 1:
    printf("Monday");
    break;
  case 2:
    printf("Tuesday");
    break;
  default:
    printf("Another day");
}

Massivlar va stringlar

14. C tilida massiv nima?

Javob:

  • Massiv bir xil tipdagi ko‘plab qiymatlarni bitta o‘zgaruvchi nomi ostida saqlaydi.
  • Har bir elementga uning indeksi orqali murojaat qilasiz, indekslar 0 dan boshlanadi.
int scores[3] = {10, 20, 30};
printf("%d\n", scores[0]); // first element

15. C tilida stringlar qanday ifodalanadi?

Javob:

  • C tilida string — belgilar massivi.
  • U maxsus '\0' belgisi (null belgisi) bilan tugaydi.
char greeting[] = "Hello";
printf("%s\n", greeting);

Ko‘rsatkichlar va xotira

16. C tilida ko‘rsatkich (pointer) nima?

Javob:

  • Ko‘rsatkich — boshqa o‘zgaruvchining xotira manzilini saqlaydigan o‘zgaruvchi.
  • Ko‘rsatkichlar xotira bilan bevosita ishlash va ma’lumotlarni funksiyalarga uzatish uchun ishlatiladi.
int value = 10;
int *ptr = &value;  // ptr holds the address of value

17. Ko‘rsatkichlarda & va * operatorlari nimani anglatadi?

Javob:

  • & o‘zgaruvchining manzilini beradi ("manzilni olish" operatori).
  • * manzildagi qiymatni beradi ("dereference" — manzil bo‘yicha qiymatni olish operatori).
int x = 5;
int *p = &x;    // &x is the address of x
printf("%d\n", *p); // *p is the value at that address (5)

18. NULL ko‘rsatkich nima?

Javob:

  • NULL ko‘rsatkich — hech qanday yaroqli xotira joyiga ishora qilmaydigan ko‘rsatkich.
  • U ko‘pincha ko‘rsatkich "bo‘sh" ekanini yoki hali o‘rnatilmaganini bildirish uchun ishlatiladi.
int *ptr = NULL;  // pointer not pointing anywhere yet

Funksiyalar, ko‘rinish sohasi (scope) va strukturalar

19. C tilida funksiya nima va undan nima uchun foydalaniladi?

Javob:

  • Funksiya — muayyan vazifani bajaradigan kod bloki.
  • Funksiyalar katta dasturni kichikroq, qayta foydalanish mumkin bo‘lgan qismlarga ajratishga yordam beradi.
int add(int a, int b) {
  return a + b;
}

20. Lokal va global o‘zgaruvchilar o‘rtasida qanday farq bor?

Javob:

  • Lokal o‘zgaruvchi funksiya ichida e’lon qilinadi va faqat o‘sha yerda ishlatilishi mumkin.
  • Global o‘zgaruvchi barcha funksiyalardan tashqarida e’lon qilinadi va butun faylda (e’lon qilinganidan keyin) ishlatilishi mumkin.

21. C tilida struct nima?

Javob:

  • struct (struktura) — o‘zaro bog‘liq o‘zgaruvchilarni bitta nom ostida guruhlaydigan maxsus tip.
  • Guruhlangan o‘zgaruvchilar turli tiplarda bo‘lishi mumkin.
struct Person {
  char name[50];
  int age;
};

22. Nima uchun alohida o‘zgaruvchilar o‘rniga struct ishlatiladi?

Javob:

  • Struct o‘zaro bog‘liq ma’lumotlarni birga saqlaydi va bu kodni tushunishni osonlashtiradi.
  • U bir nechta ma’lumotni bitta birlik sifatida ko‘rib chiqmoqchi bo‘lganingizda (masalan, shaxs yoki mahsulot) foydali.


W3Schools Pathfinder

Yutuqlaringizni kuzating – bu bepul!