| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 428 人关注过本帖
标题:江湖救急,本人是C程新手。
只看楼主 加入收藏
tancor
Rank: 1
等 级:新手上路
帖 子:3
专家分:1
注 册:2009-10-22
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:3 
江湖救急,本人是C程新手。
问题描述:
有N个学生,每个学生的信息包括学号、性别、姓名、4门课的成绩和平均分,从键盘上输入学生的信息,要求用3个函数来分别完成数据输入、统计每位学生的平均成绩和输出功能。上机运行程序并验证运行结果。

注:用结构体指针(链表)存储学生信息。
哪位大大能帮我看看错了多少啊~~~感激不尽。
#include "stdio.h"
#define N 999
int i,j,k,a;
float sum;
struct student
{int num;
 char sex;
 char name[20];
 float score[4];
 float ave;
}stu[N];
void main()
   {void input(struct student stu[]);
    void print(struct student stu[]);
    input(stu);
   
   sum=0;
for(i=0;i<k;i++)
    {for(j=0;j<4;j++)
    sum+=stu[i].score[j];
stu[i].ave=sum/4;}
   print(stu);

   
     
       }


void input(struct student stu[])
{    printf("How many student?\n");
   scanf("%d",&k);
    for(i=0;i<k;i++)
   {
       printf("Input scores of student %d:\n",i+1);
   printf("NO.:");
   scanf("%d",stu[i].num);
   printf("name:");
   scanf("%s",stu[i].name);
   printf("sex:");
   scanf("%c",stu[i].sex);
   for(a=0;a<4;a++)
   {printf("score %d:",a+1);
   scanf("%f",stu[i].score[a]);
   }
   }
    }
void print(struct student stu[])
{
    printf("\n   NO.   name     sex    score1    score2    score3    score4     average\n");
     for(i=0;i<k;i++)
       {printf("%5s%10s%5s",stu[i].num,stu[i].name,stu[i].sex);
    for(j=0;j<4;j++)
    printf("%9.2f",stu[i].score[j]);
    printf("%8.2f\n",stu[i].ave);
   
      
    }

  }
搜索更多相关主题的帖子: 江湖 
2009-10-22 14:44
pgy
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:C
等 级:小飞侠
威 望:8
帖 子:1248
专家分:2329
注 册:2009-9-23
收藏
得分:0 
错了一斤少二两

我可好玩啦...不信你玩玩^_^
2009-10-22 15:10
UserYuH
Rank: 12Rank: 12Rank: 12
来 自:毅华
等 级:火箭侠
威 望:8
帖 子:720
专家分:3300
注 册:2009-8-10
收藏
得分:20 
输入时没用取地址符,输出格式不对应,变量不用都定义成全局变量,自定义的两个函数可以省去参数。
程序代码:
#include <stdio.h> 
#define N 100 
int i,j,k,a; 
float sum; 
struct student 
{int num; 
char sex; 
char name[20]; 
float score[4]; 
float ave; 
}stu[N]; 
void main() 
{ 
    void input(); 
    void print(); 
    input(); 
 
   sum=0; 
  for(i=0;i<k;i++) 
    {for(j=0;j<4;j++) 
       sum+=stu[i].score[j]; 
     stu[i].ave=sum/4; 
    } 
   print(); 
 
 
 
       } 
 
 
void input() 
{ 
   float x; 
   printf("How many student?\n"); 
   scanf("%d",&k); 
    for(i=0;i<k;i++) 
   { 
       printf("Input scores of student %d:\n",i+1); 
   printf("NO.:"); 
   scanf("%d",&stu[i].num); 
   printf("name:"); 
   scanf("%s",stu[i].name); 
   getchar(); 
   printf("sex:"); 
   scanf("%c",&stu[i].sex); 
 
   for(a=0;a<4;a++) 
   {printf("score %d:",a+1); 
   scanf("%f",&x); 
   stu[i].score[a]=x; 
   } 
   } 
    } 
void print() 
{ 
    printf("\n   NO.   name     sex    score1    score2    score3    score4     average\n"); 
     for(i=0;i<k;i++) 
       {printf("%5d%8s%7c",stu[i].num,stu[i].name,stu[i].sex); 
    for(j=0;j<4;j++) 
      printf("%10.2f",stu[i].score[j]); 
    printf("%12.2f\n",stu[i].ave); 
 
 
       } 
 
}


[ 本帖最后由 UserYuH 于 2009-10-22 15:20 编辑 ]
收到的鲜花
  • tancor2009-10-22 15:35 送鲜花  3朵   附言:刚开始学C程。很多不懂。谢谢啊.

努力—前进—变老—退休—入土
2009-10-22 15:19
miss_you
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2009-10-23
收藏
得分:0 
aaa
2009-10-23 13:50
快速回复:江湖救急,本人是C程新手。
数据加载中...
 
   



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

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