Προς το περιεχόμενο

PENNYSF

Members
  • ΜΗΝΥΜΑΤΑ FORUM

    1
  • ΜΕΛΟΣ

  • ΤΕΛ. ΕΠΙΣΚΕΨΗ

PENNYSF's Achievements

  1. PENNYSF

    Πρόβλημα C

    ΚΑΛΗΣΠΕΡΑ ΣΑΣ ,ΣΤΟΝ ΠΑΡΑΚΑΤΩ ΚΩΔΙΚΑ ΑΝΤΙΜΕΤΟΠΙΖΩ ΕΝΑ ΠΡΟΒΛΗΜΑ ΥΠΑΡΧΕΙ ΚΑΠΟΙΟΣ ΓΝΩΣΤΗΣ ΝΑ ΜΟΥ ΤΟ ΛΥΣΕΙ ; ΟΙ ΣΥΝΑΡΤΗΣΕΙΣ ΠΟΥ ΧΡΗΣΗΜΟΠΟΙΟΥΝΤΑΙ ΒΡΙΣΚΟΝΤΑΙ ΥΛΟΠΟΙΗΜΕΝΕΣ ΣΕ ΕΝΑ ΑΛΛΟ ΔΙΣΔΙΑΣΤΑΤΟ ΑΡΧΕΙΟ ΣΥΝΔΕΔΕΜΕΝΟ ΜΕ ΤΗΝ MAIN,ΤΟ ΠΡΟΒΛΗΜΑ ΕΙΝΑΙ ΠΩΣ ΕΝΩ ΤΡΕΧΕΙ ΚΑΝΟΝΙΚΑ ΣΤΑΜΑΤΑΕΙ ΑΚΡΙΒΩΣ ΣΤΟ ΣΗΜΕΙΟ ΜΕΤΑ ΤΗΝ printmenu(); ΟΠΟΥ ΖΗΤΑ ΚΑΙ ΤΗΝ ΕΠΙΛΟΓΗ ΚΑΙ ΤΕΛΟΣ ΣΕ ΒΓΑΖΕΙ ΕΚΤΟΣ ΠΡΟΓΡΑΜΜΑΤΟΣ ΚΑΙ ΠΡΕΠΕΙ ΝΑ ΤΟ ΞΑΝΑΤΡΕΞΕΙΣ ΜΕΤΑ, ΕΧΩ ΚΑΝΕΙ ΠΟΛΛΕΣ ΔΟΚΙΜΕΣ-ΑΛΛΑΓΕΣ ΤΙΠΟΤΑ ΔΕΝ ΛΕΙΤΟΥΡΓΕΙ ! ΚΑΠΟΙΑ ΠΡΟΤΑΣΗ - ΛΥΣΗ !; Ο ΚΩΔΙΚΑΣ : #include <stdio.h> #include <stdlib.h> #include <time.h> #include <string.h> #include <ctype.h> #include "students.h" int main(int argc, char *argv[]){ student s; srand(time(NULL)); printf("GIVE US YOUR FILENAME!\n"); char filen; scanf("%s",&filen); int ids,id1,id2,id3,id4,pr; char nam[25],n3[25],n[25]; list L=malloc(sizeof(struct listR)); L->head=NULL; L->tail=NULL; printMenu(); //ΦΟΡΤΩΣΗ ΤΟΥ ΑΡΧΕΙΟΥ load(filen,&L); //ΕΚΤΥΠΩΣΗ ΤΟΥ ΜΕΝΟΥ ΕΠΙΛΟΓΩΝ int choice; printf("GIVE US YOUR NUMBER-CHOICE !"); scanf("%d", &choice); if (isdigit(choice)==1){ } else{ printf("THE ENTRANCE WAS WRONG !\n"); } while(isdigit(choice)==1){ while(choice>=1 && choice<=6){ //ΕΠΙΛΟΓΗ ΠΡΟΣΘΕΣΗΣ ΝΕΟΥ ΜΑΘΗΤΗ ΣΤΗΝ ΛΙΣΤΑ if (choice==1){ printf("GIVE THE NAME OF THE STUDENT \n"); scanf("%s",n); printf("GIVE THE ID OF THE STUDENT\n"); scanf("%ld",&ids); strcpy(s.name, n); s.id = ids; if (isError(addStudent(s,L))==0){ addStudent(s,L); } else{ printf("THERE WAS AN ERROR FANCTION!\n"); break; }} //ΕΠΙΛΟΓΗ ΑΦΑΙΡΕΣΗΣ ΜΑΘΗΤΗ ΑΠΟ ΛΙΣΤΑ else if(choice==2){ printf("GIVE THE ID OF THE STUDENT YOU WANT TO DELETE!"); scanf("%ld",&id1); if (isError(deleteStudentById(id1,L))==0){ deleteStudentById(id1,L); } else{ printf("THERE WAS AN ERROR FUNCTION!\n"); break; } } //ΕΠΙΛΟΓΗ ΑΝΑΖΗΤΗΣΗΣ ΜΑΘΗΤΗ ΑΠΟ ΛΙΣΤΑ else if(choice==3){ printf("GIVE THE ID OF THE STUDENT YOU WANT TO SEARCH!"); scanf("%ld",&id2); if( isError(findStudent(id2,L,&s))==0){ findStudent(id2 ,L ,&s); } else{ printf("THERE WAS AN ERROR FUNCTION!\n"); break; } } //ΕΠΙΛΟΓΗ ΑΝΑΝΕΩΣΗΣ ΤΩΝ ΣΤΟΙΧΕΙΩΝ ΤΟΥ ΜΑΘΗΤΗ else if(choice==4){ printf("PLEASE PROVIDE US WITH THE ID OF THE STUDENT YOU WANT TO UPDATE\n"); scanf("%ld",&id3); printf("PLEASE PROVIDE US WITH THE NAME YOU WANT TO UPDATE THE STUDENT!\n"); scanf("%s",n3); s.id = id3; //updateStudent( s,L); if (isError(updateStudent(s,L))==0){ updateStudent(s,L); } else{ printf("THERE WAS AN ERROR FANCTION!\n"); break; } } //ΕΠΙΛΟΓΗ ΕΚΤΥΠΩΣΗΣ ΤΩΝ ΣΤΟΙΧΕΙΩΝ ΕΝΟΣ Η ΟΛΩΝ ΤΩΝ ΜΑΘΗΤΩΝ ΤΗΣ ΛΙΣΤΑΣ else if(choice==5){ printf("GIVE 1 IF YOU WANT TO PRINT ONE STUDENT ,OR GIVE 2 IF YOU WANT TO PRINT ALL OF THEM!\n"); scanf("%d",&pr); if (pr==1){ printf("PREASE GIVE THE NAME OF THE STUDENT !\n"); scanf("%s",&nam); printf("PLEASE GIVE TH ID OF THE STRUDENT !\n"); scanf("%ld",&id4); strcpy(s.name, nam); s.id = id4; printStudent(s); } else if (pr==2){ printStudents(L); } } //ΕΠΙΛΟΓΗ ΕΞΟΔΟΥ ΑΠΟ ΤΟ ΠΡΟΓΡΑΜΜΑ if (choice==6){ printf("YOU WANTED TO EXIT THE PROGRAM ,BYE!!!\n"); exit(1); } printMenu(); printf("GIVE US YOUR NUMBER-CHOICE !"); scanf("%d", &choice); if (isdigit(choice)==1){ } else{ printf("THE ENTRANCE WAS WRONG !\n"); } //ΑΠΟΘΗΚΕΥΣΗ ΑΡΧΕΙΟΥ save(filen,L); }}}
  • Δημιουργία νέου...