第八次作业

一、实验内容

1、实验要求:输入若干名学生的成绩(输入人数或用负数结束均可),求其平均分,最高分和最低分,并指出最高分和最低分的学生(给出下标即可),输入一个成绩,说明是第几个学生的成绩。

代码:

#include<stdio.h>
#define N 30
int main()
{
    int score[N],sum=0,i,i1=0,i2=0,i3=0,n,x,max,min;
    double average;
    printf("请输入人数:
");
    scanf("%d",&n);
    for(i=0;i<n;i++)
    {
        printf("请输入成绩:
");
        scanf("%d",&score[i]);
        sum=sum+score[i];
    }
    average=(double)sum/n;
    printf("这些同学的平均成绩是%.2f
",average);
    max=score[0];
    for(i=0;i<n;i++)
    {
        if(score[i]>max)
        {
            max=score[i];
            i1=i;
        }
    }
    printf("最高分是%d,最高分学生是%d
",max,i1);
    min=score[0];
    for(i=0;i<n;i++)
    {
        if(score[i]<min)
        {
            min=score[i];
            i2=i;
        }
    }
    printf("最低分是%d,最低分学生是%d
",min,i2);
    printf("请输入一个成绩:
");
    scanf("%d",&x);
    for(i=0;i<n;i++)
    {
        if(score[i]==x)
        {
            i3=i+1;
            printf("%d是第%d个学生的成绩
",x,i3);
        }
    }
    return 0;
}

程序运行结果:

2、实验要求:现有一个有序正整数数组(从小到大排序),输入一个数,插入到数组中,要求插入后的数组仍然有序。对插入到最前、最后、中间位置三种情况进行验证。

代码:

#include<stdio.h>
#define N 10
int main()
{   
    int a,b,c,n,i;
    int z[N]={3,5,7,9,11,13,15,17,19};
    printf("请输入一个数字,将插入到3,5,7,9,11,13,15,17,19里:
");
    scanf("%d",&a);
    for(i=0;i<N;i++)
    {
        if(a<=z[i])
        {
            n=i+1;
            printf("插入到第%d位前面
",n);
            break; 
        }
    }
    if(a>z[i])
    {
        printf("3,5,7,9,11,13,15,17,19,%d
",a);
    }
    for(i=n-1,c=N-1;i<=c;c--)
    {
        z[c]=z[c-1];
    }
    z[n-1]=a;
    for(i=0;i<N;i++)
    {
        printf("%d ",z[i]);
    } 
    return 0;
}

程序运行结果:

3、实验要求:用数组实现火柴棍等式

代码:

#include<stdio.h>
int main()
{
    int x,y,sum;
    int match[10]={6,2,5,5,4,5,6,3,7,6};
    for(x=0;x<10;x++)
    {
        for(y=0;y<10;y++)
        {
            sum=x+y;
            if(sum<=9&&match[x]+match[y]+match[sum]==12)
            {
                printf("%d+%d=%d
",x,y,sum);
            }
        }
    }
    return 0;
}

程序运行结果:

二、知识点总结

1、一维数组定义方式:数据类型  数组名【数组长度】

2、一个浮点型数据占四个字节;

3、数组元素的引用格式为:数组名【下标】①、下标从0开始;②、允许快捷随机访问;

4、保证数组下标不越界;

5、初始化方式:int a[5]={1,2,3,4,5}

说明:①、数组不初始化,其元素值为随机数;

        ②、只给部分数组元素赋初值,则其后的元素被初始化为0。

三、实验总结

1、scanf语句不要忘记取地址符;

2、可用#define主函数定义;

3、注意大括号的位置,缩格书写使代码美观。

原文地址:https://www.cnblogs.com/zhao-1184346113/p/6091736.html