鱼C论坛

 找回密码
 立即注册
查看: 4471|回复: 1

这个程序老是出现error C2109: subscript requires array or pointer type

[复制链接]
发表于 2011-11-4 22:13:43 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
#include <stdio.h>
main()
{
    void score_average(int * score);
    void score_grade(int * score);
    void sore_fine(int *score);
        int p[4][5]={{7,7,7,7,7},{8,8,8,8,8},{9,9,9,9,9},{7,7,7,7,7}};
        score_average(p);
        score_grade(p);
        score_fine(p);
}

void score_average(int * score)
{
        int i;
        printf("第一个同学的平均分是:\n");
        for(i=0;i<5;i++)
        printf("%5d\n",*(score+i));
}
void score_grade(int * score)
{
        int i,j,k,temp,average,obserzation_point;
        for(i=0;i<4;i++)
        {
                average=0;
                obserzation_point=0;
                k=i;
                for(j=0;j<5;j++)
                {
                        average=average+score[k][j];
                        if(score[k][j]<60)
                        obserzation_point++;
                               
                }
                if(obserzation_point>=2)
                {
                        printf("第%d个同学有%d科不及格\n",k,obserzation_point);
                        for(temp=0;temp<5;temp++)
                        {
                                printf("他的全部成绩分别为:%5d\n",score[k][temp]);
                        }
                        printf("该同学平均分为:%d\n",average/5);
                }
       
               
        }
}
void sore_fine(int *score)
{
       
        int i,j,k,average,obserzation_point,temp;
        for(i=0;i<4;i++)
        {
                average=0;
                obserzation_point=0;
                k=i;
                for(j=0;j<5;j++)
                {
                        average=average+score[k][j];
                        if(score[k][j]>80)
                        obserzation_point++;
                               
                }
                if(average>90||obserzation_point==5)
                {
                        for(temp=0;temp<5;temp++)
                        {
                                printf("他的全部成绩分别为:%5d\n",score[k][temp]);
                        }
                }
       
        }       
}

















小甲鱼最新课程 -> https://ilovefishc.com
发表于 2011-11-4 22:46:03 | 显示全部楼层
  1. void score_average(int * score)
  2. {
  3.         int i;
  4.         printf("第一个同学的平均分是:\n");
  5.         for(i=0;i<5;i++)
  6.         printf("%5d\n",*(score+i));
  7. }
复制代码
这个不对吧?
小甲鱼最新课程 -> https://ilovefishc.com
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-11-9 07:09

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表