☰ Dersleri Göster

Pointers (Adres işaretleyiciler) (Bol Örnek)

Bu derste pointer'ların nasıl kullanıldığını öğreneceksiniz.

Kursa 27.99 TL'ye kayıt olmak için TIKLAYINIZ.

 

#include <stdio.h>
#include <stdlib.h>
#include <locale.h>
int main()
{
    setlocale(LC_ALL,"Turkish");

   /* int sayi;

    printf("Bir sayı giriniz...\n");
    scanf("%d",&sayi);

    int *sayininAdresi;
    sayininAdresi = &sayi;
    printf("%d %x\n",*sayininAdresi,sayininAdresi);
    printf("%d %x",sayi,&sayi);*/

   /* int sayi=12,*sayininAdresi;
    float kesirlisayi=5.7, *kesirliSayininAdresi;
    double buyukKesirliSayi=7.8, *buyukKesirliSayininAdresi;
    char karakter='K',*karakterinAdresi;

    printf("%d\n",sayi);
    printf("%f\n",kesirlisayi);
    printf("%lf\n",buyukKesirliSayi);
    printf("%c\n",karakter);

    sayininAdresi = &sayi;
    kesirliSayininAdresi = &kesirlisayi;
    buyukKesirliSayininAdresi = &buyukKesirliSayi;
    karakterinAdresi = &karakter;

    printf("%d  %x %x\n",*sayininAdresi,sayininAdresi,sayininAdresi+1);
    printf("%f  %x %x\n",*kesirliSayininAdresi,kesirliSayininAdresi,kesirliSayininAdresi+1);
    printf("%lf %x %x\n",*buyukKesirliSayininAdresi,buyukKesirliSayininAdresi,buyukKesirliSayininAdresi + 1 );
    printf("%c  %x %x\n",*karakterinAdresi,karakterinAdresi,karakterinAdresi+1);
*/


    int sayilar[6] = {1,2,3,4,5,6};

    int *sayilarDizisininAdresi;

    sayilarDizisininAdresi = &sayilar;

    printf("%d\n",*sayilarDizisininAdresi);
    printf("%d\n",*sayilarDizisininAdresi+1);
    printf("%d\n",*sayilarDizisininAdresi+2);
    printf("%d\n",*sayilarDizisininAdresi+3);
    printf("%d\n",*sayilarDizisininAdresi+4);
    printf("%d\n",*sayilarDizisininAdresi+5);


    return 0;
}

 

#include <stdio.h>
#include <stdlib.h>
#include <locale.h>

void yildizBas(int *adet){

   for(int i=0;i<*adet;i++){
    printf("*  ");
   }
}


int main()
{
    setlocale(LC_ALL,"Turkish");

    int sayi;
    printf("Kaç adet * bastırılmasını istiyorsunuz ? \n");
    scanf("%d",&sayi);

    yildizBas(&sayi);

  /*  int sayi1=5,sayi2=8;
    int *sayi1Adres,*sayi2Adres;

    sayi1Adres = &sayi1;
    sayi2Adres = &sayi2;

    printf("%d\n",*sayi1Adres);
    printf("%d\n",*sayi2Adres);*/


   /* int x,y=0;
    int *a1,*a2 = &y;

    a1 = a2;

    x = ++(*a2);
    *a2 = *a1 + x;

    printf("%d %d %d %d",x,y,*a1,*a2);*/




    return 0;
}

 

#include <stdio.h>
#include <stdlib.h>
#include <locale.h>

float topla(float *x, float *y){
    return *x+*y;
}

float cikar(float *a, float *b){
    return *a-*b;
}

float carp(float *c,float *d){
    return *c**d;
}
float bol(float *sayi1,float *sayi2){
    return *sayi1/(*sayi2);
}


int main()
{
    setlocale(LC_ALL,"Turkish");

    float sayi1,sayi2;

    printf("Lütfen 2 adet sayı giriniz...\n");
    scanf("%f%f",&sayi1,&sayi2);

    printf("%f\n",topla(&sayi1,&sayi2));
    printf("%f\n",cikar(&sayi1,&sayi2));
    printf("%f\n",carp(&sayi1,&sayi2));
    printf("%f\n",bol(&sayi1,&sayi2));



    return 0;
}

 

#include <stdio.h>
#include <stdlib.h>
#include <locale.h>


