• 第八次作业


    一.实验内容

    1.

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

    代码:

    #include<stdio.h>
    #define N 100
    int main()
    {
        int score[N],n,i,sum,max,min,grade,b;
        double average;
        printf("请输入学生的数量。
    ");
        scanf("%d",&n);
        sum=0;
        for(i=1;i<=n;i++)
        {
            printf("请输入第%d个学生的成绩。
    ",i);
            scanf("%d",&score[i]);
            sum=sum+score[i];
        }
        average=(double)sum/n;
        printf("平均成绩为%.2lf
    ",average);
        max=score[1];
        min=score[1];
        for(i=1;i<=n;i++)
        {
            if(score[i]>max)
            max=score[i];
            if(score[i]<min)
            min=score[i];
        }
        for(i=1;i<=n;i++)
        {
            if(score[i]==max)
            printf("第%d名学生成绩最高。
    ",i);
        }
        for(i=1;i<=n;i++)
        {
            if(score[i]==min)
            printf("第%d名学生成绩最低。
    ",i);
        }
        printf("请输入你想查找的成绩。
    ");
        scanf("%d",&grade);
        b=0;
        for(i=1;i<=n;i++)
        {
            if(score[i]==grade)
            {
                printf("符合这个成绩的学生是%d
    ",i);
                b++;
            }
        }
        printf("总共有%d名学生。
    ",b);
        return 0;
    }

    运行结果:

    2.

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

    代码:

    #include<stdio.h>
    #define N 11
    int main()
    {
        int sum[N]={10,20,30,40,50,60,70,80,90,100},x,i,y=10,c;
        printf("请输入插入其中的数字:
    ");
        scanf("%d",&x);
        for(i=0;i<N-1;i++)
        {
            if(sum[i]>=x)
            {
                y=i;
                break;
            }
        }
        if(y<10)
        {
             for(i=N;i>y;i--)
            {
                   sum[i]=sum[i-1];
            }
         }
           sum[y]=x;
        for(i=0;i<N;i++)
        {
            printf("%4d
    ",sum[i]);
        } 
        return 0;
    }

    运行结果:

    3.

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

    代码:

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

    运行结果:

    二.知识点总结:

    1.运用define确定数组中元素的个数。

    2.数组不初始化,其元素值为随机数有部分赋了初值,其他部分就会默认是0。

    3.数组变量本身(数组名)不能被复制,它只代表一个地址。

    三.实验总结:

    1.数组下标从第一个零开始。

    2.整形除整形还是整形,不能忘记类型转换

    3.每个数组元素是一个数组类型的变量

  • 相关阅读:
    简易花台制作攻略
    欢迎
    VxWorks操作系统MakeFile(三)
    原创连载:往事
    VxWorks操作系统MakeFile(五)
    致亲爱的板儿的一封信
    VxWorks操作系统MakeFile(二)
    华为NE5000E集群路由器荣获InfoVision奖
    台式机安装黑苹果Mac OS X Snow Leopard 10.6相关资源
    未能加载文件或程序集Office, Version=2.2.0.0, Culture=neutral, PublicKeyToken=null或它的某一个依赖项。找到的程序集清单定义与程序集引用不匹配。 (异常来自 HRESULT:0x80131040)
  • 原文地址:https://www.cnblogs.com/kbx1602/p/6106977.html
Copyright © 2020-2023  润新知