c语言为什么数据写不进文件,求大神看看为什么不能将数据写入文件
該樓層疑似違規已被系統折疊?隱藏此樓查看此樓
#include
#include
#include
void baocunXS(struct stu *head);
struct stu *creat();
struct stu
{
int chengji;
int xuhao;
struct stu *next;//結構體指針自引用
};
void ps(struct stu *head)
{
struct stu *p;
p=head;
if(p!=NULL)
{
do
{
printf("學號=%d 成績=%d\n",p->xuhao,p->chengji);
p=p->next;
}while(p!=NULL);
}
}
void baocunXS(struct stu *head)
{
FILE *bcxs;
struct stu *p;
char x[30]={0};
char y[30]={0};
char z[30]={0};
p = head;
if ((bcxs = fopen("bcxs.txt", "a+")) = NULL)
{
printf("文件打開或創建失敗!");
}
else
{
if (p != NULL)
{
do
{
fwrite(bcxs,sizeof(struct stu),1,bcxs);
p = p->next;
} while (p != NULL);
}
}
fclose(bcxs);
}
struct stu *creat()
{
struct stu *head,*p1,*p2;
p2=p1=(struct stu *)malloc(sizeof(struct stu));
printf("請輸入學生信息\n");
printf("請輸入學號\n");
scanf("%d",&p1->xuhao);
printf("請輸入成績\n");
scanf("%d",&p1->chengji);
head=NULL;
int n=0;
while(0!=p1->xuhao)
{
n++;
if(n==1)
{
head=p1;
}
else
{
p2->next=p1;
}
p2=p1;
p1=(struct stu *)malloc(sizeof(struct stu));
printf("請輸入學生信息\n");
printf("請輸入學號\n");
scanf("%d",&p1->xuhao);
printf("請輸入成績");
scanf("%d",&p1->chengji);
}
p2->next=NULL;
return head;
}
main()
{
struct stu *s;
s=creat();
ps(s);
baocunXS(s);
getch();
}
總結
以上是生活随笔為你收集整理的c语言为什么数据写不进文件,求大神看看为什么不能将数据写入文件的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: vue图片点击超链接_10秒钟,告别pp
- 下一篇: Linux编译soci库,Soci库li