有个语法上的问题求解。。。
#include <stdio.h>#include <math.h>
#include <string.h>
void main()
{
void xspjf(int b[6][11],int x);
void kcpjf(int b[6][11],int y);
void zgf(int b[6][11]);
int a[6][11]={{0,1,2,3,4,5,6,7,8,9,10},{'Y',54,52,96,32,14,58,74,12,23,69},{'S',58,69,74,12,36,98,74,12,36,98},{'L',52,87,45,26,87,96,32,14,78,52},{'H',52,63,98,74,12,33,69,88,44,12},{'W',52,87,45,63,69,63,54,12,39,98}};
int y,s,l,w,h,r;
for(y=0;y<6;y++)
{
printf("%5c",a[y][0]);
for(s=1;s<11;s++)
printf("%5d",a[y][s]);
printf("\n");
}
printf("请输入要查找的学生号码:\n");
scanf("%d",&l);
if(l>=1&&l<=10)
xspjf(a,l);
else
printf("没有此学生号\n");
printf("要查询学科平均分请输入 1 ,否则输入0:\n");
scanf("%d",&w);
if(w==1)
{
printf("查找语文输入 1 \n查找数学输入 2 \n查找物理输入 3 \n查找化学输入 4 \n查找外语输入 5 \n");
scanf("%d",&h);
kcpjf(a,h);
}
else
printf("谢谢使用!\n");
printf("要查询最高分数请输入 1 ,否则输入0:\n");
scanf("%d",&r);
if(r==1)
zgf(a);
else
printf("谢谢使用!\n");
}
void xspjf(int b[6][11],int x)
{
int i,j,df=0;
for(i=1,j=x;i<6;i++)
df=df+b[i][j];
df=df/5;
printf("该学生的平均分为%d\n",df);
}
void kcpjf(int b[6][11],int y)
{
int i,j=0,df=0;
if(y==1||y==2||y==3||y==4||y==5)
{
for(i=y,j=1;j<11;j++)
df=df+b[i][j];
df=df/10;
printf("该学科的平均分为%d\n",df);
}
else
printf("没有此学科\n");
}
void zgf(int b[6][11])
{
int i,j,max,h,l;
max=b[1][1];
for(i=1;i<6;i++)
{
for(j=1;j<11;j++)
{
if(max<b[i][j])
{
max=b[i][j];
h=i;
l=j;
}
}
}
if(h==1)
printf("最高分为%d,学号是%d,学科是语文。\n",max,l);
else
if(h==2)
printf("最高分为%d,学号是%d,学科是数学。\n",max,l);
else
if(h==3)
printf("最高分为%d,学号是%d,学科是物理。\n",max,l);
else
if(h==4)
printf("最高分为%d,学号是%d,学科是化学。\n",max,l);
else
if(h==5)
printf("最高分为%d,学号是%d,学科是外语。\n",max,l);
}
有个语法上的问题求解。。。当查询学科的时候 我本想用字符输入的,但是代码运行时却不执行,所以只有改成输入数字了,求解为什么想用字符输入,代码却不执行?
还有我想让结果的小数也求出来,该怎么改?