| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 641 人关注过本帖
标题:不知道哪里出错了高手们帮忙看看
只看楼主 加入收藏
iceberg0
Rank: 1
等 级:新手上路
帖 子:37
专家分:9
注 册:2012-3-2
结帖率:0
收藏
 问题点数:0 回复次数:4 
不知道哪里出错了高手们帮忙看看
#include <stdio.h>
#include <stdlib.h>

void main()
{
    int select;
    int i, j;
    int score[5][7];

    int average = 0;
    int sum = 0;
    do
    {
        printf("本程序有4项功能:\n");
        printf("1.根据学号查询学生成绩\n");
        printf("2.根据考试号统计成绩\n");
        printf("3.根据考试号和学号查询成绩\n");
        printf("4.成绩录入\n");
        printf("0.退出\n");
        printf("请输入选择(0 - 4): ");
        scanf("%d", &select);
        switch(select)
        {
            case 0:
                printf("OK\n");
                exit(0);
                break;
            case 1:
                printf("输入学号:");
                scanf("%d\n", &i);
                for(j=1; j<7; j++)
                {
                    printf("第%d科成绩是%d\n", j, score[i][j]);
                    sum += score[i][j];
                }
                average = sum / 6;
                printf("学生的平均成绩是%d\n", average);
                break;
            case 2:
                printf("输入考试号:");
                scanf("%d\n", &j);
                for(i=1; 1<5; i++)
                {
                    printf("第%d号学生本科成绩是%d\n", i, score[i][j]);
                    sum += score[i][j];
                }
                average = sum / 4;
                printf("本科平均成绩是%d\n", average);
                break;
            case 3:
                printf("输入学号和考试号:");
                scanf("%d %d\n", &i, &j);
                printf("第%d号学生的第%d科考试成绩是%d\n", i, j, score[i][j]);
                break;
            case 4:
                printf("请输入成绩\n");
                for(i=1; i<5; i++)
                    for(j=1; j<7; j++)
                        scanf("%d\n", &score[i][j]);
                break;
            default:
                break;
        }
    }while(1);
}
经过调试还是不行,高手们帮忙看看,先谢过了!!!
搜索更多相关主题的帖子: 考试 void 学号查询 average include 
2012-08-13 22:20
justNPC
Rank: 5Rank: 5
等 级:职业侠客
帖 子:101
专家分:311
注 册:2012-8-11
收藏
得分:0 
程序代码:
for(i=1; 1<5; i++)
                 {
                     printf("第%d号学生本科成绩是%d\n", i, score[i][j]);
                     sum += score[i][j];
                 }

这是个死循环
2012-08-13 22:54
iceberg0
Rank: 1
等 级:新手上路
帖 子:37
专家分:9
注 册:2012-3-2
收藏
得分:0 
那个不是死循环,我已经找到错了,谢谢!!!
2012-08-16 23:15
ldzy
Rank: 5Rank: 5
等 级:职业侠客
威 望:1
帖 子:64
专家分:339
注 册:2012-7-30
收藏
得分:0 
几处scanf()都有点问题。
2012-08-17 00:28
embed_xuel
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:58
帖 子:3845
专家分:11385
注 册:2011-9-13
收藏
得分:0 
回复 3楼 iceberg0
麻烦你动动脑,自己写错了不知道也就算了,二楼给你指出来了你还没反应过来!!!你把结束循环的条件i<5写成了1<5,1永远小于5,所以是死循环。
还有把scanf里面的\n统统去掉,你看看哪本书的程序用到scanf时有\n

[ 本帖最后由 embed_xuel 于 2012-8-17 08:44 编辑 ]

总有那身价贱的人给作业贴回复完整的代码
2012-08-17 08:40
快速回复:不知道哪里出错了高手们帮忙看看
数据加载中...
 
   



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

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