Visual0522
visual2015
采纳率80%
2015-06-14 07:09

C语言的这个代码表达不了,大神帮忙看看。

已采纳

#include
#define N 50 //学生人数
#define M 3 //课程门数
void Input(int score[][M+3], int n);
{
int i, j, sum;
printf("Input Number and %d score:\n",M);
for (i = 0; i < n; i++)
{
sum = 0;
printf("%d:",i+1);
for (j = 0; j <= M; j++)
{
scanf_s("%d",&score[i][j]);
if (j != 0)
sum += score[i][j];
}
score[i][M+1] = sum;
score[i][M + 2] = sum / M;
}
}
void Output(int score[][M + 3],int n)
{
int i, j;
printf("\nNumber \t");
for (i = 0; i < M; i++)
printf("sub%d\t", i + 1);
printf("Total\tAverage\n");
printf("-----------------------------------------\n");
for (i = 0; i < n; i++)
{
for (j = 0; j < M + 3; j++)
printf("%d\t", score[i][j]);
printf("\n");
}
}
void Sort(int a[][M + 3],int n)
{
int i, j, k, t;
for (i = 1; i < n; i++)
{
for (j = 0; j < n - i;j++)
if (a[j][M + 2 < a[j + 1][M + 2])
{
for (k = 0; k < M + 3; k++)
{
t = a[j][k];
a[j][k] = a[j + 1][k];
a[j + 1][k] = t;
}
}
}
}
void main()
{
int score[N][M + 3], n;
printf("\nHow many students are there in the class?");
scanf_s("%d", &n);
Input(score, n);
Output(score, n);
Sort(score, n);
Output(score, n);

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

7条回答

  • chentravelling 生活没有if-else 6年前

    void Input(int score[][M+3], int n);这是你的第一个函数,亲,删掉分号!

    点赞 1 评论 复制链接分享
  • 91program 91program 6年前

    你的代码帖出来后,格式不对了,没有办法判断究竟是代码的问题,还是格式的问题。建议你使用输入框上面的工具 </>来帖出代码。
    按错误的提示,应该是大括号不匹配。例如,现在你提供的代码,main 后没有右大括号。

    点赞 2 评论 复制链接分享
  • 91program 91program 6年前

    表达不了,是什么意思呢?实在是看不懂。

    点赞 2 评论 复制链接分享
  • whappymanlynn whappymanlynn 6年前

    楼主的错误不少,说出你要实现的功能,我试试看能帮你不

    点赞 1 评论 复制链接分享
  • cuiwei1026522829 另一花生 6年前

    应该是括号不匹配造成的,你看第四行多个分好,最后少个分号,诸如此类,你仔细一点哦,

    点赞 1 评论 复制链接分享
  • Visual0522 visual2015 6年前

    图片说明有错误啊,不知道怎么改。环境是visual studio 2013

    点赞 评论 复制链接分享
  • u014306011 天命王子 6年前

    应该是里面一下语法错误,自己改一下就好,看不出那里错了的话,建议改用编译器,个人建议使用VC++。

    点赞 评论 复制链接分享