标题:菜b向刚刚呢个写入文件的结构体中添加了一个创建功能。。。然后就全是错误了 ...
只看楼主
saber930490
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2012-12-20
结帖率:66.67%
已结贴  问题点数:10 回复次数:6 
菜b向刚刚呢个写入文件的结构体中添加了一个创建功能。。。然后就全是错误了啊啊啊。我把我觉得错的地方标了一下
#include<stdio.h>
struct student
{
    char name[10];
    char sex;
    long int phone;
    char adress[20];
    long int QQ;
};

int main()
{FILE*fp;
    int i;
    struct student stu[20]={{"Lily",'W',111123,"apple road",56443256},
    {"Bob",'M',657894,"banaba road",554511283},
    {"Tom",'M',897523,"tower road",564432123},
    {"Kity",'W',495821,"rain road",56458369},
    {"Tony",'M',367498,"gold road",564454781},
    {"Sed",'M',232599,"air road",294658715}};

    fp=fopen("D:\\stl.txt","wb");
    for(i=0;i<6;i++)
        fprintf(fp,"%s\t %c\t %ld\t %s\t %ld",stu[i].name,stu[i].sex,stu[i].phone,stu[i].adress,stu[i].QQ);
    fclose(fp);
    [color=#FF0000]i=Creat(i);[/color]

return 0;
}

int Creat(int num)
    {
        FILE*fp
        int j=num+1;
        printf("请输入姓名(英文):");
        scanf("%s",stu[j].name);
        printf("请输入性别(m男,w女):");
        scanf("%c",stu[j].sex);
        printf("请输入电话:");
        scanf("%ld",stu[j].phone);
        printf("请输入地址(英文):");
        scanf("%s",stu[j].adress);
        printf("请输入QQ号:");
        scanf("%ld",stu[j].QQ);
        num++;
        fp=fopen("D:\\stu.txt","wb");
        fprintf(fp,"%s\t %c\t %ld\t %s\t %ld",stu[j].name,stu[j].sex,stu[j].phone,stu[j].adress,stu[j].QQ);
    fclose(fp);
    for (j=0;j<num;j++)
printf("%d\t %s\t %c\t %5d\t %s\t %5d\n",stu[i].count,stu[i].name,stu[i].sex,stu[i].phone,stu[i].adress,stu[i].QQ);
    return(num)
    }
搜索更多相关主题的帖子: long include 结构体 
2013-01-02 11:51
saber930490
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2012-12-20
得分:0 
C:\Users\Administrator\Desktop\Debug\新建文件夹 (9)\课程设计.cpp(39) : error C2065: 'Creat' : undeclared identifier
C:\Users\Administrator\Desktop\Debug\新建文件夹 (9)\课程设计.cpp(47) : error C2373: 'Creat' : redefinition; different type modifiers
C:\Users\Administrator\Desktop\Debug\新建文件夹 (9)\课程设计.cpp(47) : error C2601: 'Creat' : local function definitions are illegal
C:\Users\Administrator\Desktop\Debug\新建文件夹 (9)\课程设计.cpp(71) : fatal error C1004: unexpected end of file found

这个是错误- -
2013-01-02 11:55
wangjialong
Rank: 2
等 级:论坛游民
帖 子:77
专家分:95
注 册:2012-11-8
得分:5 
主函数 for(i=0;i<6;i++)
        fprintf(fp,"%s\t %c\t %ld\t %s\t %ld",stu[i].name,stu[i].sex,stu[i].phone,stu[i].adress,stu[i].QQ);
循环完后i为6,到下面j为7,因此stu【20】中stu【6】是空的,在下面for循环中输出时会不会产生错误??

新手发言,请多指教。
2013-01-02 12:01
wangjialong
Rank: 2
等 级:论坛游民
帖 子:77
专家分:95
注 册:2012-11-8
得分:0 
你用的是VC6++吗?
  双击错误会提醒你位置的

新手发言,请多指教。
2013-01-02 12:02
saber930490
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2012-12-20
得分:0 
回复 3楼 wangjialong
这是个失误,主要是调用函数的语句不明白怎么出错儿了?
2013-01-02 13:12
wangjialong
Rank: 2
等 级:论坛游民
帖 子:77
专家分:95
注 册:2012-11-8
得分:0 
因为你在主函数中或之前没有对creat()函数进行申明,而且你的函数是在主函数之后定义的。两种方法解决:1将creat的定义移至主函数之前
2在主函数中队creat申明

新手发言,请多指教。
2013-01-04 22:35
newshou
Rank: 2
等 级:论坛游民
帖 子:10
专家分:28
注 册:2010-12-12
得分:5 
0.在creat函数中,FILE*fp 后面没分号中间没空格。

1.在creat函数中 stu 未定义。
2............中,return(num)后面没分号。
4............中,scanf("%c",stu[j].sex);scanf("%ld",stu[j].phone);和scanf("%ld",stu[j].QQ);的stu[j].sex,stu[j].QQ等前面没取地址符:&。

暂时发现这么点错误

2013-01-05 14:36



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-394810-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 1.213748 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved