c_cpp 实验室405 2016年7月15日
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c_cpp 实验室405 2016年7月15日相关的知识,希望对你有一定的参考价值。
#include <stdio.h>
#include <conio.h>
#include <string.h>
struct
{
char name[20],sex[20];
char age[20];
}p;
char person[3][3][20]={{"Nara","male","20"},{"Bora","female","19"},{"Sokha","male","21"}};
int ch,ch1,n;
char nam[20];
FILE *fp,*tmp;
void main()
{
ch=80;
do{
clrscr();
puts("1-Generate into file");
puts("2-Show file");
puts("3-Delete info by name");
ch1 = getch();
switch(ch1)
{
case '1' :
fp = fopen("Person.txt","wb");
fwrite(&person,sizeof(person),1,fp);
fclose(fp);
printf("%s\n", "Success!");getch();
break;
case '2' :
fp = fopen("Person.txt","rb");
do{
clrscr();
if(ch==80)fread(&p,sizeof(person)/3,1,fp);
if(ch==72)
{
fseek(fp,-2*(sizeof(person)/3),SEEK_CUR);
fread(&p,sizeof(person)/3,1,fp);
}
printf("%s%s\n", "Name: ",p.name);
printf("%s%s\n", "Sex: ", p.sex);
printf("%s%s\n", "Age: ",p.age);
ch=getch();
}while(ch!=27);
fclose(fp);
break;
case '3' :
printf("Enter Name: ");
scanf("%s",nam);
fp = fopen("Person.txt","rb+");
rewind(fp);
tmp = fopen("tmp.txt","wb+");
while(fread(&p,sizeof(person)/3,1,fp)==1){
if(strcmp(p.name,nam)!=0)
{
fseek(tmp,0,1);
fwrite(&p,sizeof(p),1,tmp);
}
}
fclose(fp);
fclose(tmp);
remove("Person.txt");
rename("tmp.txt","Person.txt");
getch();
break; }
}while(ch1!=27);
}
以上是关于c_cpp 实验室405 2016年7月15日的主要内容,如果未能解决你的问题,请参考以下文章
实验二
实验报告四
实验报告 三
实验报告 四
实验报告二
实验报告 二