4-oy uy vazifalari (C tili asoslari)
Umumiy ko'rsatmalar
Hammasi GitHub orqali!
GitHub repo: c-darslari (yoki shu kabi)
Har dars uchun alohida papka: 4-oy-dars-N/
Har vazifa — alohida .c fayl + commit.
1-dars: C tanishuv
1.1 — Setup
gcc --versiontekshiring- VS Code + C/C++ extension
~/c-darslari/papka yarating, Git init
Drive'ga screenshot.
1.2 — Hello World variantlari
3 ta .c fayl:
hello.c— "Hello, World!"shaxsiy.c— siz haqida 5+ jumlaascii-art.c— ASCII art rasm
GitHub'ga push.
1.3 — Escape characters
belgilar.c — \n, \t, ", \, %% bilan tajriba.
1.4 — Xato topish
4 ta xato bilan kod beriladi (dars matnida). Tuzating va commit qiling.
2-dars: O'zgaruvchilar
2.1 — Shaxsiy ma'lumot
shaxsiy.c — ism, yosh, bo'y, og'irlik, jins.
2.2 — Kalkulyator
kalkulyator.c — 5 ta amal.
2.3 — Doira hisobi
doira.c — perimetr va yuza.
2.4 — Format specifiers
formatlar.c — %d, %f, %.2f, %e va h.k.
2.5 — Type casting
konversiya.c — int va float farqlari.
2.6 — BMI
bmi.c — vazn indeksi.
2.7 — Sizeof
hajm.c — barcha turlarning hajmi.
3-dars: Operatorlar
3.1 — Asosiy
asosiy.c — +, -, *, /, % bilan.
3.2 — Toq/juft
toq-juft.c — % bilan tekshirish.
3.3 — Compound assignment
compound.c — +=, -=, *=, /=, %=.
3.4 — Increment/decrement
increment.c — prefix va postfix farqi.
3.5 — Logical
logical.c — &&, ||, ! bilan murakkab shartlar.
3.6 — Ternary
ternary.c — ? : bilan har xil holatlar.
3.7 — Operator priority
tartib.c — qavslar va tartib.
3.8 — Yosh kalkulator
yosh-kalkulator.c — kunlar, soatlar, daqiqalar.
4-dars: Shartlar
4.1 — Even/odd
even-odd.c
4.2 — Grade
grade.c — A, B, C, D, F.
4.3 — Max of 3
max-of-3.c
4.4 — Leap year
leap-year.c — kabisa yili.
4.5 — Hafta kuni
weekday.c — switch bilan.
4.6 — Kalkulyator switch
calc.c
4.7 — Oy kunlari
month-days.c — har oyning kunlari.
4.8 — BMI kategoriya
bmi-category.c
4.9 — Fasl
season.c — if va switch versiyalar.
5-dars: For loop
5.1 — Asosiy for
asosiy.c
5.2 — Yig'indi
sum.c — turli yig'indilar.
5.3 — Faktorial
factorial.c — 1 dan 10 gacha.
5.4 — Mult table
mult-table.c — 2-9 ko'paytirish jadvali.
5.5 — Yulduzlar
stars.c — 4 ta naqsh.
5.6 — Tub sonlar
primes.c — 1-100 oraligida.
5.7 — Fibonacci
fibonacci.c — 20 ta raqam.
5.8 — Break/continue
break-continue.c
5.9 — GCD/LCM
gcd-lcm.c
6-dars: While
6.1 — Asosiy
while-asoslari.c
6.2 — Raqam tahlili
number-analysis.c — soni, yig'indi, teskari.
6.3 — Palindrome
palindrome.c — raqam uchun.
6.4 — Menu
menu.c — do-while bilan.
6.5 — GCD Euclidean
gcd-euclidean.c
6.6 — Collatz
collatz.c — 3n+1 conjecture.
6.7 — Prime check
prime-while.c
6.8 — Sikl tanlovi
4-5 ta vazifa uchun mos sikl tanlash va tushuntirish.
6.9 — Nested while
nested-while.c — 3 ta naqsh.
7-dars: Funksiyalar
7.1 — Asosiy
functions.c — qoshish, ayirish, kopaytirish.
7.2 — Shakllar
shapes.c — 5 ta shakl yuzasi.
7.3 — Max/min
max-min.c — 2 va 3 raqam uchun.
7.4 — Fact/Fib
fact-fib.c — funksiyalar bilan.
7.5 — Prime funksiyalar
prime-fn.c — is_prime, count_primes, print_primes.
7.6 — Temperature
temp.c — C/F/K aylantirish.
7.7 — Number utilities
utils.c — abs, sum_digits, count_digits, reverse va h.k.
7.8 — Power
power.c — pow o'rniga o'zinikingiz.
7.9 — Print helpers
print-helpers.c — print_line, print_box, print_header.
8-dars: Scope va recursion
8.1 — Scope
scope.c — global va local.
8.2 — Pass by value
pass-by-value.c — swap nima uchun ishlamaydi.
8.3 — Rekursiv
recursive.c — factorial, fib, gcd, sum_to_n.
8.4 — Static
static-var.c — counter, ID generator.
8.5 — Math library
my-math.c — my_pow, my_sqrt, my_abs.
8.6 — Number theory
number-theory.c — is_perfect, is_armstrong, divisors.
8.7 — Tower of Hanoi
hanoi.c — klassik rekursiv.
8.8 — Helpers
helpers.c — print_line, print_box, print_section.
9-dars: Input/Output
9.1 — Tanishuv
tanishuv.c — interaktiv ism/yosh/shahar.
9.2 — Calculator
calc.c — to'liq kalkulyator.
9.3 — Yosh hisobi
yosh.c — kun, soat, daqiqa.
9.4 — Narx chegirma
narx.c
9.5 — Number guessing
game.c — random raqam o'yini.
9.6 — Talabalar reytingi
students.c — N talaba, statistika.
9.7 — Menu
menu.c — 5 ta tanlov, har biri real ishlaydi.
9.8 — Format
format-mashq.c — jadval ko'rinishida.
9.9 — Echo
echo.c — getchar/putchar bilan.
10-dars: Strings
10.1 — Char asoslari
char-basics.c
10.2 — String basics
string-basics.c — strcpy, strcat, strlen, strcmp.
10.3 — My string
my-string.c — o'zingizning my_strlen va h.k.
10.4 — Palindrome
palindrome.c — string uchun.
10.5 — Vowel count
vowel-count.c
10.6 — Caesar cipher
caesar.c — shifrlash.
10.7 — Password validator
password.c — kuchli parol tekshirish.
10.8 — Word counter
word-count.c — fgets bilan.
10.9 — Case converter
case-converter.c — upper/lower/swap.
11-dars: Mini loyiha
11.1 — Loyiha tanlash va reja
- 7 ta loyiha variantidan birini tanlang yoki o'zingiznikingiz
- Drive'ga
reja.md(batafsil reja)
11.2 — GitHub repo
Yangi repo: c-mini-loyiha
- README.md
- .gitignore
- main.c (skeleton)
- Initial commit
11.3 — Funksiyalar
Har funksiyani alohida commit:
- create/add
- show/list
- update
- delete
- ... va h.k.
Kamida 7 ta commit.
11.4 — Validation
Har input uchun tekshirish. Commit: fix: add validation
11.5 — README to'liq
Markdown bilan chiroyli README.
11.6 — Test
Har xil holatlarda sinab ko'ring. Bug topsangiz — tuzating va commit.
11.7 — Final
Final commit va push. Repo URL'ni email orqali jo'nating.
12-dars: Imtihondan keyin
12.1 — Refleksiya
Drive Google Doc:
- Eng yoqimli dars
- Eng qiyin mavzu
- C va Scratch farqi
- 5-oyga maqsadlar
12.2 — Portfolio
c-darslari repo'ni tartibga keltiring:
- README.md to'liq
- Har dars uchun papka
- Har faylga sharh
12.3 — 5-oyga tayyorgarlik
- Massiv haqida o'qing (Wikipedia, MDN)
- Pointer haqida video ko'ring
- 4-oy darslarini takror
Topshirish formati
GitHub orqali:
Repo: c-darslari (asosiy) + c-mini-loyiha (loyiha uchun)
Har dars: alohida papka
Har vazifa: alohida .c fayl + alohida commit
Email:
Subject: 4-oy UV — [dars-raqam] — [Ism Familiya]
Body: GitHub repo havolasi + dars qisqacha sharhi
Baholash
| Mezon | Ball |
|---|---|
| To'liq bajarilgan | 50 |
| O'z vaqtida | 20 |
| Conventional commits | 15 |
| Kod toza, funksiyalar | 10 |
| Kreativlik | 5 |
| Jami | 100 |
Kech topshirish
- 1 kun kech: -10%
- 3 kun kech: -30%
- 1 hafta kech: 0
4-oy tugadi! 🎉
C tilini boshlash — qiyin lekin eng muhim qadam.
5-oyda: massiv, string algoritmlari, pointer, sort va search.
Yutuqlar tilab qolaman!