| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 696 人关注过本帖
标题:大家好,我这个程序是一个学生管理系统,可是老是不能调用函数进行求总成绩 ...
只看楼主 加入收藏
人海穿越
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2010-11-21
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:6 
大家好,我这个程序是一个学生管理系统,可是老是不能调用函数进行求总成绩和平均值,请大家帮忙看看怎么改一下我那调用的函数!谢谢了啊!
#include "stdio.h"
#include "string.h"
#define N 4
#define pw 123
struct student
{
    char name[9];
    int num;
    int age;
    int sex;
    float score[3];

};
count(float x,float y,float z)
{
    float m,n;
    m=x+y+z;
    n=m/3;

}
main()
{    int password,n=1;
    printf("\n*************请输入学生信息*************");
    printf("\n*****                              *****");
    printf("\n*****                              *****");
    printf("\n*****                              *****");
    printf("\n*************请输入登录密码*************");
    do
    {
        
        
        if(n>3)
        {
            printf("对不起,你已被禁止使用该程序,请推出谢谢合作!");
            return;
        }
            printf("\n请输入密码");
            scanf("%d",&password);
                if(password==pw)
            {
                printf("欢迎使用该程序,请输入你的密码,谢谢合作");
                break;
            }
                n++;
   
   
   
    }
    while(1);
    student stu[N];
    float p,k;
    for(int j=0;j<N;j++)
    {
        printf("\n请输入第%d个学生的姓名",j+1);
        scanf("%c",&stu[j].name);
        printf("请输入第%d个学生的学号",j+1);
        scanf("%d",&stu[j].num);
        printf("\n请输入第%d个学生的年龄",j+1);
        scanf("%d",&stu[j].age);
        printf("\n请输入第%d个学生的性别",j+1);
        scanf("%d",&stu[j].sex);
        printf("\n以下输出%d学生的个人信息",j+1);
        printf("姓名:%c\n学号:%d\n年龄:%d\n性别:%d\n",stu[j].name,stu[j].num,stu[j].age,stu[j].sex);
        printf("\n请输入第%d个学生的三门课程成绩",j+1);
        for(int i=0;i<3;i++)
        {
            scanf("%f",&stu[j].score[i]);
        }
        printf("\n输出第%d个学生的三门课程成绩",j+1);
        for(i=0;i<3;i++)
        {
            printf("%f",stu[j].score[i]);
        }
        
   
        printf("\n输出第%d个学生的平均成绩和总成绩",j+1);
        count(stu[j].score[i],stu[j].score[i+1],stu[j].score[i+2]);
        printf("第%d个学生的平均成绩为%f",j+1,k);
        printf("第%d个学生的总成绩为%f",j+1,p);
   
    }    程序中红色部分不能正确运行,请诸位高手帮忙斧正啊,谢谢了!
}      还有就是我把输入的姓名用成拼音输入时会一下子把所有的还没输入的全部显示出来,输入数字1。。。这类的时候是一步一步显示的,请帮我改改,谢谢了啊!声明一点啊我是想让它们一步一步的输出啊!
搜索更多相关主题的帖子: 平均值 总成绩 函数 系统 
2010-11-29 21:11
rainbow1
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:2
帖 子:277
专家分:839
注 册:2010-5-19
收藏
得分:0 
第一个红色部分的}后少了“;”;
2010-11-29 21:46
rainbow1
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:2
帖 子:277
专家分:839
注 册:2010-5-19
收藏
得分:0 
第二个正在看。
2010-11-29 21:47
rainbow1
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:2
帖 子:277
专家分:839
注 册:2010-5-19
收藏
得分:0 
第二个问题解决了,第二个问题也解决 了。
2010-11-29 21:51
xanxus
Rank: 2
等 级:论坛游民
威 望:1
帖 子:21
专家分:60
注 册:2010-10-26
收藏
得分:20 
LZ还没解决??
程序代码:
#include "stdio.h"
#include "string.h"
#define N 4
#define pw 123
struct student
{
    char name[9];
    int num;
    int age;
    char sex[4];
    float score[3];

};

