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

     1. 数组的定义,数组元素的引用,数组的初始化和赋值。

    #include<stdio.h>
    #define N 100
    int main()
    {
        int  score[N] ,i,grade,n,sum=0,max,min,x=0,y=0;
        double ave;
        printf("请输入学生的个数");
        scanf("%d",&n);
        printf("输入成绩:
    ");
        scanf("%d",&grade);
        score[0]=grade;
        sum+=grade;
        max=score[0];
        min=score[0];
        for(i=1;i<n;i++)
        {
            printf("输入成绩:
    ");
            scanf("%d",&grade);
            score[i]=grade;
            sum+=grade;
            if(score[i]>max)
            {
                max=score[i];
                x=i;
            }
            if(score[i]<min)
            {
                min=score[i];
                y=i;
            }        
        }
        ave=(double)sum/n;
        printf("平均数为%.2f,最高分为%d,是第%d个",ave,max,x+1); 
        for(i=x+1;i<n;i++)
        {
            if(score[i]==max)
            printf(",第%d个 ",i+1);
        }
        printf("
    最低分为%d,是第%d个",min,y+1); 
        for(i=y+1;i<n;i++)
        {
            if(score[i]==min)
            printf(",第%d个 ",i+1);
        }
        printf("
    输入一个查询的成绩:
    ");
        scanf("%d",&grade);
        for(i=0;i<n;i++)
        {
            if(score[i]==grade)
            {
                printf(" 第%d个 ",i+1);
            }
        }
        return 0;
    }

     

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

    #include<stdio.h>
    #define N 11
    int main()
    {
        int numbers[N]={1,2,3,4,5,6,7,8,9,10},number,i,n,a=1;
        printf("请输入想插入的数。
    ");
        scanf("%d",&number);
        for(i=0;i<N-1;i++)
        {
            if(number<=numbers[i])
            {
                a=0;
                for(n=N-2;n>=i;n--)
                {
                    numbers[n+1]=numbers[n];
                }
                numbers[i]=number;
                break;
            }
        } 
        if(a)
        {
            numbers[N-1]=number;
        }
        for(i=0;i<N;i++)
        {
            printf(" %d",numbers[i]);
        }
        return 0;
    }

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

    #include<stdio.h>
    int main()
    {
        int a,b,c,gen[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(gen[a]+gen[b]+gen[c]==12&&a+b==c&&a!=b)
            {
                printf("%d+%d=%d
    ",a,b,c);
            }
           }
         return 0;
    }

     二、知识点总结

    1.数组的定义

    (1)一维数组:数据类型 数组名[数组长度]

    (2)引用

           数组必须先定义,后使用

           只能逐个引用数组元素,不能一次引用整个数组

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

           数组元素表示形式:

                  数组名[下标]

                       下标从0开始

                        允许快速随机访问

    2.赋值

            初始化 int a[5]={1,2,3,4,5};相当于a[0]=1;a[1]=2;a[2]=3;a[3]=4;a[4]=5;

                 数组不能初始化,其元素值为随机数

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

                 当全部数组元素赋初始值时,可不指定数组长度

    3.数值变量本身(数组名)不能被赋值

     三、实验总结

    1.整形除整形还是整形,要强制类型转换。

    2.数组的下标是从零开始的

    3.c语言对数组不作越界检查,要注意

  • 相关阅读:
    Aspose.word总结
    表格样式
    Aspose.Words 总结
    mysql主从复制
    WebApi系列~通过HttpClient来调用Web Api接口
    Memcached服务器安装、配置、使用详解
    Jqery之select操作
    Centos7 设置IPtables
    memcached全面剖析--5
    memcached全面剖析--4
  • 原文地址:https://www.cnblogs.com/-lyf/p/6104754.html
Copyright © 2011-2022 走看看