zoukankan      html  css  js  c++  java
  • 第八次作业

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

    # include<stdio.h>
    # define N 100
    int main()
    {
        int a,b=0,c=0,d,e=0,sum=0,max,min,i;
        double average;
        int score[N];
        printf("请输入学生人数");
        scanf("%d",&a);
        for(i=0;i<a;i++)
        {
            printf("请输入学生成绩");
            scanf("%d",&score[i]);
            sum=sum+score[i];
        }
        average=(double)sum/a;
        printf("平均数为%.2f
    ",average);
        max=score[0];
        min=score[0];
        for(i=0;i<a;i++)
        {
            
          if(score[i]>=max)
            {
                b=i+1;
            }
        }
        for(i=0;i<a;i++)
        {
            if(score[i]<=min)
            {
                c=i+1;
            }
        }
        printf("最大分数的学生为%d",b);
        printf("最小分数的学生为%d",c);
        printf("输入一个分数,输出他是第几个");
        scanf("%d",&d);
            for(i=0;i<a;i++)
           {
             
              if(score[i]==d)
            {
    e=i+1; printf(
    "他是第%d个学生",e); } } return 0; }

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

    #include <stdio.h>
    #define N 10
    int main()
    {
        int a,b,c,i;
        int num[N]={1,3,5,7,9,11,13,15,17};
        printf("请输入一个数,将其插入数据中");
        scanf("%d",&a);
        for(i=0;i<N;i++)
        {
            if(a<=num[i])
            {
                    b=i;
                    printf("%d",b);
                    break;
            }
            if(a>num[N-1])
            {
                num[N-1]=a;
            }
        }
            for(i=b,c=N-1;i<c;c--)
            {
                num[c]=num[c-1];
            }
            num[b]=a;
            for(i=0;i<N;i=i+1)
            {
                printf("%d ",num[i]);
            }
        return 0;
    }

     

    3.用数组实现火柴棍等式

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

     知识点总结:元素应该是同种数据类型,元素在内存中是连续依次排列的;

                     在定义数组的同时对数组元素赋以初值,元素不初始化,其元素值为随机数;只给部分数组元素赋初值,其后                    元素被初始化为0。

    实验总结:数组的下标是从0开始的;

                  整型除以整型还是整型,所以需要进行强制转化;

                  记得写“&”

  • 相关阅读:
    B/S 和 C/S
    SQL 注入
    软件测试
    Spring的注解方式
    测试开发题目
    策略模式
    设计模式
    单例模式
    读写文件
    对List里的对象元素进行排序
  • 原文地址:https://www.cnblogs.com/zpl0120/p/6106062.html
Copyright © 2011-2022 走看看