📄 exp10_02.c
字号:
#include <stdio.h>
#include <alloc.h>
#include <string.h>
struct user_info
{
char name[20];
int age;
char phone[20];
char address[80];
};
typedef struct user_info USERINFO;
void getfilepathname(char *path,char *filetile)
{
int i;
int len;
len=strlen(path);
for(i=len-1;i>=0;i--)
if(path[i]=='\\')
break;
strcpy(path+i+1,filetile);
}
void main(int argc,char *argv[])
{
int i,num;
USERINFO *puser;
char filename[80];
FILE *fp;
strcpy(filename,argv[0]);
getfilepathname(filename,"user.dat");
fp=fopen(filename,"rb");
if(fp==NULL)
{
printf("can't find the user.dat\n");
return;
}
fscanf(fp,"%d",&num);
puser=(USERINFO *)malloc(num*sizeof(USERINFO));
if(puser==NULL)
{
printf("no enough memory\n");
fclose(fp);
return;
}
fread(puser,sizeof(USERINFO),num,fp);
fclose(fp);
printf("%20s%5s%15s%20s\n","name","age","phone","address");
for(i=0;i<num;i++)
printf("%20s%5d%15s%20s\n",puser[i].name,
puser[i].age,puser[i].phone,puser[i].address);
free(puser);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -