qq_33447655 2016-01-21 14:30 采纳率: 50%
浏览 3731

C语言程序,编译没错,但执行完之后就提示错误。

#include
#include
#include
struct st
{
char name[50];
int age;
}info;
void main(void)
{
struct st s[20];
char FileA[50];
FILE*fp;
if((fp=fopen("e:\students.txt","wt"))=NULL)
{
printf("打开过程中有错,请检查\n");
exit(1);
}
for(int i=0;i<3;i++)
{
scanf("%s%d",info.name,&info.age);
}

for(i=0;i<3;i++)
    if (fwrite(&s[i],sizeof(struct st),1,fp)==0)
    {
        printf("块写入成功");
        exit(0);
    }
    getch();

}

图片我上传不了,它提示的是1.exe已停止工作。然后e盘下有students这个文件。但是里面没有内容。

展开全部

  • 写回答

6条回答 默认 最新

  • 91program 博客专家认证 2016-01-21 16:34
    关注

    s 定义了,没有初始化。它里面的内容是随机的,你对它按字符串操作一般来说会越界。限定大小,当然也不会越界,但是谁都不知道它的内容是什么!

    评论
  • dangjun2011 2016-01-21 16:51
    关注

    你scanf输入的东西保存在info里面,而且给info赋值了三次,并没有给s数组初始化,所以你写进去的东西都是未定义的乱码,当然不成功。

    评论
  • lwluser 2016-01-21 17:09
    关注

    。。。
    if((fp=fopen("e:\students.txt","wt"))=NULL) ????你这是干嘛

    if((fp=fopen("e:\students.txt","wt"))==NULL)

    评论
  • 「已注销」 2016-01-21 18:19
    关注

    FILE*fp ; 他是不是得指向NULL
    if((fp=fopen("e:\students.txt","wt"))=NULL) 如果没有返回文件流指针, 你说这个指针会指向哪?

    评论
  • Captain_MXD 2016-01-21 19:38
    关注

    if((fp=fopen("e:\students.txt","wt"))=NULL) 双等号好不啦

    评论
  • 关注

    文件打开失败,你却误以为打开成功

    评论
编辑
预览

报告相同问题?

悬赏问题

  • ¥15 kubeasz部署遇到问题
  • ¥15 GUIDE to App Designer Migration Tool for MATLAB
  • ¥50 第三代非支配排序遗传算法(NSGA-Ⅲ)和多目标粒子群优化算法(MOPSO)的实现
  • ¥15 hbuilderx写一个这个网页🙏
  • ¥20 plant simulation与python com接口实时数据交互
  • ¥15 有关汽车的MC9S12XS128单片机实验
  • ¥15 求c语言动态链表相关课程有偿,或能将这块知识点讲明白
  • ¥15 FLKT界面刷新异常
  • ¥15 物体双站RCS和其组成阵列后的双站RCS关系验证
  • ¥50 单细胞测序拟时序分析
手机看
程序员都在用的中文IT技术交流社区

程序员都在用的中文IT技术交流社区

专业的中文 IT 技术社区,与千万技术人共成长

专业的中文 IT 技术社区,与千万技术人共成长

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

客服 返回
顶部