| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1796 人关注过本帖
标题:[求助]struct和数组的问题
只看楼主 加入收藏
kingyor
Rank: 1
等 级:新手上路
帖 子:66
专家分:0
注 册:2006-6-4
收藏
 问题点数:0 回复次数:8 
[求助]struct和数组的问题

#include<stdio.h>
struct user{
char name[10];//姓名
int no[10];//学号
int ce[10];//英语成绩
int cm[10];//数学成绩
int cd[10];//设计成绩
};
void main(){
struct user zg;
int i;
printf("输入10个学生姓名:\n");
for(i=0;i<10;i++)
scanf("%s",&zg.name[i]);
printf("输入10个学生的学号:\n");
for(i=0;i<10;i++)
scanf("%d",&zg.no[i]);
printf("输入10个学生的英语成绩:\n");
for(i=0;i<10;i++)
scanf("%d",&zg.ce[i]);
int zce;
for(i=0;i<11;i++){
zg.ce[i]+=zg.ce[i];
zce=zg.ce[i];
}
printf("英语总成绩是:%d",zce);

}

还没有写完;
我是想要求它能算出各科的总成绩;
而且后面还要能够输入一个学生的姓名和学号后输出他的各科成绩和总分;
但显然这里我没有办法了!
怎么办?

搜索更多相关主题的帖子: struct 
2006-06-19 13:42
se7en_enter
Rank: 1
等 级:新手上路
帖 子:38
专家分:0
注 册:2006-5-11
收藏
得分:0 
int k=0;
for(i=0;i<11;i++)
{k+=zg.ce[i];
printf("%d",zg.ce[i]);}
后面用两个printf就可了
大概是这样

年轻有年轻的冲动,成熟有成熟的魅力。莫让时间冲淡一切,要让一切充实时间
2006-06-19 16:45
kingyor
Rank: 1
等 级:新手上路
帖 子:66
专家分:0
注 册:2006-6-4
收藏
得分:0 
回复:楼上
还是不行诶!
图片附件: 游客没有浏览图片的权限,请 登录注册


宝哥啊宝哥~~命苦啊命苦啊~~~
2006-06-19 17:04
aogun
Rank: 5Rank: 5
等 级:贵宾
威 望:17
帖 子:638
专家分:0
注 册:2006-4-5
收藏
得分:0 

[CODE] for(i=0;i<10;i++){
//zg.ce[i]+=zg.ce[i];
zce += zg.ce[i];

}[/CODE]


世界上总共有 10 种人,一种懂得什么是二进制 ,一种不懂。
2006-06-19 17:11
kingyor
Rank: 1
等 级:新手上路
帖 子:66
专家分:0
注 册:2006-6-4
收藏
得分:0 
回复:楼上
可为什么结果会是"-858993460?"

宝哥啊宝哥~~命苦啊命苦啊~~~
2006-06-19 17:23
kingyor
Rank: 1
等 级:新手上路
帖 子:66
专家分:0
注 册:2006-6-4
收藏
得分:0 
#include<stdio.h>
struct user{
char name[10];
int no[10];
int ce[10];
int cm[10];
int cd[10];
};
void main(){
struct user zg;
int i,n=1,zf;
for(i=0;i<10;i++){//每次输入一个学生的姓名学号及三科成绩并计算总分
printf("输入第%d个学生的姓名学号和英语数学设计的成绩:\n",n);
scanf("%s %d %d %d %d",&zg.name[i],&zg.no[i],&zg.ce[i],&zg.cm[i],&zg.cd[i]);
zf=zg.cd[i]+zg.ce[i]+zg.cm[i];
printf("第%d个学生的总成绩是:%d\n",n,zf);
n++;
}
int zeg,zmt,zde;
for(i=0;i<10;i++){
zg.ce[i]=zg.ce[i]+zg.ce[i-1];
zeg=zg.ce[i];//英语科总成绩
zg.cm[i]=zg.cm[i]+zg.cm[i-1];
zmt=zg.cm[i];//数学科总成绩
zg.cd[i]=zg.cd[i]+zg.cd[i-1];
zde=zg.cd[i];//设计科总成绩
}
printf("english sum is:%d\n",zeg);
printf("math sum is:%d\n",zmt);
printf("design sum is:%d\n",zde);
}

