All pastes #768975 Raw Edit

Untitled

public text v1 · immutable
·published 2007-11-11 00:50 UTC
rendered paste body
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <conio.h>
#include <time.h>
#include <malloc.h>

#define filename "pinakas.txt"

 int menu(void);
 int DimiourgiaPinaka (int *pinakas);
 void EmfanisiPinaka(int *pinakas, int length);
 void saveData(int *pinakas, int length);
 void loadData();

int main(void)
{
    int choice,*pinakas,megethos;
    pinakas=(int *)malloc(sizeof(int));
     do{
    choice=menu();
		switch(choice){
	   case 1:megethos=DimiourgiaPinaka(pinakas); break;
	   case 2:saveData(pinakas,megethos);getch(); break;
	   case 3:loadData(); break;
	   case 4:EmfanisiPinaka(pinakas,megethos); break;
	   case 5:break;
	   case 6:break;
	   case 7:break;
	   case 8:break;
	   case 9:break;
	   case 0:exit(0);
	   }
	 }while(1);
         
    
    free(pinakas);
    
    } 
      
    
    
    int menu(void){
  int choice;
  do{
	printf("1.Dimiourgia pinaka \n");
	printf("2.Apothikeusi pinaka se arxeio \n");
	printf("3.Anaktisi pinaka apo arxeio \n");
	printf("4.Emfanisi pinaka \n");
	printf("5.Bubblesort \n");
	printf("6.Insertion Sort \n");
	printf("7.Quick Sort 1 \n");
	printf("8.Quick Sort 2 \n");
	printf("9.Quick Sort 3 \n");
    printf("0.Eksodos apo tin efarmogi \n");
	printf("choice: ");
	scanf("%d",&choice);         
	}while (choice!=0&&choice!=1 && choice!=2 && choice!=3 && choice!=4 && choice!=5
			   &&choice!=6 && choice!=7 && choice!=8 && choice!=9);
	return choice;
}
     
     
     
     int DimiourgiaPinaka (int *pinakas)
     {
         int megethos,epilogi,key=0,i;
         
     printf("Dwste to epithymito megethos tou pinaka :\n");
     scanf("%d" , &megethos);
   
     
     realloc(pinakas,megethos * sizeof(int));
     if(pinakas==NULL) printf("Den yparxei arketi mnini gia dimiourgia enos pinaka \n");
     
     
     
     while(key==0) 
     {
        printf("Patiste 1 gia Ataksinomito pinaka h 2 gia Sxedon Taksinomimeno pinaka : \n");
        scanf("%d",&epilogi);
     
     if(epilogi==1) 
           {
              printf("EPILOGH 1:Ataksinomitos pinakas --> to aitima sas einai se ekseliksi...\n");
                      srand(time(NULL));
           for (i=0; i<megethos; i++)
              {                  
                  pinakas[i]=rand()%10;
                  printf("%d\n",pinakas[i]);
              }            
              printf("megethos:%d\n",megethos);     
              key=1;
                                             
           }
     
     else if (epilogi==2)
          {    
               key=1;
          }
      
     else 
          {
           printf("--------------------Dwsate lathos epilogi--------------------\n"); 
           key=0;
     
          }
     
    
    }
     return megethos;
     }
     
     
     void EmfanisiPinaka(int *pinakas, int length)
      {
           int i;
           printf("TEST");
           for( i=0; i<length; i++) 
           {
           printf(" To stoixeio %d tou pinaka einai : %d\n ",i+1,pinakas[i]);
           }
           printf("TEST2");
      }   
     
     
     void saveData(int *pinakas, int length){

FILE *fp;
int i;
fp=fopen(filename,"w");
if (fp == NULL) {
         printf("I couldn't open results.dat for writing.\n");
         exit(0);
      }
	for (i=0; i<=length-1; ++i) fprintf(fp, "%d \n", pinakas[i]);
         
		
fclose(fp);
}


void loadData()
{
     FILE *fp;
     int i;
     fp=fopen(filename,"r");
     if(!feof(fp))	fscanf(fp,"%d",&pinakas);
     fclose(fp);
     }