Çanakkale Onsekiz Mart Üniversitesi Bilgisayar Mühendisliği Bölümü yapısal programlama(C) ders notlarım.
--------------------------pointer------------------------------------------------
#include <stdio.h>
#include <stdlib.h>
int main()
{
int a;
a=5;
int *aptr;
aptr=&a;
printf("a degiskeninin degeri=%d \n adresi=%p \n",a,&a);
printf("aptr degeri=%d \n icinde tuttugu adres=%p \n aptr'nin kendi adresi=%p",*aptr,aptr,&aptr);
return 0;
}
----------------------Call By Value---------------------------------------------
#include <stdio.h>
#include <stdlib.h>
int main()
{
int a=10;
printf("a=%d call by value oncesi\n",a);
fonk(a);
printf("a=%d call by value sonrasi\n",a);
return 0;
}
void fonk(int x)
{
printf("fonksiyonaa girerken x=%d\n",x);
x=x+10;
printf("fonksiyondan cikarken x=%d\n",x);
}
---------------------call by value reference-------------------------------------------------
#include <stdio.h>
#include <stdlib.h>
int main()
{
int a=10,sonuc;
int *aptr;
aptr=&a;
printf("call by value oncesi a=%d \n",a);
fonk(a);
printf("call by value sonrasi a=%d \n",a);
printf("\n");
printf("call by value reference oncesi a=%d \n",a);
fonk2(&a);
printf("call by value reference sonrasi a=%d \n",a);
return 0;
}
void fonk(int x)
{
printf("fonksiyonaa girerken x=%d\n",x);
x=x+10;
printf("fonksiyondan cikarken x=%d\n",x);
}
void fonk2(int *aptr)
{
printf("fonksiyona girerken aptr=%d \n",*aptr);
*aptr=*aptr+10;
printf("fonksiyona cikarken aptr=%d \n",*aptr);
}
------------------------------Proje-------------------------------------------------------------
#include <stdio.h>
#include <stdlib.h>
int main()
{
int sayi1,sayi2,sayi3,sayi4,degis1,degis2;
int *ptr1;
int *ptr2;
printf("-----4 adet sayi giriniz-----\n");
printf("1. sayiyi giriniz= ");
scanf("%d",&sayi1);
printf("\n2. sayiyi giriniz= ");
scanf("%d",&sayi2);
printf("\n3. sayiyi giriniz= ");
scanf("%d",&sayi3);
printf("\n4. sayiyi giriniz= ");
scanf("%d",&sayi4);
printf("-----Degisecek 2 sayiyi giriniz-----\n");
printf("\nDegisecek 1. sayiyi giriniz= ");
scanf("%d",°is1);
printf("\nDegisecek 2. sayiyi giriniz= ");
scanf("%d",°is2);
printf("Degismeden Once Sayilar= Sayi1=%d Sayi2=%d Sayi3=%d Sayi4=%d \n",sayi1,sayi2,sayi3,sayi4);
if(degis1==sayi1)
{
if(degis2==sayi2)
{
fonk(&sayi1,&sayi2);
}
else if(degis2==sayi3)
{
fonk(&sayi1,&sayi3);
}
else if(degis2==sayi4)
{
fonk(&sayi1,&sayi4);
}
else
{
printf("hatali deger girisi");
}
}
else if(degis1==sayi2)
{
if(degis2==sayi1)
{
fonk(&sayi2,&sayi1);
}
else if(degis2==sayi3)
{
fonk(&sayi2,&sayi3);
}
else if(degis2==sayi4)
{
fonk(&sayi2,&sayi4);
}
else
{
printf("hatali deger girisi");
}
}
else if(degis1==sayi3)
{
if(degis2==sayi1)
{
fonk(&sayi3,&sayi1);
}
else if(degis2==sayi2)
{
fonk(&sayi3,&sayi2);
}
else if(degis2==sayi4)
{
fonk(&sayi3,&sayi4);
}
else
{
printf("hatali deger girisi");
}
}
else if(degis1==sayi4)
{
if(degis2==sayi1)
{
fonk(&sayi4,&sayi1);
}
else if(degis2==sayi2)
{
fonk(&sayi4,&sayi2);
}
else if(degis2==sayi3)
{
fonk(&sayi4,&sayi3);
}
else
{
printf("hatali deger girisi");
}
}
else
{
printf("hatali deger girisi");
}
printf("Degismeden Sonra Sayilar= Sayi1=%d Sayi2=%d Sayi3=%d Sayi4=%d \n",sayi1,sayi2,sayi3,sayi4);
return 0;
}
void fonk(int *ptr1,int *ptr2)
{
int x;
x=*ptr1;
*ptr1=*ptr2;
*ptr2=x;
}
No comments:
Post a Comment