C语言题 在线等待,急,高手帮忙
2.输入10个学生的学号和数学课成绩,输出成绩最好的学生的成绩以及对应的学号,换行输出10学生的平均成绩。3.写一个函数,实现给定的一个3*2的二维整型数组转置,并输出转...
2.输入10个学生的学号和数学课成绩,输出成绩最好的学生的成绩以及对应的学号,换行输出10学生的平均成绩。
3.写一个函数,实现给定的一个3*2的二维整型数组转置,并输出转置举证。 展开
3.写一个函数,实现给定的一个3*2的二维整型数组转置,并输出转置举证。 展开
2012-01-07
展开全部
2.输入10个学生的学号和数学课成绩,输出成绩最好的学生的成绩以及对应的学号,换行输出10学生的平均成绩。
#include<stdio.h>
int main()
{
int score[10][2]={0};
int i,max,maxx,sum=0;
for(i=0;i<10;i++)
{
printf("请输入第%d个学生的学号: ",i+1);
scanf("%d",&score[i][0]);
fflush(stdin);
printf("请输入第%d个学生的数学课成绩: ",i+1);
scanf("%d",&score[i][1]);
sum+=score[i][1];
}
max=score[0][1];
maxx=score[0][0];
for(i=0;i<10;i++)
{
if(score[i][1] > max)
{
max=score[i][1];
maxx=score[i][0];
}
}
printf("成绩最好的学生的成绩为: %d,对应的学号为: %d\n",max,maxx);
printf("学生的平均成绩为: %.2f\n",sum/10.0);
return 0;
}
3.写一个函数,实现给定的一个3*2的二维整型数组转置,并输出转置举证。
#include<stdio.h>
#define m 3
#define n 2
void getResult(int a[m][n],int b[n][m])
{
int i,j;
for(i=0;i<m;i++)
{
for(j=0;j<n;j++)
{
b[j][i]=a[i][j];
}
}
printf("转置后的数组为: \n");
for(j=0;j<n;j++)
{
for(i=0;i<m;i++)
{
printf("%d\t",b[j][i]);
}
printf("\n");
}
}
int main()
{
int i,j;
int a[m][n],b[n][m];
printf("请输入数组数据\n");
for(i=0;i<m;i++)
{
for(j=0;j<n;j++)
{
scanf("%d",&a[i][j]);
}
}
printf("输入的数组为: \n");
for(i=0;i<m;i++)
{
for(j=0;j<n;j++)
{
printf("%d\t",a[i][j]);
}
printf("\n");
}
getResult(a,b);
return 0;
}
#include<stdio.h>
int main()
{
int score[10][2]={0};
int i,max,maxx,sum=0;
for(i=0;i<10;i++)
{
printf("请输入第%d个学生的学号: ",i+1);
scanf("%d",&score[i][0]);
fflush(stdin);
printf("请输入第%d个学生的数学课成绩: ",i+1);
scanf("%d",&score[i][1]);
sum+=score[i][1];
}
max=score[0][1];
maxx=score[0][0];
for(i=0;i<10;i++)
{
if(score[i][1] > max)
{
max=score[i][1];
maxx=score[i][0];
}
}
printf("成绩最好的学生的成绩为: %d,对应的学号为: %d\n",max,maxx);
printf("学生的平均成绩为: %.2f\n",sum/10.0);
return 0;
}
3.写一个函数,实现给定的一个3*2的二维整型数组转置,并输出转置举证。
#include<stdio.h>
#define m 3
#define n 2
void getResult(int a[m][n],int b[n][m])
{
int i,j;
for(i=0;i<m;i++)
{
for(j=0;j<n;j++)
{
b[j][i]=a[i][j];
}
}
printf("转置后的数组为: \n");
for(j=0;j<n;j++)
{
for(i=0;i<m;i++)
{
printf("%d\t",b[j][i]);
}
printf("\n");
}
}
int main()
{
int i,j;
int a[m][n],b[n][m];
printf("请输入数组数据\n");
for(i=0;i<m;i++)
{
for(j=0;j<n;j++)
{
scanf("%d",&a[i][j]);
}
}
printf("输入的数组为: \n");
for(i=0;i<m;i++)
{
for(j=0;j<n;j++)
{
printf("%d\t",a[i][j]);
}
printf("\n");
}
getResult(a,b);
return 0;
}
上海勤革
2024-10-18 广告
2024-10-18 广告
Golang程序员在准备面试时,可以参考多个在线刷题平台来提高编程能力和解题技巧。虽然没有具体的网址,但常见的刷题网站通常会提供丰富的算法题库、在线编程环境以及详细的题目解析。通过不断练习,Golang程序员能够加深对常用数据结构和算法的理...
点击进入详情页
本回答由上海勤革提供
展开全部
第2题:
#include<stdio.h>
void main()
{
int grade[10][2];
int i, max=0, id;
float sum=0, ave;
printf("请输入10个学生的学号和成绩:\n");
for(i=0;i<10;i++)
{
printf("学号:");
scanf("%d",&grade[i][0]);
printf("数学成绩:");
scanf("%d",&grade[i][1]);
printf("\n");
}
max = grade[0][1];
for(i=0;i<10;i++)
{
sum += grade[i][1];
if(max < grade[i][1])
{
max = grade[i][1];
id = grade[i][0];
}
}
ave = sum/10;
printf("成绩最高的学生成绩为:%d,学号为:%d\n",max,id);
printf("10个学生的平均成绩为:%f\n",ave);
}
第3题:
#include<stdio.h>
void main()
{
int source[3][2], count=0;
int i, j;
printf("请输入一个3×2的矩阵:\n");
for(i=0;i<3;i++)
{
for(j=0;j<2;j++)
scanf("%d",&source[i][j]);
}
printf("转置后的矩阵为:\n");
for(i=0;i<2;i++)
{
for(j=0;j<3;j++)
{
printf("%2d ",source[j][i]);
count++;
if(count == 3)
printf("\n");
}
}
}
#include<stdio.h>
void main()
{
int grade[10][2];
int i, max=0, id;
float sum=0, ave;
printf("请输入10个学生的学号和成绩:\n");
for(i=0;i<10;i++)
{
printf("学号:");
scanf("%d",&grade[i][0]);
printf("数学成绩:");
scanf("%d",&grade[i][1]);
printf("\n");
}
max = grade[0][1];
for(i=0;i<10;i++)
{
sum += grade[i][1];
if(max < grade[i][1])
{
max = grade[i][1];
id = grade[i][0];
}
}
ave = sum/10;
printf("成绩最高的学生成绩为:%d,学号为:%d\n",max,id);
printf("10个学生的平均成绩为:%f\n",ave);
}
第3题:
#include<stdio.h>
void main()
{
int source[3][2], count=0;
int i, j;
printf("请输入一个3×2的矩阵:\n");
for(i=0;i<3;i++)
{
for(j=0;j<2;j++)
scanf("%d",&source[i][j]);
}
printf("转置后的矩阵为:\n");
for(i=0;i<2;i++)
{
for(j=0;j<3;j++)
{
printf("%2d ",source[j][i]);
count++;
if(count == 3)
printf("\n");
}
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
第二题的算法是将一个二维数组的值与其行号和列号相反的值互换即可
void fun (int a[3][2])
{
int i, j, b[2][3];
for (i = 0; i < 2; i++)
for(j = 0; j < 3; j++)
{
b[i][j] = a[j][i];
}
for (i = 0; i < 2; i++)
{
for(j = 0; j < 3; j++)
{
printf("%d ",b[i][j]);
}
printf("\n");
}
}
void fun (int a[3][2])
{
int i, j, b[2][3];
for (i = 0; i < 2; i++)
for(j = 0; j < 3; j++)
{
b[i][j] = a[j][i];
}
for (i = 0; i < 2; i++)
{
for(j = 0; j < 3; j++)
{
printf("%d ",b[i][j]);
}
printf("\n");
}
}
追问
能不能写出来啊?
追答
第二题,我在tc下验证了,符合你的要求,你给出的第一小题,我觉得要是你学习了结构体的话,最好使用结构体来处理,比价符合习惯,结果也要准确些,同意一楼看法
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
简单点吧
int main()
{
int a[10];
for(int i=0;i<10;i++)
scanf("%d",&a[i])
int m=0 ;//记录最高
for(i=0;i<10;i++)
if(a[i] >= s[i-1])
m = s[i].grade;
printf("\n%d",m);
}
int main()
{
int a[10];
for(int i=0;i<10;i++)
scanf("%d",&a[i])
int m=0 ;//记录最高
for(i=0;i<10;i++)
if(a[i] >= s[i-1])
m = s[i].grade;
printf("\n%d",m);
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
大不了一个一个找啊。建一个结构体就好了
更多追问追答
追问
你帮我做啊 急啊 高手!
追答
struct student {
int StuNum;
flaot grade;
};
void main()
{
// 输入数据;
struct student s[10];
int m ;//记录最高
for(i=0;i= s[i-1].grade)
m = s[i].grade;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询