|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
- #include<stdio.h>
- int main()
- {
- int g[2][2];
- int i,j,max=0,hang,lie,emax[2],t;
- char name[2];
- float sum=0;
- for(i=0;i<2;i++)
- {
- printf("xm:");
- scanf("%s",name);
-
- for(j=0;j<2;j++)
- {
- printf("cj:");
- scanf("%d",&g[i][j]);
- sum=sum+g[i][j];
- if(g[i][j]>max)
- {
- max=g[i][j];
- hang=i;
- lie=j;
- emax[i]=max; //这里是给每个同学的最高成绩赋值
- }
-
- }
- }
- printf("av=%.2f\n",sum/4);
- printf("max=%d\n",max);
- printf("在%d行%d列\n",hang+1,lie+1);
- for(t=0;t<2;t++)
- {
- printf("%s的最高成绩是:%d",name[t],emax[t]); //这句是输出每个同学的最高成绩
- }
-
- return 0;
- }
复制代码
结尾的for那句输出了一行空格 然后就结束了。。。
哪里有毛病?求指点 谢谢!
我看你的程序中name的目的是存放名字,scanf("%s")的用法错误了
%s对应的应该是地址,你存的是两个人的名字,就应该使用二维数组
- #include<stdio.h>
- int main()
- {
- int g[2][2];
- int i,j,max=0,hang,lie,emax[2],t;
- char name[2][20];
- float sum=0;
- for(i=0;i<2;i++)
- {
- printf("xm:");
- scanf("%s",name[i]);
-
- for(j=0;j<2;j++)
- {
- printf("cj:");
- scanf("%d",&g[i][j]);
- sum=sum+g[i][j];
- if(g[i][j]>max)
- {
- max=g[i][j];
- hang=i;
- lie=j;
- emax[i]=max; //这里是给每个同学的最高成绩赋值
- }
-
- }
- }
- printf("av=%.2f\n",sum/4);
- printf("max=%d\n",max);
- printf("在%d行%d列\n",hang+1,lie+1);
- for(t=0;t<2;t++)
- {
- printf("%s的最高成绩是:%d",name[t],emax[t]); //这句是输出每个同学的最高成绩
- }
-
- return 0;
- }
复制代码
|
|