├── week12 ├── exp2.c ├── exp3.c ├── exp4.c └── exp1.c ├── README.md ├── week10 ├── ornek1.c ├── ornek2.c ├── ornek4.c ├── ornek3.c └── ornek5.c ├── week5 ├── for │ ├── exp5.c │ ├── exp2.c │ ├── exp4.c │ ├── exp3.c │ └── exp1.c └── while │ ├── exp6.c │ ├── exp8.c │ ├── exp7.c │ ├── exp9.c │ └── exp10.c ├── week7 ├── ornek4.c ├── ornek5.c ├── ornek6.c ├── ornek1.c ├── ornek7.c ├── ornek8.c ├── ornek3.c └── ornek2.c ├── week4 ├── ternary-inline │ ├── exp3-tek-cift.c │ └── exp4-nested-ternary.c └── switch-case │ ├── exp4-ay-tahmin.c │ └── exp8-dort-islem-menulu.c ├── week11 ├── exp1.c └── exp2.c ├── week3 └── if │ ├── exp3-tek-cift.c │ ├── exp6-karakter-karsilastirma.c │ ├── exp1-sayi-fark.c │ └── exp7-mil-km-donustur.c ├── week9 ├── recursive1.c ├── recursive3.c ├── recursive2.c ├── multi_argument.c └── esnek_arg.c ├── week6 ├── exp2.c ├── exp4.c ├── exp3.c ├── exp6.c ├── exp5.c └── exp1.c ├── week8 ├── ornek1.c ├── ornek4.c ├── ornek3.c ├── ornek2.c ├── ornek5.c └── ornek6.c ├── week2 ├── exp2.c └── exp1.c └── week1 ├── exp2.c └── exp1.c /week12/exp2.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/btu-cse/BLM0111-algorithms-programming/HEAD/week12/exp2.c -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # alp2122g 2 | Algoritma ve Programlama Haftalık uygulama Saati Föyleri 3 | 4 | [Code::Blocks Kurulumu Video Anlatımı](https://youtu.be/KisXBk7KMsA) 5 | -------------------------------------------------------------------------------- /week10/ornek1.c: -------------------------------------------------------------------------------- 1 | #include 2 | int main() 3 | { 4 | int var = 5; 5 | printf("Value: %d\n", var); 6 | printf("Address: %p", &var); //Notice, the ampersand(&) before var. 7 | return 0; 8 | } 9 | -------------------------------------------------------------------------------- /week5/for/exp5.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | 4 | int main() 5 | { 6 | int i; 7 | for (i=100; i>=1; i--){ 8 | printf("i: %d\n", i); 9 | } 10 | return 0; 11 | } 12 | -------------------------------------------------------------------------------- /week5/while/exp6.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | 4 | int main() 5 | { 6 | int sayi=0; 7 | while(sayi>5) 8 | sayi-=2; 9 | printf("%d\n", sayi); 10 | return 0; 11 | } 12 | -------------------------------------------------------------------------------- /week5/for/exp2.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | 4 | int main() 5 | { 6 | int i, k=0; 7 | for(i=20; i>=k; i--) 8 | { 9 | printf("%3d %3d \n", i, k); 10 | k+=3; 11 | } 12 | return 0; 13 | } 14 | -------------------------------------------------------------------------------- /week7/ornek4.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | 4 | int main() { 5 | char str1[20]="C Programlama"; 6 | char str2[20]; 7 | 8 | strcpy(str2,str1); 9 | 10 | printf("str2nin icerigi: %s",str2); 11 | 12 | } 13 | -------------------------------------------------------------------------------- /week5/while/exp8.c: -------------------------------------------------------------------------------- 1 | #include 2 | int main() 3 | { 4 | int i=0, j; 5 | while(i<5) 6 | { 7 | j = 0; 8 | while(j 2 | #include 3 | 4 | int main() 5 | { 6 | int i; 7 | 8 | for (i=1; i<=10; i++){ 9 | if (i==3) 10 | continue; 11 | printf("i:%d\n",i); 12 | } 13 | 14 | return 0; 15 | } 16 | -------------------------------------------------------------------------------- /week7/ornek5.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | 4 | int main() { 5 | char str1[]="Bilgisayar"; 6 | char str2[]="Programlama"; 7 | 8 | strcat(str1,str2); 9 | 10 | printf("str1in bellek icerigi %s\n",str1); 11 | 12 | return 0; 13 | } 14 | -------------------------------------------------------------------------------- /week10/ornek2.c: -------------------------------------------------------------------------------- 1 | #include 2 | 3 | void func(int *x){ 4 | for(int i = 0; i < 4; ++i){ 5 | printf("&x[%d] = %p, value: %d\n", i, &*(x+i), *(x+i)); 6 | } 7 | } 8 | 9 | int main() 10 | { 11 | int x[4]={1,3,5,7}; 12 | 13 | func(x); 14 | 15 | return 0; 16 | } 17 | -------------------------------------------------------------------------------- /week5/for/exp3.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | 4 | int main() 5 | { 6 | int i, j; 7 | for(i=4; i>=1; i--) 8 | { 9 | for(j=1; j<=3; j++) 10 | { 11 | printf("%3d", j); 12 | } 13 | printf("\n%3d\n", i); 14 | } 15 | return 0; 16 | } 17 | -------------------------------------------------------------------------------- /week4/ternary-inline/exp3-tek-cift.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | 4 | int main() 5 | { 6 | int x; 7 | printf("x sayisini giriniz: "); 8 | scanf("%d", &x); 9 | printf("\n"); 10 | 11 | x%2==0 ? printf("Sayi cift sayidir.\n") : printf("Sayi tek sayidir.\n"); 12 | 13 | return 0; 14 | } 15 | -------------------------------------------------------------------------------- /week5/for/exp1.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | 4 | int main() 5 | { 6 | int i, toplam=0; 7 | 8 | for(i=1; i<=50; i++) 9 | { 10 | if(i%2==0) 11 | toplam=toplam+i; 12 | } 13 | printf("1 ile 50 arasindaki cift sayilarin toplami = %d dir.\n", toplam); 14 | return 0; 15 | } 16 | -------------------------------------------------------------------------------- /week7/ornek6.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | 4 | int main() { 5 | char str1[20]="Program"; 6 | char str2[20]={'P','r','o','g','r','a','m','\0'}; 7 | 8 | printf("Str1 stringinin uzunlugu %d\n",strlen(str1)); 9 | printf("Str2 stringinin uzunlugu %d\n",strlen(str2)); 10 | 11 | return 0; 12 | } 13 | -------------------------------------------------------------------------------- /week11/exp1.c: -------------------------------------------------------------------------------- 1 | #include 2 | 3 | int main () { 4 | void* p; // Generic type pointer 5 | 6 | int i = 7; 7 | float f = 23.5; 8 | 9 | p = &i; 10 | printf ("i contains: %d\n", *((int*)p) ); 11 | 12 | p = &f; 13 | printf ("f contains: %f\n", *((float*)p)); 14 | 15 | return 0; 16 | } 17 | -------------------------------------------------------------------------------- /week3/if/exp3-tek-cift.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | 4 | int main() 5 | { 6 | int x; 7 | printf("x sayisini giriniz: "); 8 | scanf("%d", &x); 9 | printf("\n"); 10 | if (x%2==0) 11 | printf("Sayi cift sayidir.\n"); 12 | else 13 | printf("Sayi tek sayidir.\n"); 14 | return 0; 15 | } -------------------------------------------------------------------------------- /week5/while/exp7.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | 4 | int main() 5 | { 6 | int i=0, toplam=0, n; 7 | printf("n degerini giriniz: "); 8 | scanf("%d", &n); 9 | while(i<=n) 10 | { 11 | toplam+=i*i; 12 | i++; 13 | } 14 | printf("\nToplam: %d\n", toplam); 15 | return 0; 16 | } 17 | -------------------------------------------------------------------------------- /week4/ternary-inline/exp4-nested-ternary.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | 4 | int main() 5 | { 6 | int x; 7 | printf("x sayisini giriniz: "); 8 | scanf("%d", &x); 9 | printf("\n"); 10 | 11 | x>0 ? printf("Sayi pozitif.\n") : x < 0 ? printf("Sayi negatif.\n") : printf("Sayi sifir.\n"); 12 | 13 | return 0; 14 | } 15 | -------------------------------------------------------------------------------- /week5/while/exp9.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | 4 | int main() 5 | { 6 | int sayi=0; 7 | int n=0; 8 | 9 | printf("Bir sayi giriniz: "); 10 | scanf("%d", &sayi); 11 | printf("\n"); 12 | do 13 | { 14 | n++; 15 | printf("%d ", n); 16 | } while (n b) ? &a : &b; 20 | } 21 | -------------------------------------------------------------------------------- /week9/recursive1.c: -------------------------------------------------------------------------------- 1 | #include 2 | 3 | unsigned long long int factorial(unsigned int i); 4 | 5 | int main() { 6 | int i = 12; 7 | printf("Factorial of %d is %d\n", i, factorial(i)); 8 | return 0; 9 | } 10 | 11 | unsigned long long int factorial(unsigned int i) { 12 | 13 | if(i <= 1) { 14 | return 1; 15 | } 16 | return i * factorial(i - 1); 17 | } 18 | -------------------------------------------------------------------------------- /week9/recursive3.c: -------------------------------------------------------------------------------- 1 | #include 2 | 3 | int naturalSum(int i); 4 | 5 | int main() { 6 | int i; 7 | 8 | printf("Enter a positive integer: "); 9 | scanf("%d", &i); 10 | 11 | printf("Sum: %d",naturalSum(i)); 12 | 13 | return 0; 14 | } 15 | 16 | int naturalSum(int i) { 17 | if(i == 0) { 18 | return 0; 19 | } else { 20 | return i + naturalSum(i - 1); 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /week10/ornek4.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | 4 | void dizipointer() { 5 | 6 | int v[3]={10,100,200}; 7 | 8 | int *ptr; 9 | 10 | ptr=v; 11 | 12 | for(int i=0;i<3;i++) 13 | { 14 | printf("ptr degerleri %p\n",ptr); 15 | printf("*ptr degerleri %d\n",*ptr); 16 | ptr++; 17 | } 18 | } 19 | int main() 20 | { 21 | dizipointer(); 22 | return 0; 23 | } 24 | -------------------------------------------------------------------------------- /week9/recursive2.c: -------------------------------------------------------------------------------- 1 | #include 2 | 3 | int fibonacci(int i); 4 | 5 | int main() { 6 | 7 | int i; 8 | 9 | for (i = 0; i < 10; i++) { 10 | printf("%d\t\n", fibonacci(i)); 11 | } 12 | 13 | return 0; 14 | } 15 | 16 | int fibonacci(int i) { 17 | 18 | if(i == 0) { 19 | return 0; 20 | } 21 | 22 | if(i == 1) { 23 | return 1; 24 | } 25 | return fibonacci(i-1) + fibonacci(i-2); 26 | } 27 | -------------------------------------------------------------------------------- /week6/exp2.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | 4 | int main() 5 | { 6 | int i, dizi[10], enbuyuk; 7 | for(i=0; i<10; i++){ 8 | printf("%2d. sayiyi giriniz: ", i+1); 9 | scanf("%d", &dizi[i]); 10 | } 11 | enbuyuk=dizi[0]; 12 | for(i=1; i<10; i++){ 13 | if(dizi[i]>enbuyuk){ 14 | enbuyuk=dizi[i]; 15 | } 16 | } 17 | printf("\nEn buyuk deger= %d\n", enbuyuk); 18 | return 0; 19 | } 20 | -------------------------------------------------------------------------------- /week6/exp4.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | 4 | int main() 5 | { 6 | int i, j; 7 | int x[3][4] = {11,34,42,60, /* 1. satir elemanlari */ 8 | 72,99,10,50, /* 2. satir elemanlari */ 9 | 80,66,21,38}; /* 3. satir elemanlari */ 10 | for(i=0; i<3; i++) 11 | { 12 | for(j=0; j<4; j++) 13 | printf("%4d",x[i][j]); 14 | 15 | printf("\n"); 16 | } 17 | return 0; 18 | } 19 | -------------------------------------------------------------------------------- /week7/ornek1.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | 4 | int main() 5 | { 6 | int i, j; 7 | int x[3][4] = {11,34,42,60, /* 1. satir elemanlari */ 8 | 72,99,10,50, /* 2. satir elemanlari */ 9 | 80,66,21,38}; /* 3. satir elemanlari */ 10 | for(i=0; i<3; i++) 11 | { 12 | for(j=0; j<4; j++) 13 | printf("%4d",x[i][j]); 14 | 15 | printf("\n"); 16 | } 17 | return 0; 18 | } 19 | -------------------------------------------------------------------------------- /week8/ornek1.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | 4 | int us(int sayi, int ussu); 5 | 6 | int main(){ 7 | int a,b; 8 | printf("\nTaban = "); 9 | scanf("%d",&a); 10 | printf("\nUs = "); 11 | scanf("%d",&b); 12 | 13 | printf("\nUssu = %d\n",us(a,b)); 14 | return 0; 15 | } 16 | 17 | int us(int sayi, int ussu){ 18 | int sonuc=1; 19 | int i; 20 | for(i = 0; i < ussu; i++) 21 | sonuc *= sayi; 22 | return(sonuc); 23 | } 24 | -------------------------------------------------------------------------------- /week7/ornek7.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | 4 | int main() { 5 | char str1[100]; 6 | char str2[100]; 7 | int result; 8 | 9 | strcpy(str1,"hello"); 10 | strcpy(str2,"Hello"); 11 | 12 | result=strcmp(sayi1,sayi2); 13 | 14 | if (result==0) { 15 | printf("Str1 ve Str2 stringi birbirine esittir"); 16 | } 17 | else { 18 | printf("Str1 ve Str2 stringi birbirine esit degildir."); 19 | } 20 | 21 | return 0; 22 | } 23 | -------------------------------------------------------------------------------- /week7/ornek8.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | 4 | int main() { 5 | char ch[]="BurSA TEkniK UniVERSiteSi"; 6 | 7 | printf("TOUPPER: "); 8 | 9 | for(int i=0;i 2 | #include 3 | 4 | int main() 5 | { 6 | int sayi, i=1; 7 | printf("Bir sayi giriniz (1-10 arasi): "); 8 | scanf("%d", &sayi); 9 | printf("\n"); 10 | 11 | if (sayi<1 || sayi>10) 12 | { 13 | printf("1 - 10 araliginda bir sayi girmelisiniz!"); 14 | return 0; 15 | } 16 | 17 | while (i <= 10) 18 | { 19 | printf("%2d x %2d = %2d\n", sayi, i, sayi*i); 20 | i++; 21 | } 22 | return 0; 23 | } 24 | -------------------------------------------------------------------------------- /week10/ornek3.c: -------------------------------------------------------------------------------- 1 | #include 2 | void swap(int *n1, int *n2); 3 | 4 | int main() 5 | { 6 | int num1 = 5, num2 = 10; 7 | 8 | // address of num1 and num2 is passed 9 | swap( &num1, &num2); 10 | 11 | printf("num1 = %d\n", num1); 12 | printf("num2 = %d", num2); 13 | return 0; 14 | } 15 | 16 | // pointer n1 and n2 stores the address of num1 and num2 respectively 17 | void swap(int* n1, int* n2) 18 | { 19 | int temp; 20 | temp = *n1; 21 | *n1 = *n2; 22 | *n2 = temp; 23 | } 24 | -------------------------------------------------------------------------------- /week3/if/exp6-karakter-karsilastirma.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | 4 | int main() 5 | { 6 | char harf; 7 | printf("Kontrol etmek icin harf giriniz: "); 8 | scanf("%c",&harf); 9 | 10 | if((harf >= 'a' && harf <= 'z') || (harf >= 'A' && harf <= 'Z')) 11 | { 12 | printf("\nGirdiginiz '%c' harfi alfabede mevcuttur...\n",harf); 13 | } 14 | else 15 | { 16 | printf("\nGirdiginiz '%c' harfi alfabede mevcut degildir...\n",harf); 17 | } 18 | return 0; 19 | } 20 | -------------------------------------------------------------------------------- /week2/exp2.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | 4 | int main() 5 | { 6 | printf ("Karakterler: %c %c %c\n", 'a', 65, 68); 7 | printf ("Decimal Sayilar: %d %ld\n", 1977, 650000L); 8 | printf ("Oncesinde Bosluk: %10d \n", 1977); 9 | printf ("Oncesinde 0 yazmak: %010d \n", 1977); 10 | printf ("Farkli Gosterimler: %d %x %o %#x %#o \n", 100, 100, 100, 100, 100); 11 | printf ("float Sayilar: %4.2f %+.0e %E \n", 3.1416, 3.1416, 3.1416); 12 | printf ("%s \n", "Bir String"); 13 | 14 | return 0; 15 | } 16 | -------------------------------------------------------------------------------- /week8/ornek4.c: -------------------------------------------------------------------------------- 1 | #include 2 | void mukemmel(int n) 3 | { 4 | int i=1,toplam=0; 5 | while(i 2 | #include 3 | 4 | int main() 5 | { 6 | int *pc,c; 7 | 8 | c=22; 9 | printf("c'nin adresi: %p\n",&c); 10 | printf("c'nin degeri: %d\n\n",c); 11 | 12 | pc=&c; 13 | printf("pc'nin adresi: %p\n",pc); 14 | printf("pc'nin icerigi: %d\n\n",*pc); 15 | 16 | c=11; 17 | printf("pc'nin adresi: %p\n",pc); 18 | printf("pc'nin icerigi: %d\n\n",*pc); 19 | 20 | *pc=2; 21 | printf("c'nin adresi: %p\n",&c); 22 | printf("c'nin degeri: %d\n\n",c); 23 | 24 | return 0; 25 | } 26 | -------------------------------------------------------------------------------- /week12/exp3.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | 4 | int main() 5 | { 6 | int i; 7 | int *ptr=(int *)malloc(2*sizeof(int)); 8 | 9 | printf("2 adet sayi giriniz: \n"); 10 | for(i=0;i<2;i++) { 11 | scanf("%d",ptr+i); 12 | } 13 | 14 | ptr=(int *)realloc(ptr,4*sizeof(int)); 15 | 16 | printf("2 sayi daha giriniz: \n"); 17 | for(i=2;i<4;i++) { 18 | scanf("%d",ptr+i); 19 | } 20 | 21 | for(i=0;i<4;i++) { 22 | printf("ptr[%d]=%d\n",i,*(ptr+i)); 23 | } 24 | 25 | return 0; 26 | } 27 | -------------------------------------------------------------------------------- /week12/exp4.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | 4 | int main() 5 | { 6 | int i; 7 | int *ptr=(int *)malloc(2*sizeof(int)); 8 | 9 | printf("2 adet sayi giriniz: \n"); 10 | for(i=0;i<2;i++) { 11 | scanf("%d",ptr+i); 12 | } 13 | 14 | ptr=(int *)realloc(ptr,4*sizeof(int)); 15 | 16 | printf("2 sayi daha giriniz: \n"); 17 | for(i=2;i<4;i++) { 18 | scanf("%d",ptr+i); 19 | } 20 | 21 | for(i=0;i<4;i++) { 22 | printf("ptr[%d]=%d\n",i,*(ptr+i)); 23 | } 24 | 25 | return 0; 26 | } 27 | -------------------------------------------------------------------------------- /week8/ornek3.c: -------------------------------------------------------------------------------- 1 | #include 2 | long int fib(long int i) 3 | { 4 | long int sonuc; 5 | if(i==0||i==1) 6 | return (i); 7 | else 8 | sonuc=fib(i-1)+fib(i-2); 9 | return(sonuc); 10 | } 11 | int main() 12 | { 13 | long int sonuc,n; 14 | int i; 15 | printf("/*Kac elemandan olusan Fibonacci Serisi Olusturulsun?*/\n\nLimiti girin : "); 16 | scanf("%ld",&n); 17 | printf("\n"); 18 | for(i=0;i 2 | #include 3 | 4 | int main() { 5 | 6 | // Cikti ne olur ? 7 | 8 | int A, B, sonuc; 9 | printf("A degerini giriniz: "); 10 | scanf("%d", &A); 11 | 12 | printf("\nB degerini giriniz: "); 13 | scanf("%d", &B); 14 | 15 | printf("\n"); 16 | if (A==B){ 17 | sonuc=A-B; 18 | printf("Sonuc: %d\n", sonuc); 19 | } else if (A>B){ 20 | sonuc=A-B; 21 | printf("Sonuc: %d\n", sonuc); 22 | } else { 23 | sonuc=B-A; 24 | printf("Sonuc: %d\n", sonuc); 25 | } 26 | return 0; 27 | } -------------------------------------------------------------------------------- /week8/ornek2.c: -------------------------------------------------------------------------------- 1 | #include 2 | void asal() 3 | { 4 | int i=2,j,a; 5 | while(i<=100) 6 | { 7 | a=1; 8 | for(j=2;j 2 | #include 3 | 4 | int main() 5 | { 6 | int i, n, A[100], B[100], C[100]; 7 | printf("Dizinin eleman sayisi: "); 8 | scanf("%d", &n); 9 | printf("\n"); 10 | 11 | for(i=0; i 2 | #include 3 | int main() 4 | { 5 | int x,y,i,j; 6 | int a[4][4]={10,25,36,77, 7 | 2,7,8,5, 8 | 4,2,93,55, 9 | 6,101,6,1}; 10 | int enb=a[0][0]; 11 | 12 | for(i=0;i<4;i++) 13 | { 14 | for(j=0;j<4;j++) 15 | { 16 | if(a[i][j] > enb) 17 | { 18 | enb = a[i][j]; 19 | x = i; 20 | y = j; 21 | } 22 | } 23 | } 24 | printf("En buyuk eleman [%d,%d] indislidir\n", x,y); 25 | return 0; 26 | } 27 | -------------------------------------------------------------------------------- /week7/ornek3.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | int main() 4 | { 5 | int x,y,i,j; 6 | int a[4][4]={10,25,36,77, 7 | 2,7,8,5, 8 | 4,2,93,55, 9 | 6,101,6,1}; 10 | int enb=a[0][0]; 11 | 12 | for(i=0;i<4;i++) 13 | { 14 | for(j=0;j<4;j++) 15 | { 16 | if(a[i][j] > enb) 17 | { 18 | enb = a[i][j]; 19 | x = i; 20 | y = j; 21 | } 22 | } 23 | } 24 | printf("En buyuk eleman [%d,%d] indislidir\n", x,y); 25 | return 0; 26 | } 27 | -------------------------------------------------------------------------------- /week1/exp2.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | 4 | /* 5 | Hata ayiklama uygulamasi. Oncelikle hata ayiklamaya baslanacak yer, satir numarasinin 6 | sagindaki alana isaretlenir. Ardindan uygulama hata ayiklama (debug) perspektifinde 7 | baslatilir. Ust menuden sirasiyla Debug->Debugging windows->Watches secilerek, degisken 8 | deger gozlemleme penceresi acilir. Daha sonra kod satir satir ilerletilir, her satirda 9 | degisim gozlemlenerek hata bulunmaya calisilir. 10 | */ 11 | 12 | int main() 13 | { 14 | int i=0; 15 | i=i+1; 16 | i=i+5; 17 | i=8; 18 | return 0; 19 | } 20 | -------------------------------------------------------------------------------- /week12/exp1.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | 4 | int* isimsiz(int boyut); 5 | 6 | int main() 7 | { 8 | int boyut; 9 | printf("Dizi boyutunu giriniz: "); 10 | scanf("%d",&boyut); 11 | 12 | int* tut=isimsiz(boyut); 13 | 14 | int s; 15 | for(s=0;s 2 | 3 | int ikibasamaktopla(int n); 4 | int sonbasamak(int n); 5 | int sondanikincibasamak(int n); 6 | 7 | int main() 8 | { 9 | int sayi; 10 | 11 | printf("Sayiyi giriniz: "); 12 | scanf("%d",&sayi); 13 | 14 | int toplam = ikibasamaktopla(sayi); 15 | printf("Iki basamagin toplami = %d",toplam); 16 | 17 | return 0; 18 | } 19 | 20 | int ikibasamaktopla(int n) 21 | { 22 | int sonuc = sonbasamak(n) + sondanikincibasamak(n); 23 | return sonuc; 24 | } 25 | 26 | int sonbasamak(int n) 27 | { 28 | return (n%10); 29 | } 30 | 31 | int sondanikincibasamak(int n) 32 | { 33 | return ((n/10)%10); 34 | } 35 | -------------------------------------------------------------------------------- /week9/multi_argument.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | 4 | int main(int argsay, char *argvek[]) 5 | { 6 | // Birden fazla argüman verildiğinde argüman dizisi indeks 1'den sonra atamaya başlar. indeks 0 her zaman programın adıdır. Örn: ./esnek 7 | 8 | int toplam; 9 | // Argüman sayısı 2 argüman + program adından 3 olmalıdır. 10 | int argument_count = 3; 11 | if(argsay < argument_count) { 12 | printf("Eksik parametre !\n"); 13 | exit(1); 14 | } else if(argsay > argument_count) { 15 | printf("Fazla parametre !\n"); 16 | exit(1); 17 | } 18 | 19 | toplam = atoi(argvek[1]) + atoi(argvek[2]); 20 | 21 | printf("Toplamlar %d\n", toplam); 22 | 23 | return 0; 24 | } 25 | -------------------------------------------------------------------------------- /week9/esnek_arg.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | 4 | int topla(int, ...); 5 | 6 | int main(void){ 7 | printf("toplam: %d", topla(2, 11, 22)); 8 | printf("toplam: %d", topla(3, 11, 22, 33)); 9 | printf("toplam: %d", topla(4, 11, 22, 33, 44)); 10 | printf("toplam: %d", topla(5, 11, 22, 33, 44, 55)); 11 | 12 | return 0; 13 | } 14 | 15 | int topla(int n, ...){ 16 | // va_list ile argümanların tip ataması gerçekleştirilir. 17 | va_list ap; 18 | int i, top = 0; 19 | // va_start ile argümanlar hafızaya alınır. 20 | va_start(ap, n); 21 | 22 | // va_arg ile hafızadaki argümanlar indis değeri kullanılarak okunur. 23 | for(i = 1; i<=n; i++){ 24 | top += va_arg(ap, int); 25 | } 26 | 27 | va_end(ap); 28 | return top; 29 | } 30 | -------------------------------------------------------------------------------- /week6/exp5.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | 4 | int main() 5 | { 6 | int a[2][3] = {5, 3, 7, 0, 1, 2}; 7 | int b[2][3] = {1, 2, 3, 4, 5, 6}; 8 | int c[2][3]; 9 | int i, j; 10 | 11 | printf("\nA Matrisi: \n"); 12 | for(i=0; i<2; i++){ 13 | for(j=0; j<3; j++) 14 | printf("%4d",a[i][j]); 15 | printf("\n"); 16 | } 17 | printf("\nB Matrisi: \n"); 18 | for(i=0; i<2; i++){ 19 | for(j=0; j<3; j++) 20 | printf("%4d",b[i][j]); 21 | printf("\n"); 22 | } 23 | printf("\nC Matrisi:\n"); 24 | for(i=0; i<2; i++){ 25 | for(j=0; j<3; j++){ 26 | c[i][j] = a[i][j] + b[i][j]; 27 | printf("%4d",c[i][j]); 28 | } 29 | printf("\n"); 30 | } 31 | return 0; 32 | } 33 | -------------------------------------------------------------------------------- /week7/ornek2.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | 4 | int main() 5 | { 6 | int a[2][3] = {5, 3, 7, 0, 1, 2}; 7 | int b[2][3] = {1, 2, 3, 4, 5, 6}; 8 | int c[2][3]; 9 | int i, j; 10 | 11 | printf("\nA Matrisi: \n"); 12 | for(i=0; i<2; i++){ 13 | for(j=0; j<3; j++) 14 | printf("%4d",a[i][j]); 15 | printf("\n"); 16 | } 17 | printf("\nB Matrisi: \n"); 18 | for(i=0; i<2; i++){ 19 | for(j=0; j<3; j++) 20 | printf("%4d",b[i][j]); 21 | printf("\n"); 22 | } 23 | printf("\nC Matrisi:\n"); 24 | for(i=0; i<2; i++){ 25 | for(j=0; j<3; j++){ 26 | c[i][j] = a[i][j] + b[i][j]; 27 | printf("%4d",c[i][j]); 28 | } 29 | printf("\n"); 30 | } 31 | return 0; 32 | } 33 | -------------------------------------------------------------------------------- /week3/if/exp7-mil-km-donustur.c: -------------------------------------------------------------------------------- 1 | #include 2 | #define ORAN 1.609344 3 | int main() 4 | { 5 | char secim; 6 | float mesafe, sonuc; 7 | 8 | printf("Hangisi? (Mil: M/m veya Kilometre: K/k): "); 9 | scanf("%c", &secim); 10 | printf("\n"); 11 | 12 | if((secim=='M')||(secim=='m')) 13 | { 14 | printf("Kac mil yol aldiniz: "); 15 | scanf("%f", &mesafe); 16 | sonuc=mesafe*ORAN; 17 | printf("\n%6.2f Mil = %6.2f Kilometre\n", mesafe, sonuc); 18 | } 19 | else if((secim=='K')||(secim=='k')) 20 | { 21 | printf("Kac kilometre yol aldiniz: "); 22 | scanf("%f", &mesafe); 23 | sonuc=mesafe/ORAN; 24 | printf("\n%6.2f Kilometre = %6.2f Mil\n", mesafe, sonuc); 25 | } 26 | else 27 | printf("Yanlis harf girildi...\n"); 28 | return 0; 29 | } 30 | -------------------------------------------------------------------------------- /week4/switch-case/exp4-ay-tahmin.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | 4 | int main() { 5 | int x; 6 | printf("Bir ay giriniz: "); 7 | scanf("%d",&x); 8 | 9 | switch(x){ 10 | case 12 : 11 | case 1 : 12 | case 2 : 13 | printf("Girdiginiz ay kis mevsimindedir.\n"); 14 | break; 15 | case 3 : 16 | case 4 : 17 | case 5 : 18 | printf("Girdiginiz ay ilkbahar mevsimindedir.\n"); 19 | break; 20 | break; 21 | case 6 : 22 | case 7 : 23 | case 8 : 24 | printf("Girdiginiz ay yaz mevsimindedir.\n"); 25 | break; 26 | case 9 : 27 | case 10 : 28 | case 11 : 29 | printf("Girdiginiz ay sonbahar mevsimindedir.\n"); 30 | break; 31 | default : 32 | printf("Yanlis bir giris yaptiniz\n"); 33 | } 34 | return 0; 35 | } 36 | 37 | -------------------------------------------------------------------------------- /week1/exp1.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | 4 | /* 5 | Algoritmalar ve Programlama dersi, hafta 1 lab. materyali. Kod kacis karakterlerinin kullanimini icerir. 6 | \n : Alt satira gec 7 | \t : Tab karakterini simüle eder. 8 | \r : Imleci satir basina tasir. 9 | \b : Sola dogru silme islemini gerceklestirir (backspace). 10 | \a : Alarm sesi cikarir. 11 | \\ : Sola yatik cizgi cizer. 12 | \" : Cift tirnak ekler. 13 | 14 | Her satiri ayri ayri, basindaki yorum isaretlerini (iki saga yatik cubuk, //) silerek inceleyiniz. 15 | */ 16 | 17 | int main() 18 | { 19 | printf("Hello\nworld1"); 20 | printf("Hello\tworld2"); 21 | printf("Hello\rworld3"); 22 | printf("Hello\bworld4"); 23 | printf("Hello\aworld5"); 24 | printf("Hello\\world6"); 25 | printf(" Hello\"world7\" "); 26 | return 0; 27 | } 28 | -------------------------------------------------------------------------------- /week6/exp1.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | 4 | int main() 5 | { 6 | int i, N, sayacTek=0, sayacCift=0; 7 | printf("Bir N degeri giriniz: "); 8 | scanf("%d", &N); 9 | printf("\n"); 10 | 11 | int dizi[N], tek[N], cift[N]; 12 | 13 | for (i=1; i<=N; i++){ 14 | dizi[i] = i; 15 | } 16 | 17 | for (i=0; i<=N; i++){ 18 | if(dizi[i]%2==0){ 19 | cift[sayacCift]=i; 20 | sayacCift++; 21 | } 22 | else{ 23 | tek[sayacTek]=i; 24 | sayacTek++; 25 | } 26 | } 27 | printf("Tek Sayilar:\n"); 28 | for(i=0; i 2 | #include 3 | 4 | int main() 5 | { 6 | int secim; 7 | float a,b; 8 | 9 | printf("********* MENU ************\n"); 10 | printf("1.TOPLAMA\n"); 11 | printf("2.CIKARTMA\n"); 12 | printf("3.CARPMA\n"); 13 | printf("4.BOLME\n\n"); 14 | 15 | printf("ISLEM NO GIRINIZ--> "); 16 | scanf("%d",&secim); 17 | printf("\n"); 18 | 19 | printf("1.sayi: "); 20 | scanf("%f",&a); 21 | printf("2.sayi: "); 22 | scanf("%f",&b); 23 | 24 | switch(secim) 25 | { 26 | case 1: printf("Sonuc= %5.2f\n",a+b); break; 27 | case 2: printf("Sonuc= %5.2f\n",a-b); break; 28 | case 3: printf("Sonuc= %5.2f\n",a*b); break; 29 | case 4: printf("Sonuc= %5.2f\n",a/b); break; 30 | default: printf("islem gecersiz\n"); 31 | } 32 | return 0; 33 | } 34 | -------------------------------------------------------------------------------- /week8/ornek6.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | 4 | 5 | 6 | void yerel_degisken(); 7 | void yerel_static_degisken(); 8 | void global_degisken(); 9 | 10 | int x=1; 11 | 12 | int main() 13 | { 14 | int x=10; 15 | printf("Main icerisindeki lokal x:\t%d\n",x); 16 | { 17 | int x=7; 18 | printf("Main icerisindeki scope baslangicta lokal x:\t%d\n",x); 19 | x++; 20 | printf("Main icerisindeki scope cikarken lokal x:\t%d\n",x); 21 | } 22 | 23 | printf("Main icerisindeki lokal x:\t%d\n",x); 24 | 25 | yerel_degisken(); 26 | yerel_static_degisken(); 27 | yerel_degisken(); 28 | global_degisken(); 29 | yerel_static_degisken(); 30 | global_degisken(); 31 | 32 | return 0; 33 | } 34 | 35 | void yerel_degisken() { 36 | int x=30; 37 | printf("yerel_degisken icerisinde baslangicta lokal x:\t%d\n",x); 38 | x*=20; 39 | printf("yerel_degisken icerisinde cikarken lokal x:\t%d\n",x); 40 | } 41 | 42 | void yerel_static_degisken() { 43 | static int x=30; 44 | printf("yerel_static_degisken icerisinde baslangicta statik x:\t%d\n",x); 45 | x++; 46 | printf("yerel_static_degisken icerisinde baslangicta statik x:\t%d\n",x); 47 | 48 | void global_degisken() { 49 | printf("global_degisken icerisinde baslangicta global x:\t%d\n",x); 50 | x-=100; 51 | printf("global_degisken icerisinde cikarken global x:\t%d\n",x); 52 | } 53 | 54 | -------------------------------------------------------------------------------- /week2/exp1.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | 4 | int main() 5 | { 6 | 7 | int a = 1, b = 10, c = 100; // tam sayilar tutan degiskenler 8 | double d = 1.0, e = 10.0, f = 100.0; // ondalikli sayilar tutan degiskenler 9 | char *str = "Algoritma ve Programlama"; // karakter dizisini 10 | 11 | // %d, tam sayi 12 | printf("%d\n",a); 13 | //printf("%d\n",b); 14 | //printf("%d\n",c); 15 | 16 | printf("\n"); 17 | 18 | // (%n, n degiskene ayrilan alan) 19 | //printf("%3d\n",a); 20 | //printf("%3d\n",b); 21 | //printf("%3d\n",c); 22 | 23 | printf("\n"); 24 | // (%.n, n keskinlik) 25 | //printf("%.3d\n",a); 26 | //printf("%.3d\n",b); 27 | //printf("%.3d\n",c); 28 | 29 | printf("\n"); 30 | // %f, ondalikli sayilar 31 | //printf("%f\n",d); 32 | //printf("%f\n",e); 33 | //printf("%f\n",f); 34 | 35 | printf("\n"); 36 | // (%.n, n keskinlik) 37 | //printf("%.3f\n",d); 38 | //printf("%.3f\n",e); 39 | //printf("%.3f\n",f); 40 | 41 | printf("\n"); 42 | // (%t.n, t degiskene ayrilan alan, n keskinlik) 43 | //printf("%7.3f\n",d); 44 | //printf("%7.3f\n",e); 45 | //printf("%7.3f\n",f); 46 | 47 | printf("\n"); 48 | // %s, karakter dizileri 49 | //printf("*%s*\n",str); 50 | //printf("*%.9s*\n",str); 51 | //printf("*%-40s*\n",str); 52 | //printf("*%-40.9s*\n",str); 53 | //printf("*%20.9s*\n",str); 54 | 55 | printf("\n"); 56 | 57 | return 0; 58 | } 59 | --------------------------------------------------------------------------------