| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 844 人关注过本帖
标题:求救!不知道哪儿错了.
只看楼主 加入收藏
无心
Rank: 1
等 级:新手上路
帖 子:63
专家分:0
注 册:2005-3-15
收藏
 问题点数:0 回复次数:13 
求救!不知道哪儿错了.
#include "stdio.h"
#define N 8
void input()
{
 struct student
        {
         int num;
         char name[18];
         struct date
                {
                 int year;
                 int month;
                 int day;
                }brithday;
         char address[50];
         float score[4];
         float ave;
        }stu[N];
 int i=0,j;
 char flag;
 printf("\nDo you want input student's information(y or n):");
 scanf("%c",&flag);
 while(i<N&&flag=='y')
      {
       stu[i].num=i+1;
       printf("\nPlease input NO.%d student's information:",stu[i].num);
       printf("\nAame:");
       scanf("%s",stu[i].name);
       printf("\nBrithday:");
       scanf("%d%d%d",&stu[i].brithday.year,&stu[i].brithday.month,&stu[i].brithday.day);
       printf("\nAddress:");
       scanf("%s",stu[i].address);
       printf("\nScore:");
       for(j=0;j<4;j++)
          {
           scanf("%f",&stu[i].score[j]);
           stu[i].ave+=stu[i].score[j];
          }
       stu[i].ave=stu[i].ave/4;
       printf("Do you want continue? y or n.");
       scanf("%c",&flag);
       getch();
       i++;
      }
}

运行上面的程序,在输入地址之后程序就不再向下运行了,我找了半天不知道哪儿错了,请哪位高手帮忙找找并解释下,谢谢!
搜索更多相关主题的帖子: name address include 
2005-06-08 16:37
seeker
Rank: 1
等 级:新手上路
帖 子:172
专家分:0
注 册:2005-6-5
收藏
得分:0 

你的程序能编译???我晕!连mian函数也没有。 帮你改好了,其它功能自己看着办,主要问题是scanf()函数在作怪。 #include <stdio.h> #include<conio.h> #include<process.h> #define N 8 struct student { int num; char name[18]; struct date { int year; int month; int day; }brithday; char address[50]; float score[4]; float ave; }stu[N]; void input() { int i=0,j; char flag; printf("\nDo you want input student's information(y or n):"); scanf("%c",&flag); if(flag=='y') while(1) { stu[i].num=i+1; printf("\nPlease input NO.%d student's information:",stu[i].num); printf("\nAame:"); scanf("%s",stu[i].name); printf("\nBrithday:"); scanf("%d%d%d",&stu[i].brithday.year,&stu[i].brithday.month,&stu[i].brithday.day); printf("\nAddress:"); scanf("%s",stu[i].address); printf("\nScore:"); for(j=0;j<4;j++) { scanf("%f",&stu[i].score[j]); stu[i].ave+=stu[i].score[j]; } stu[i].ave=(float)stu[i].ave/4; printf("The %d ave is: %f\n",i+1,stu[i].ave); printf("Do you want continue? y or n."); flag=getch();/*不能用scanf*/ if(flag=='n') exit(1);/*退出*/ i++; if(i==N-1)break;/*退出循环*/ } else exit(1);/*退出*/

} void main() { input(); }


我相信总有一片天空属于我!http://myseeker. E-Mail:lwqcny@
2005-06-08 22:10
想你的天空
Rank: 2
等 级:新手上路
威 望:5
帖 子:610
专家分:0
注 册:2004-12-30
收藏
得分:0 
楼上的,错误只在没有main。  并不是scanf作怪

2005-06-09 15:07
softwarelan
Rank: 1
等 级:新手上路
帖 子:209
专家分:0
注 册:2005-6-1
收藏
得分:0 
主函数呢?

Not a hero until you reach The Greatwall!
2005-06-09 15:25
无心
Rank: 1
等 级:新手上路
帖 子:63
专家分:0
注 册:2005-3-15
收藏
得分:0 
编的时候当然有主函数
这儿只不过是没贴出来

2楼的,你的程序我运行了一下,还是不行,还是输入地址后程序就不再向下运行了

因为把心给了你,所以我无心.
2005-06-09 21:02
想你的天空
Rank: 2
等 级:新手上路
威 望:5
帖 子:610
专家分:0
注 册:2004-12-30
收藏
得分:0 
我调试了楼上的, 没问题呀, 加个MAIN就完了

2005-06-09 21:29
seeker
Rank: 1
等 级:新手上路
帖 子:172
专家分:0
注 册:2005-6-5
收藏
得分:0 
我的程序没问题啊,用VC6.0 编译的,你用TC吗?有错的我贴出来干嘛?

我相信总有一片天空属于我!http://myseeker. E-Mail:lwqcny@
2005-06-09 21:46
xinyuan
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2005-6-9
收藏
得分:0 
你好,你有QQ吗!
2005-06-09 21:59
softwarelan
Rank: 1
等 级:新手上路
帖 子:209
专家分:0
注 册:2005-6-1
收藏
得分:0 
277839125

Not a hero until you reach The Greatwall!
2005-06-10 09:59
无心
Rank: 1
等 级:新手上路
帖 子:63
专家分:0
注 册:2005-3-15
收藏
得分:0 
晕~~~~
我用TC和WIN-TC都试过了啊,可都一样的问题啊
WIN-TC下我可是把2楼的直接COPY上去运行的啊
不会是我机子的问题吧???

因为把心给了你,所以我无心.
2005-06-10 12:35
快速回复:求救!不知道哪儿错了.
数据加载中...
 
   



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

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