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

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

    #include <stdio.h>
    #define N 40
    int main()
    {
        int i,f,sum,score[N],max,index1,min,index2,found;
        double average;
        printf("请输入人数:
    ");
        scanf("%d",&f); 
        sum=0;
        for(i=0;i<f;i++)
        {
            printf("请输入成绩
    ");
            scanf("%d",&score[i]);
            if(score[i]<0)
            {
                break;
            }
            else if(score[i]>0) 
            { 
            sum=sum+score[i];
            }    
        }
        average=(double)sum/i;
        printf("sum=%d,average=%.2f
    ",sum,average);
        max=score[0];
        index1=0;
        for(i=0;i<f;i++)
        {
            if(score[i]>max)
            {
                max=score[i];
                index1=i;
            }    
        }
        printf("max=%d,index1=%d
    ",max,index1+1);
        min=score[1];
        index2=0;
        for(i=0;i<f;i++)
        {
            if(score[i]<min)
            {
            min=score[i];
            index2=i;
            }  
        }
        printf("min=%d,index2=%d
    ",min,index2+1);
        printf("请输入成绩
    ");
        scanf("%d",&found);
        for(i=0;i<f;i++)
        {    
            if(score[i]==found)
            {
                found=i;
                printf("found=%d",i+1);
                break;
            }
        } 
        return 0;
    }

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

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

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

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

     知识点总结:

    1 数组要先定义才能使用!

    2 数组定义方式为:数据类型 数组名 【数组长度】!

    3 数组一旦创建,不能改变大小!

    4 只能逐个引用数组元素!

    5 下标值超过数组长度时可能会导致程序崩溃!

    6 数组若不初始化,其元素值为随机数!

    实验总结:

    1 定义变量后在VC6.0中要赋初始值!

    2 数组元素更换顺序应从后往前!

    3 数组中元素值不赋初始值的话,初始值默认为0!

  • 相关阅读:
    霍夫直线检测进行复杂环境的树干提取
    matlab工具箱之人眼检测+meanshift跟踪算法--人眼跟踪
    deep learning 练习 牛顿法完成逻辑回归
    deep learning 练习 多变量线性回归
    deep learning 练习1 线性回归练习
    关于移动端键盘弹出
    关于Redux
    docker registry的CI规划
    建立自己的私有docker(ssl&login auth)
    逻辑编程
  • 原文地址:https://www.cnblogs.com/5267wss/p/6092353.html
Copyright © 2011-2022 走看看