| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 542 人关注过本帖
标题:为什么两个文件一起调用出现这么多个错误呢
只看楼主 加入收藏
we6540
Rank: 2
等 级:论坛游民
帖 子:37
专家分:11
注 册:2011-4-18
结帖率:60%
收藏
 问题点数:0 回复次数:6 
为什么两个文件一起调用出现这么多个错误呢
为什么两个文件一起调用出现这么多个错误呢
高手帮我
主函数3.c文件内容是
程序代码:
#include<stdio.h>
#include<string.h>
#include<malloc.h>
int h,c;
struct add *wwe();
struct add
{
int xuehao;

 char xingmin[10];
  int a[3];
   int b;
    struct add *jiedian;};
main()
{
struct add *p1;
p1=wwe();
do
{
printf("学号%d  姓名%s",p1->xuehao,p1->xingmin);
for(h=0;h<3;h++)
{
switch(h)
{
case 0:printf("输出语文成绩\n");break;
case 1:printf("输出数学成绩\n");break;
case 2:printf("输出英语成绩\n");break;
}
printf("%d",p1->a[h]);
}
printf("  个人平均成绩%d",p1->b);
p1=p1->jiedian;

}while(p1);
printf(" 总平均成绩%d",c);
}
4.c文件内容是
程序代码:
struct add *wwe()
      {
     struct add *p1,*p2,*p3;
    int a;
   p1=(struct add *)malloc(sizeof(struct add));
  p2=p1;

 scanf("%d",&p2->xuehao);
scanf("%s",p2->xingmin);

 for(h=0;h<2;h++)

 {
  printf("成绩%d\n",h+1);
   scanf("%d",&p2->a[h]);
     p2->b+=p2->a[h];}
    p2->b=p2->b/h;
   for(a=0;a<5-1;a++)
  {

 p3=(struct add *)malloc(sizeof(struct add));
printf("输入学号 ");
scanf("%d",&p3->xuehao);
printf("输入姓名 ");
scanf("%s",p3->xingmin);
printf("输入学生成绩 ");
for(h=0;h<3;h++)
{
    switch(h)
{
case 0:printf("输入语文成绩  ");break;
case 1:printf("输入数学成绩  ");break;
case 2:printf("输入英语成绩  ");break;
}
scanf("%d",&p3->a[h]);
p3->b+=p3->a[h];
}
p3->b=p3->b/h;
printf("\n");
p2->jiedian=p3;
p2=p3;
}
p3->jiedian=NULL;
return p1;
}
搜索更多相关主题的帖子: wwe 
2011-10-18 21:35
laznrbfe
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
帖 子:482
专家分:1599
注 册:2011-5-22
收藏
得分:0 
程序代码:
#include<stdio.h>
#include<string.h>
#include<malloc.h>
int h,c;
struct add *wwe();
struct add
{
    int xuehao;
    char xingmin[10];
    int a[3];
    int b;
    struct add *jiedian;
};
int    main()
{
    struct add *p1;
    p1=wwe();
    do
    {
        p1->b=0;
        printf("学号%d  姓名%s",p1->xuehao,p1->xingmin);
        for(h=0;h<3;h++)
        {
            switch(h)
            {
            case 0:printf("输出语文成绩:");break;
            case 1:printf("输出数学成绩:");break;
            case 2:printf("输出英语成绩:");break;
            }
            printf("%d\n",p1->a[h]);
            p1->b+=p1->a[h];//////////
        }
        p1->b=p1->b/h;
        printf("\n个人平均成绩%d\n",p1->b);/////////////
        c+=p1->b;
        p1=p1->jiedian;
       
    }while(p1);
    printf("总平均成绩%d\n",c/5);
    return 0;
}

struct add *wwe()
{
    struct add *p1,*p2,*p3;
    int a;
    p1=(struct add *)malloc(sizeof(struct add));
    p2=p1;
    printf("输入学号 ");////
    scanf("%d",&p2->xuehao);
    printf("输入姓名 ");////
    scanf("%s",p2->xingmin);
    for(h=0;h<3;h++)
    {
        switch(h)
        {
        case 0:printf("输入语文成绩  ");break;
        case 1:printf("输入数学成绩  ");break;
        case 2:printf("输入英语成绩  ");break;
        }
        scanf("%d",&p2->a[h]);
//        p2->b+=p2->a[h];
    }
//    p2->b=p2->b/h;
    for(a=0;a<5-1;a++)
    {
        p3=(struct add *)malloc(sizeof(struct add));
        printf("输入学号 ");
        scanf("%d",&p3->xuehao);
        printf("输入姓名 ");
        scanf("%s",p3->xingmin);
//        printf("输入学生成绩 \n");
        for(h=0;h<3;h++)
        {
            switch(h)
            {
            case 0:printf("输入语文成绩  ");break;
            case 1:printf("输入数学成绩  ");break;
            case 2:printf("输入英语成绩  ");break;
            }
            scanf("%d",&p3->a[h]);
            p3->b+=p3->a[h];
        }
        p3->b=p3->b/h;
        printf("\n");
        p2->jiedian=p3;
        p2=p3;
    }
    p3->jiedian=NULL;
    return p1;
}
2011-10-18 23:05
we6540
Rank: 2
等 级:论坛游民
帖 子:37
专家分:11
注 册:2011-4-18
收藏
得分:0 
我想分开两个文件来写的的,但是不知道为什么会出这么多错误

[ 本帖最后由 we6540 于 2011-10-18 23:53 编辑 ]
2011-10-18 23:49
hczsea
Rank: 2
等 级:论坛游民
帖 子:129
专家分:68
注 册:2007-10-23
收藏
得分:0 
新建 tt.h 内容:
struct add
{
int xuehao;
char xingmin[10];
  int a[3];
   int b;
    struct add *jiedian;};

新建 tt.c 内容:
#include<stdio.h>
#include<string.h>
#include<malloc.h>
#include "tt.h"
#include "tt2.c"
int h,c;
extern struct add *wwe();

main()
{
struct add *p1;
p1=wwe();
do
{
printf("学号%d  姓名%s",p1->xuehao,p1->xingmin);
for(h=0;h<3;h++)
{
switch(h)
{
case 0:printf("输出语文成绩\n");break;
case 1:printf("输出数学成绩\n");break;
case 2:printf("输出英语成绩\n");break;
}
printf("%d",p1->a[h]);
}
printf("  个人平均成绩%d",p1->b);
p1=p1->jiedian;

}while(p1);
printf(" 总平均成绩%d",c);
}


新建 tt2.c 内容:
#include<stdio.h>
#include<string.h>
#include<malloc.h>

extern int h;

struct add *wwe()
      {
     struct add *p1,*p2,*p3;
    int a;
   p1=(struct add *)malloc(sizeof(struct add));
  p2=p1;
scanf("%d",&p2->xuehao);
scanf("%s",p2->xingmin);
for(h=0;h<2;h++)
{
  printf("成绩%d\n",h+1);
   scanf("%d",&p2->a[h]);
     p2->b+=p2->a[h];}
    p2->b=p2->b/h;
   for(a=0;a<5-1;a++)
  {
p3=(struct add *)malloc(sizeof(struct add));
printf("输入学号 ");
scanf("%d",&p3->xuehao);
printf("输入姓名 ");
scanf("%s",p3->xingmin);
printf("输入学生成绩 ");
for(h=0;h<3;h++)
{
    switch(h)
{
case 0:printf("输入语文成绩  ");break;
case 1:printf("输入数学成绩  ");break;
case 2:printf("输入英语成绩  ");break;
}
scanf("%d",&p3->a[h]);
p3->b+=p3->a[h];
}
p3->b=p3->b/h;
printf("\n");
p2->jiedian=p3;
p2=p3;
}
p3->jiedian=NULL;
return p1;
}

编译试一下。

2011-10-19 21:13
laznrbfe
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
帖 子:482
专家分:1599
注 册:2011-5-22
收藏
得分:0 
回复 3楼 we6540
创建一个头文件(例如:link.h)保存结构体和除main()以外的函数定义。在主程序(例如:Mymain.c)加#include "link.h"
我觉得你写的代码原本就有问题。。。
2011-10-19 21:45
laznrbfe
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
帖 子:482
专家分:1599
注 册:2011-5-22
收藏
得分:0 
YOURS.rar (173.72 KB)
2011-10-19 22:01
we6540
Rank: 2
等 级:论坛游民
帖 子:37
专家分:11
注 册:2011-4-18
收藏
得分:0 
谢谢!大家终于搞掂了
2011-10-20 12:34
快速回复:为什么两个文件一起调用出现这么多个错误呢
数据加载中...
 
   



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

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