Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- #include <string.h>
- #define MAX_NAMELEN 20
- int counter = 1;
- typedef struct car
- {
- char name[MAX_NAMELEN];
- int year;
- double fuel;
- }car_t;
- car_t mycar; // THIS IS EQUAL TO STRUCT CAR MYCAR
- int car_insert(FILE *fp, const car_t*car)
- {
- fp = fopen( "car.txt","a+");
- printf("You create now a new car!\n");
- if(fp == NULL)
- {
- printf("Error!");
- exit(1);
- }
- printf("Name of the car: ");
- fscanf(stdin, "%s", mycar.name);
- printf("Year : ");
- fscanf(stdin, "%d", &mycar.year);
- printf("Fuel : ");
- fscanf(stdin, "%lf", &mycar.fuel);
- getchar();
- fprintf(fp,"%s %d %lf \n", mycar.name, mycar.year, mycar.fuel );
- //printf("HALLLLLOOOO\n");
- fclose(fp);
- return 0;
- }
- void car_print_all(FILE *fp)
- {
- int count =0;
- char str[60];
- fp = fopen("car.txt" , "r");
- if(fp == NULL) {
- printf("Error opening file");
- }while(fgets (str, 60 , fp) ) {
- ++count;
- printf("%i Car: %s",count,str);
- }
- fclose(fp);
- }
- int car_remove(FILE *fp, unsigned int index){
- int count = 0;
- fp = fopen( "car.txt","r+");
- char str[50];
- fseek(fp, 0, SEEK_SET);
- fprintf(fp, "-");
- while(fgets(str, 50, fp))
- {
- ++count;
- if(count == index){
- //printf("%d\n",index);
- fseek(fp, 0, SEEK_SET);
- fprintf(fp, "-");
- break;
- }
- //printf("STR: %d\n", str[8]-48 );
- //printf("INdex%d\n", index);
- }
- return 0;
- }
- int main()
- {
- char deletecreate;
- unsigned int index;
- FILE *car;
- car = fopen("car.txt", "a+");
- if (car == NULL){
- printf("Error! opening file\n");
- exit(1);
- }
- car_print_all(car);
- do{
- printf("<D>elete or <C>reate?\n");
- scanf("%c", &deletecreate);
- if(deletecreate == 'd' || deletecreate == 'D')
- {
- printf("Which one do you want to delete?\n");
- scanf("%d", &index);
- fclose(car);
- car_remove(car, index);
- getchar();
- }if( deletecreate == 'c' || deletecreate == 'C'){
- car_insert(car, &mycar);
- }
- }while(deletecreate == 'd' || deletecreate == 'D' || deletecreate == 'c' || deletecreate == 'C');
- fclose(car);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement