8 Aralık 2014 Pazartesi

C Konsol Malloc Kullanarak Hafızada Veri Saklama ve Dizi ile BubbleSort Algoritması Kullanımı

KONU : C Konsol Uygulamalar - Bubble sort algoritması kullanarak konsol ekranından girilen sayıları sıralama. Konsoldan girilen sayıları int tipinde bir diziye atama. Hafızada int tipinde girilen sayıları tutmak için yer ayırma ve bu adresi pointer ile kullanma. Pointer parametre alan fonksiyon tanımlama ve kullanma


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

void bubbleSort(int [],int);
void swap(int *,int *);
int main(void) {
 int *Arr;
 int i=0,n;
 while(1)
 {
  printf("Eleman sayisini girin: ");
  scanf("%d",&n);
  if(n<0)
  break;
  
  Arr=(int *)malloc(sizeof(int)*n);
  if(Arr==NULL)
  {
   printf("Basarisiz.");
   exit(1);
  }
  
  for(i=0;i < n;i++)
  {
   printf("%d.Eleman: ",i+1);
   scanf("%d",&Arr[i]); 
  }
  
  bubbleSort(Arr,n);


  printf("\n\nSonuc :\n\n");
  for(i=0;i < n;i++)
  {
   printf("%d.Eleman: %d \n",i+1,Arr[i]);
  
  }
  
  free(Arr);
 }
 
 return 0;
}

void bubbleSort(int Array[],int n)
{
 int i,j;
 for(i=0;i < n;i++)
 {
  for(j=0;j < n-1;j++)
  {
   if(Array[j] > Array[j+1])
   swap(&Array[j],&Array[j+1]);
  }
 }
}

void swap(int *ptr1, int*ptr2)
{
 int temp;
 temp=*ptr1;
 *ptr1=*ptr2;
 *ptr2=temp;
}
   

7 Aralık 2014 Pazar

C Konsol İki Boyutlu Diziler Kullanarak Konsoldan Data Alma ve Matriks Şeklinde Konsola Yazdırma

KONU : C Konsol Uygulamalar - iki boyutlu dizilerin kullanımı ve tanımlanması. Bir fonksiyona parametre olarak iki boyutlu bir dizi verme. İki boyutlu diziyi konsoldan girilen sayılar ile doldurma. İki boyutlu bir diziyi pointer olarak gösterip konsol ekranına dizi içeriğini makriks şeklinde yazdırma.
ETİKETLER: c matrix - c matriks- c diziler - c array - c iki boyutlu dizi - c pointer


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

int Matrix1[2][2]={0}; 
int Matrix2[2][2]={0}; 
 

void ShowMatrix(int *); 
void GetMatrixElement(int Matrix[][2],int no) ;

int main(void)
{ 


 //int i,j; 
 //printf("1.Matris:\n\n"); 
 //for(i=0;i<2;i++) 
 //{ 
 // for(j=0;j<2;j++) 
 // { 
 //  printf("%d satir %d sutun=",i+1,j+1); 
 //  scanf("%d",&Matrix1[i][j]); 
 // } 
 //} 


 GetMatrixElement(Matrix1,1);

 ShowMatrix((int *)Matrix1); 

    GetMatrixElement(Matrix2,2);

 ShowMatrix((int *)Matrix2); 

 getch();
 return 0; 
} 


void ShowMatrix(int *ptrMatrix ) 
{ 
 int i,j; 
 for(i=0;i < 2;i++) 
 { 
  for(j=0;j < 2;j++) 
  { 
   printf("%5d",*ptrMatrix); 
   ptrMatrix++; 
  } 
  printf("\n"); 
 } 
} 


void GetMatrixElement(int Matriks[][2], int no) 
{ 
 //Bu alanda 2ye2lik 2 matrisin satir ve sutun sayılarını isteyecek. 
 //Daha sonra ShowMatrix fonksiyonu kullanılarak ekrna gösterilecek. 
 //Nasıl yapabilirim? 

 int i,j; 

 printf("%d. Matriks:\n\n",no); 

 { 
  for(i=0;i < 2;i++) 
  { 
   for(j=0;j < 2;j++) 
   { 
    printf("%d satir %d sutun=",i+1,j+1); 
    scanf("%d", &Matriks[i][j]); 
   } 
  } 

 } 
}
 

Etiketler

Array (9) bool (3) break (1) BubbleSort (1) C (23) char (4) Char Sınıfı (1) conio.h (5) Console (4) Dizi (1) Diziler (11) Döngüler (24) File Sınıfı (1) Fonksiyon (3) For (12) Function (2) Game (1) Getch (1) gets (1) if-else (6) if-else örnekleri (15) int (8) Konsol (16) Konsol Okuma (16) Konsol Yazdırma (17) Matematik (14) Oyun (1) Pointer (2) printf (9) scanf (8) Sort (1) stdio.h (10) stdlib.h (8) strcpy (1) String (1) string.h (2) Swap (1) Switch Case (3) time.h (1) while (5)