zoukankan      html  css  js  c++  java
  • 第八次实验

    一、实验内容

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

    代码:

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

    程序运行结果:

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

    代码:

    # include <stdio.h>
    int main()
    {
        int a,i,n;
        int num[10]={6,18,28,39,48,56,67,78,89};
        printf("请输入一个正整数
    ");
        scanf("%d",&a);
        for(i=0;i<9;i++)
        {
            if(a<=num[i+1]&&a>num[i])
            {
                for(n=10;n>=i;n--)
                {
                    num[n]=num[n-1];
                }
                num[i+1]=a;
            }
            else if(num[0]>a)
            {
                num[0]=a;
            }
            else if(num[8]<a)
            {
                num[9]=a;
            }
            printf("%d ",num[i]);
        }
        return 0;
     } 

    程序运行结果:

    3、实验要求:

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

    程序运行结果:

    二、知识点总结

    1. 数组的基本格式 :数组类型    数组名称  【数组长度】
    2. 数组中如果少于数组长度,则其它未写出的数据为0
    3. 数据的下标从0开始
    4. 数组必须先定义,再使用

    三、实验总结

    1. 在第二个实验中会出现数据重叠的问题,在内层循环中要让数组中的前一个值赋给后一个值
    2. 在for后面不能加分号,否则会出现越界问题
  • 相关阅读:
    c++ stl中的二分查找
    2015年---移动端webapp知识总结
    移动端网站优化指南-WAP篇
    ASO优化总结(基于网络分享的知识总结归纳)
    验证数字的正则表达式集
    个人的浏览器重置样式表(总结)
    微信或移动端网页的meta
    移动端字体和字体大小规范
    min-device-pixel-ratio
    Emmet语法实例(帮助快速开发)
  • 原文地址:https://www.cnblogs.com/1997zjx/p/6093407.html
Copyright © 2011-2022 走看看