| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 419 人关注过本帖
标题:关于数组的调用。程序找错
只看楼主 加入收藏
slightt
Rank: 1
来 自:惠州
等 级:新手上路
帖 子:24
专家分:0
注 册:2010-4-11
结帖率:100%
收藏
已结贴  问题点数:8 回复次数:2 
关于数组的调用。程序找错
   本题这样的:某班有5个学生,考了三门课。求每个学生的总成绩和平均成绩,并按成绩由高到低排序。
这里共有四个错误。分别用红色字体标出
第一个是与'input'声明中的类型不匹配,其它都是 说明语法错误
到底哪里错了呀?
#include "Stdio.h"
     #include "string.h"

 char st[6][15];
 float cj[6][4];
 float tacj[6][3];
 main()
 {  void input();
    void count();
    void sort();
    void output();
    input();
    count();
    sort();
    output();
 }

input( );
 {  int i,j;
    for(i=1;i<6;i++)
      {printf("input the %dth name and score:\n",i);
       scanf("%s",st[i]);
       for(j=1;j<4;j++)
          scanf("%f",&cj[i][j]);
       }
  }

  void count();
  {  int i,j;
      cj[i][1]=0;
     for(i=1;i<6;i++)
       for(j=1;i<4;j++)
        { cj[i][1]+=cj[i][j];
          tacj[i][2]=cj[i][1]/3;
        }
  }

  void sort();
  {  int flag=0;
     int i,j;
     float t;
     do
       { for(i=1;i<6;i++)
         if(tacj[i+1][1]>tacj[i][1])
           {strcpy(ts,st[i]);strcpy(st[i],st[i+1);strcpy(st[i+1],st);
            for(j=1;j<6;j++)
            {t=cj[i][j];cj[i]j]=cj[i+1][j];cj[i+1][j]=t; }
             t=tacj[i][1];tacj[i][1]=tacj[i+1][1];tacj[i+1][1]=t;
             t=tacj[i][2];tacj[i][2]=tacj[i+1][2];tacj[i+1][2]=t;
             flag=1;
            }
       }while(flag);
  }

  void output()
  {  int i;
     printf("the students' scores show as fellow:\n");
     printf("name calss1 calss2 calss3 sum  average  order\n");
     for(i=1;i<6;i++)
       { printf("%8s",st[i]);
         for(j=1;j<4;j++)
            printf("%7.2f",cj[i][j]);
         printf("%7.2f,%7.2f,%5d",tacj[i][1],tacj[i][2],i);
         printf("\n");
       }
  }
搜索更多相关主题的帖子: 总成绩 学生 三门 
2010-04-16 23:20
寒风中的细雨
Rank: 17Rank: 17Rank: 17Rank: 17Rank: 17
等 级:贵宾
威 望:66
帖 子:1710
专家分:8645
注 册:2009-9-15
收藏
得分:8 
#include "Stdio.h"
#include "string.h"

char st[6][15];
float cj[6][4];
float tacj[6][3];

int main()
{  
    void input();
    void count();
    void sort();
    void output();
    input();
    count();
    sort();
    output();

    return 0;
}

void input( )
{  
    int i,j;
    for(i=1;i<6;i++)
    {
        printf("input the %dth name and score:\n",i);
        scanf("%s",st[i]);
        for(j=1;j<4;j++)
            scanf("%f",&cj[i][j]);
    }
}

void count()
{
    int i=,j;
    cj[i][1]=0;
    for(i=1;i<6;i++)
        for(j=1;i<4;j++)
        {
            cj[i][1]+=cj[i][j];
            tacj[i][2]=cj[i][1]/3;
        }
}

void sort()
{
    int flag=0;
    int i,j;
    float t;
    do
    {
        for(i=1;i<6;i++)
            if(tacj[i+1][1]>tacj[i][1])
            {
                strcpy(st[0],st[i]);
                strcpy(st[i],st[i+1]);
                strcpy(st[i+1],st[0]);
                for(j=1;j<6;j++)
                {
                    t = cj[i][j];
                    cj[i][j] = cj[i+1][j];
                    cj[i+1][j] = t;
                }
                t=tacj[i][1];
                tacj[i][1]=tacj[i+1][1];
                tacj[i+1][1]=t;
                t=tacj[i][2];
                tacj[i][2]=tacj[i+1][2];
                tacj[i+1][2]=t;
                flag=1;
            }
    }while(flag);
}

void output()
{  
    int i,j;
    printf("the students' scores show as fellow:\n");
    printf("name calss1 calss2 calss3 sum  average  order\n");
    for(i=1;i<6;i++)
    {
        printf("%8s",st[i]);
        for(j=1;j<4;j++)
            printf("%7.2f",cj[i][j]);
        printf("%7.2f,%7.2f,%5d",tacj[i][1],tacj[i][2],i);
        printf("\n");
    }
}
2010-04-17 03:22
寒风中的细雨
Rank: 17Rank: 17Rank: 17Rank: 17Rank: 17
等 级:贵宾
威 望:66
帖 子:1710
专家分:8645
注 册:2009-9-15
收藏
得分:0 
能跑  但 没看逻辑问题
2010-04-17 03:24
快速回复:关于数组的调用。程序找错
数据加载中...
 
   



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

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