Commit 2654a993 authored by Yusuf ALTUNTAŞ's avatar Yusuf ALTUNTAŞ
Browse files

Upload New File

parent 615716e3
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define MAX_NAME 50
#define MAX_NUM 50
typedef struct
{
char name[MAX_NAME];
char surname[MAX_NAME];
char number[MAX_NUM];
} Student;
void insertStudent(Student *student)
{
char number[MAX_NUM];
int flag = 0;
printf("Enter name: ");
scanf("%s", student->name);
printf("Enter surname: ");
scanf("%s", student->surname);
do {
printf("Enter number: ");
scanf("%s", student->number);
flag = 0;
FILE *fp = fopen("ogrenci.txt", "r");
char name[MAX_NAME], surname[MAX_NAME], num[MAX_NUM];
while (fscanf(fp, "%s %s %s", name, surname, num) != EOF)
{
if (strcmp(student->number, num) == 0)
{
printf("Farkli id Giriniz..\n");
flag = 1;
break;
}
}
fclose(fp);
} while (flag);
FILE *fp = fopen("ogrenci.txt", "a");
fprintf(fp, "%s %s %s ", student->name, student->surname, student->number);
fclose(fp);
}
void updateStudent(char *number, Student *student) //dosyadaki veriyi gncelleme
{
FILE *fp = fopen("ogrenci.txt", "r");
FILE *fp2 = fopen("ogrenci2.txt", "w");
char name[MAX_NAME];
char surname[MAX_NAME];
char num[MAX_NUM];
int flag = 0;
while (fscanf(fp, "%s %s %s", name, surname, num) != EOF)
{
if (strcmp(num, number) == 0)
{
printf("Enter name: ");
scanf("%s", student->name);
printf("Enter surname: ");
scanf("%s", student->surname);
fprintf(fp2, "%s %s %s ", student->name, student->surname, num);
flag = 1;
}
else
{
fprintf(fp2, "%s %s %s ", name, surname, num);
}
}
fclose(fp);
fclose(fp2);
remove("ogrenci.txt");
rename("ogrenci2.txt", "ogrenci.txt");
if (flag == 0)
{
printf("No student");
}
}
void deleteStudent(char *number) //dosyadaki veriyi silme
{
FILE *fp = fopen("ogrenci.txt", "r");
FILE *fp2 = fopen("ogrenci2.txt", "w");
char name[MAX_NAME];
char surname[MAX_NAME];
char num[MAX_NUM];
while (fscanf(fp, "%s %s %s", name, surname, num) != EOF)
{
if (strcmp(num, number) != 0)
{
fprintf(fp2, "%s %s %s ", name, surname, num);
}
}
fclose(fp);
fclose(fp2);
remove("ogrenci.txt");
rename("ogrenci2.txt", "ogrenci.txt");
}
void listStudents() //dosyadaki verileri listeleme
{
FILE *fp = fopen("ogrenci.txt", "r");
char name[MAX_NAME];
char surname[MAX_NAME];
char number[MAX_NUM];
while (fscanf(fp, "%s %s %s", name, surname, number) != EOF)
{
printf("%s %s %s \n", name, surname, number);
}
fclose(fp);
}
int main()
{
Student * student; // bir struct oluturuluyor.
student = (Student *)malloc(sizeof(Student)); //Struct iin sistemden bellek alnyor
if(!student){
printf("bellek hatas");
return 1;
}
char number[MAX_NUM];
int sec;
while (1)
{
printf("\n1-Insert Student 2-Update Student 3-Delete Student 4-List Students 5-Exit\n");
scanf("%d", &sec);
switch (sec)
{
case 1:
insertStudent(&student);
break;
case 2:
printf("Enter number: ");
scanf("%s", number);
updateStudent(number, &student);
break;
case 3:
printf("Enter number: ");
scanf("%s", number);
deleteStudent(number);
break;
case 4:
listStudents();
break;
case 5:
exit(0);
break;
default:
printf("Wrong choice");
}
}
return 0;
}
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment