实验报告7
项目一
解题思路
求十个成绩的平均值,显示低于平均值的成绩。循环十个成绩,用for循环累加,将结果÷10得出平均值,再逐个比较大小,输出小于平均值的数。
核心代码
#include <stdio.h>
int main()
{
printf("******************\n");
printf("06杨雪辉\n");
printf("******************\n");
int a[10],i,sum=0,avg;
printf("请输入10个分数:\n");
for(i=0;i<10;i++)
{scanf("%d",&a[i]);
sum=sum+a[i];
}
avg=sum/i;
printf("平均成绩:%d\n",avg);
for(i=0;i<10;i++)
{
if(a[i]<avg)
printf("低于平均分的成绩:%d\n",a[i]);
}
}
核心截图
项目二
解题思路
用for循环嵌套相邻两数值比较大小,先定义i=0;i<N;i++,scanf函数赋予math[i]
j=0;j<N-1;j++,再定义i=0;i<N-1-j;i++ 用for函数定义i=0;i<10;i++,printf函数输出math[i];
核心代码
#define N 10
int main()
{
printf("******************\n");
printf("06杨雪辉\n");
printf("******************\n");
int i,c[N],t,j;
printf("请输入10位同学的成绩:\n");
for(i=0;i<N;i++)
scanf("%d",&c[i]);
for(j=0;j<N-1;j++)
for(i=0;i<N-1-j;i++)
if(c[i]<c[i+1])
{
t=c[i];
c[i]=c[i+1];
c[i+1]=t;
}
printf("10个同学的成绩排序为:\n");
for(i=0;i<10;i++)
printf("%3d\n",c[i]);
printf("最高分:%d\n",c[0]);
printf("最低分:%d\n",c[9]);
}
核心截图
项目三
解题思路
在数组循环输入值,int函数输入i,j,a[3][3],m,n,max;for函数定义 j=0;j<3;j++,scanf函数赋予a[i][j] 赋予max=a[0][0];通过行列循环嵌套和所有值比大小,小于则跳过继续循环,大于则记录行列,最后输出最大值及对应下标
核心代码
#include<stdio.h>
int main()
{
printf("******************\n");
printf("06杨雪辉\n");
printf("******************\n");
int i,j,a[3][3],m,n,max;
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
{
scanf("%d",&a[i][j]);
}
}
max=a[0][0];
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
{
if(a[i][j]>max)
{
max=a[i][j];
m=i;
n=j;
}
}
}
printf("最大值:%d\n其行下标:%d\n其列下标:%d",max,m,n);
}
核心截图
项目四
解题思路
设置新数组后用for循环嵌套for (j = 0; j <= 2; j++)将原数组行列存入新数组行列中,最后输出printf("%d\t", b[i][j])
核心代码
#include<stdio.h>
int main()
{ printf("******************\n");
printf("06杨雪辉\n");
printf("******************\n");
int a[2][3] = { {4,5,6},{4,5,6} };
int b[3][2], i, j;
for (i = 0; i <= 1; i++)
{
for (j = 0; j <= 2; j++) {
printf( "%d\t",a[i][j] );
b[j][i] = a[i][j];
}
printf("\n");
}
printf("\n");
for (i = 0; i <= 2; i++) {
for (j = 0; j <= 1; j++) {
printf("%d\t", b[i][j]);
}
printf("\n");
}
}
核心截图
项目五
解题思路
用二维数组存每个同学成绩,循环输入且累加同学成绩,用for循环嵌套for (i=0;i<4;i++) for (j=0;j<5;j++),用sum求和每个同学总成绩,然后对总成绩求平均值,最后一次输出即可。
核心代码
#include<stdio.h>
int main()
{ printf("******************\n");
printf("06杨雪辉\n");
printf("******************\n");
int score[4][5], sum[4]={0};
int i=0, j=0;
for (i=0;i<4;i++)
{
printf("请输入第%d位同学的5门成绩:\n",i+1);
for (j=0;j<5;j++)
{
scanf("%d", &score[i][j]);
}
}
for(i=0;i<4;i++)
{
for(j=0;j<5;j++)
{
sum[i]=score[i][j]+sum[i];
}
}
printf("四位同学的总分分别是:\n");
for (i=0;i<4;i++)
printf("%d\n",sum[i]);
}
核心截图