void sayilariDegistir(int *sayi1,int *sayi2){

    int temp = *sayi1;
    *sayi1 = *sayi2;
    *sayi2 = temp;

}

int main()
{
    setlocale(LC_ALL,"Turkish");


    int sayi1,sayi2;
    printf("Lütfen değiştirmek istediğiniz 2 adet sayı giriniz...\n");
    scanf("%d%d",&sayi1,&sayi2);

    printf("sayi1 = %d sayi2 = %d\n",sayi1,sayi2);
    sayilariDegistir(&sayi1,&sayi2);
    printf("sayi1 = %d sayi2 = %d",sayi1,sayi2);





    return 0;
}

 

#include <stdio.h>
#include <stdlib.h>
#include <locale.h>

int main()
{
    setlocale(LC_ALL,"Turkish");

    int girilenSayiAdeti;
    float sayilar[100],toplam=0,ortalama;

    printf("Lütfen kaç tane sayının ortalamasını hesaplamak istediğinizi giriniz.\n");
    scanf("%d",&girilenSayiAdeti);

    while(girilenSayiAdeti >100 || girilenSayiAdeti <=0){
        printf("Lütfen 1 - 100 arasında bir değer giriniz...\n");
        printf("Lütfen kaç tane sayının ortalamasını hesaplamak istediğinizi tekrar giriniz.\n");
        scanf("%d",&girilenSayiAdeti);
    }

    for(int i=0;i<girilenSayiAdeti;i++){
        printf("Lütfen %d. sayıyı giriniz...\n",i+1);
        scanf("%f",&sayilar[i]);
        toplam += sayilar[i];
    }

    ortalama = toplam / girilenSayiAdeti;
    printf("Girilen sayıların toplamı = %f\n",toplam);
    printf("Girilen sayıların ortalaması = %f\n",ortalama);

    return 0;
}

 

#include <stdio.h>
#include <stdlib.h>
#include <locale.h>
#include <string.h>

int dizininUzunlugunuBul(char *dizininAdresi){
    int dizininUzunlugu = 0;

    for(int i=0;dizininAdresi[i] != '\0'; i++ ){

        dizininUzunlugu++;
    }

    return dizininUzunlugu;

}


int main()
{
    setlocale(LC_ALL,"Turkish");

    char isim[] = "Kaan Academy";
    printf("\"%s\"  dizisinin uzunluguna bakacağız.\n",isim);
    printf("Dizinin uzunlugu: %d\n",dizininUzunlugunuBul(&isim));
    printf("STRLEN : %d\n",strlen(isim));

    return 0;
}

 

#include <stdio.h>
int main(){
    char kelime[30];
    char *duzAdres,*tersAdres;
    printf("Lütfen Palindrom olup olmadığını öğrenmek istediğiniz kelimeyi giriniz...\n");
    gets(kelime);
    for(tersAdres=kelime; *tersAdres !=NULL;tersAdres++);
        for(duzAdres=kelime,tersAdres--;tersAdres>=duzAdres;){
            if(*tersAdres == *duzAdres){
                tersAdres--;
                duzAdres++;
            }
            else{
                break;
            }
        }
        if(duzAdres>tersAdres){
                puts(kelime);
                printf("Palindromdur...\n");
            }
            else{
                puts(kelime);
                printf("Palindrom değildir...\n");
            }
}


#include <stdio.h>
#include <stdlib.h>
#include <locale.h>
int main()
{
    setlocale(LC_ALL,"Turkish");

 /*   char *takimlar[]={"Balıkesirspor","Galatasaray","Beşiktaş","Fenerbahçe","Trabzsonspor"};

    for(int i=0;takimlar[i]!='\0';i++){
        printf("%s\n",*(takimlar+i));
    }*/


    char ulkeler[5][20];
    int i;
    for(i=0;i<5;i++){
        printf("%d. ülkeye giriniz\n",i+1);
        scanf("%s",ulkeler[i]);
    }

  /*  for(i=0;i<5;i++){
        printf("%s\n",ulkeler[i]);
    }*/

    char *ulkelerinAdresleri[5];

    for(i=0;i<5;i++){
        ulkelerinAdresleri[i] = &ulkeler[i];
    }

    for(i=0;i<5;i++){
        printf("%s\n",*(ulkelerinAdresleri+i));
    }
    return 0;
}