我改成了这样,但结果"zeg""zmt""zde"的值为什么会不准确呢?

宝哥啊宝哥~~命苦啊命苦啊~~~
2006-06-19 17:44
kingyor
Rank: 1
等 级:新手上路
帖 子:66
专家分:0
注 册:2006-6-4
收藏
得分:0 
然后我加上了这一段,

printf("检索学生姓名学号:");
int jxh;
char jxm;
scanf("%s %d",&jxm,&jxh);
if(jxm==zg.name[i]||jxh==zg.no[i])
for(i=0;i<10;i++){
printf("%s %d %d %d %d",zg.name[i],zg.no[i],zg.ce[i],zg.cm[i],zg.cd[i]);
}
else
printf("错误");

结果还是检索不出来耶!

宝哥啊宝哥~~命苦啊命苦啊~~~
2006-06-19 19:02
song4
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:38
帖 子:1533
专家分:4
注 册:2006-3-25
收藏
得分:0 
超级大错误
#include<stdio.h>
struct user{
char name[10];
int no[10];
int ce[10];
int cm[10];
int cd[10];
};
void main(){
struct user zg;
int i,n=1,zf;
for(i=0;i<10;i++){//每次输入一个学生的姓名学号及三科成绩并计算总分
printf("输入第%d个学生的姓名学号和英语数学设计的成绩:\n",n);
scanf("%s %d %d %d %d",&zg.name[i],&zg.no[i],&zg.ce[i],&zg.cm[i],&zg.cd[i]);
zf=zg.cd[i]+zg.ce[i]+zg.cm[i];
printf("第%d个学生的总成绩是:%d\n",n,zf);
n++;
}
int zeg,zmt,zde;zeg=zmt=zde=0;
for(i=0;i<10;i++){
zeg+=zg.ce[i];
//英语科总成绩
zmt+=zg.cm[i];//数学科总成绩
zde+=zg.cd[i];//设计科总成绩//错误包括if(i=0)i-1==-1数组越界,很大的逻辑错误,zeg zmt zde没有初始化.
}
printf("english sum is:%d\n",zeg);
printf("math sum is:%d\n",zmt);
printf("design sum is:%d\n",zde);
}
LZ,去C语言版块吧

嵌入式 ARM 单片机 驱动 RT操作系统 J2ME LINUX  Symbian C C++ 数据结构 JAVA Oracle 设计模式 软件工程 JSP
2006-06-19 19:32
stylev
Rank: 1
等 级:新手上路
威 望:1
帖 子:136
专家分:0
注 册:2006-5-30
收藏
得分:0 

#include<stdio.h>

struct user
{
char name[10];//姓名
int no;//学号
int ce;//英语成绩
int cm;//数学成绩
int cd;//设计成绩
};

int main(){
struct user zg[10];
int i;
printf("输入10个学生姓名:\n");
for(i=0;i<10;i++)
scanf("%s",&zg[i].name);
printf("输入10个学生的学号:\n");
for(i=0;i<10;i++)
scanf("%d",&zg[i].no);
printf("输入10个学生的英语成绩:\n");
for(i=0;i<10;i++)
scanf("%d",&zg[i].ce);

int zce = 0;
for(i=0;i<10;i++)
{
zce+=zg[i].ce;
}
printf("英语总成绩是:%d",zce);

return 0;
}

//to main of floor


E-mail/MSN: stylev@
2006-06-19 23:45
快速回复:[求助]struct和数组的问题
数据加载中...
 
   



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

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