void main()
{  
    int password,n=1;
    float p=0;
    float k=0;
   
    printf("\n*************请输入学生信息*************");
    printf("\n*****                              *****");
    printf("\n*****                              *****");
    printf("\n*****                              *****");
    printf("\n*************请输入登录密码*************");
    do
    {
       
       
        if(n>3)
        {
            printf("对不起,你已被禁止使用该程序,请推出谢谢合作!");
            return;
        }
            printf("\n请输入密码");
            scanf("%d",&password);
                if(password==pw)
            {
                printf("欢迎使用该程序,请输入你的密码,谢谢合作");
                break;
            }
                n++;
   
   
   
    }
    while(1);
    student stu[N];
    for(int j=0;j<N;j++)
    {
        printf("\n请输入第%d个学生的姓名",j+1);
        scanf("%s",&stu[j].name);
        printf("请输入第%d个学生的学号",j+1);
        scanf("%d",&stu[j].num);
        printf("\n请输入第%d个学生的年龄",j+1);
        scanf("%d",&stu[j].age);
        printf("\n请输入第%d个学生的性别",j+1);
        scanf("%s",&stu[j].sex);
        printf("\n以下输出%d学生的个人信息",j+1);
        printf("姓名:%s\n学号:%d\n年龄:%d\n性别:%s\n",stu[j].name,stu[j].num,stu[j].age,stu[j].sex);
        printf("\n请输入第%d个学生的三门课程成绩",j+1);
        for(int i=0;i<3;i++)
        {
            scanf("%f",&stu[j].score[i]);
        }
        printf("\n输出第%d个学生的三门课程成绩",j+1);
        for(i=0;i<3;i++)
        {
            printf("%f\n",stu[j].score[i]);
        }
        printf("\n输出第%d个学生的平均成绩和总成绩",j+1);
        p=stu[j].score[j]+stu[j].score[j+1]+stu[j].score[2];
        k=k/3;
        printf("第%d个学生的平均成绩为%f",j+1,k);
        printf("第%d个学生的总成绩为%f",j+1,p);
    }   
}  
修改的我用下划线标出了,而且把count函数去掉了,感觉没必要,
字符串的输入输出是%S
希望对楼主有所帮助

[ 本帖最后由 xanxus 于 2010-11-30 11:55 编辑 ]

授人以鱼  不如授人以渔
2010-11-30 11:52
人海穿越
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2010-11-21
收藏
得分:0 
回复 5楼 xanxus
呵呵 谢谢你啊 已经帮我解决了把部分问题 剩下的我自己再解决啊 谢谢了
2010-12-05 10:36
Mack2
Rank: 1
来 自:山东
等 级:新手上路
帖 子:8
专家分:2
注 册:2010-11-26
收藏
得分:0 
#include "stdio.h"
#include "string.h"
#define N 4
#define pw 123
struct student
{
    char name[9];
    int num;
    int age;
    char sex[5];
    float score[3];

};
void count(float x,float y,float z,int i)
{
    float m,n;
    m=x+y+z;
    n=m/3;
    printf("第%d个学生的平均成绩为%f",++i,n);
    printf("第%d个学生的总成绩为%f",i,m);

};
int main()
{    int password,n=1;
    printf("\n*************请输入学生信息*************");
    printf("\n*****                              *****");
    printf("\n*****                              *****");
    printf("\n*****                              *****");
    printf("\n*************请输入登录密码*************");
    do
    {
        
        
        if(n>3)
        {
            printf("对不起,你已被禁止使用该程序,请推出谢谢合作!");
            return 0;
        }
            printf("\n请输入密码");
            scanf("%d",&password);
                if(password==pw)
            {
                printf("欢迎使用该程序,请输入你的密码,谢谢合作");
                break;
            }
                n++;
   
   
   
    }
    while(1);
    student stu[N];
    for(int j=0;j<N;j++)
    {
        printf("\n请输入第%d个学生的姓名",j+1);
        scanf("%s",&stu[j].name);
        printf("请输入第%d个学生的学号",j+1);
        scanf("%d",&stu[j].num);
        printf("\n请输入第%d个学生的年龄",j+1);
        scanf("%d",&stu[j].age);
        printf("\n请输入第%d个学生的性别",j+1);
        scanf("%s",&stu[j].sex);
        printf("\n以下输出%d学生的个人信息",j+1);
        printf("姓名:%s\n学号:%d\n年龄:%d\n性别:%s\n",stu[j].name,stu[j].num,stu[j].age,stu[j].sex);
        printf("\n请输入第%d个学生的三门课程成绩",j+1);
        for(int i=0;i<3;i++)
        {
            scanf("%f",&stu[j].score[i]);
        }
        printf("\n输出第%d个学生的三门课程成绩",j+1);
        for(i=0;i<3;i++)
        {
            printf("%f",stu[j].score[i]);
        }
        
   
        printf("\n输出第%d个学生的平均成绩和总成绩",j+1);
        count(stu[j].score[0],stu[j].score[1],stu[j].score[2],j);
};
        return 0;
}   
2010-12-05 17:16
快速回复:大家好,我这个程序是一个学生管理系统,可是老是不能调用函数进行求总 ...
数据加载中...
 
   



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

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