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

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

    #include <stdio.h>
    int main()
    {
        int i,score[i],n,max,min,sum=0,insearch,grade;
        double average;
        printf("请输入要统计的学生人数:
    ");
        scanf("%d",&n);
        //平均值 
        for(i=0;i<n;i++)
        {
            printf("请输入学生成绩:
    ");
            scanf("%d",&score[i]);
            sum+=score[i];
        }
        average=(double)sum/n;
        printf("平均值为%.2lf
    ",average);
        //最大值
        insearch=0;
        max=score[0];
        for(i=1;i<n;i++)
        {
            if(score[i]>max)    
            {
                max=score[i];
                insearch=i;
            }
        } 
        printf("最高分为%d,该学生为第%d号
    ",max,++insearch);
        //最小值 
        insearch=0;
        min=score[0];
        for(i=1;i<n;i++)
        {
            if(score[i]<min)    
            {
                min=score[i];
                insearch=i;
            }
        } 
        printf("最低分为%d,该学生为第%d号
    ",min,++insearch);
        //寻找
        printf("输入你要找的分数:
    ");
        scanf("%d",&grade); 
        for(i=0;i<n;i++)
        {
            if(grade==score[i])
            {
                insearch=i+1;
            }
        }
        printf("该学生的学号为%d",insearch);
        return 0;
    }

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

    #include <stdio.h>
    #define N 11
    int main()
    {
        int num[N]={1,12,23,34,45,56,67,78,89,90},x,i,m;
        printf("请输入一个数:
    ");
        scanf("%d",&x);
        for(i=0;i<=9;i++)
        {
            if(num[i]>x)
            {
                for(m=10;m>i;m--)
                {
                    num[m]=num[m-1];
                }
                break;
            }
        }
        num[i]=x;
        for(i=0;i<N;i++)
        {
            printf("%d ",num[i]);
        }
        return 0; 
    }

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

    #include <stdio.h>
    int main()
    {
        int i1,i2,i3,n=0;
        int match[10]={6,2,5,5,4,5,6,3,7,6};
        for(i1=0;i1<=9;i1++)
        {
            for(i2=0;i2<=9;i2++)
            {
                for(i3=0;i3<=9;i3++)
                {
                    if(i1+i2==i3&&match[i1]+match[i2]+match[i3]==12)
                    {
                        printf("%d+%d=%d
    ",i1,i2,i3);
                        n++;
                    }
                }
            }
        }
        printf("一共有%d个",n);
        return 0;
    }

    附加题: 输入一行任意长的数字,用数组元素作为计数器统计每个数字出现的次数。用下标为0的元素统计0出现的次数,用下标为1的元素统计1出现的次数…

    #include <stdio.h>
    int main()
    {
        int num[10]={0,0,0,0,0,0,0,0,0,0},i=0;
        char x;
        printf("输入一串数字:
    ");
        scanf("%c",&x);
        while(x!='
    ')
        {
            i=x-48;
            num[i]++;
            scanf("%c",&x);
        }
        for(i=0;i<10;i++)
        {
            printf("数字 %d 出现了%d次
    ",i,num[i]);
        } 
        return 0;
    } 

    知识点总结:

    1:数组下标从0开始,到下标减一结束。

    2.数组离不开循环,让数组里的元素全部输出必须借助循环。

    3:数组引用一次,只能引用数组中的一个数据。

    4:一个数组中的数据类型一致。

    5:数组必须先定义。若未声明则初始值为随机数或者零(视编译器而定)。

    实验总结:

    1:自定义变量的拼写。。。

    2:只给部分数组的数据赋值时,格式为  sum【n】={1,2,3,4,5,6,7.......},特别是等号,不能丢。

    3:循环限制条件的不同,可能会影响整个程序的结构,进而影响程序的简洁性。有可能会让它简单,也可能会麻烦。

    4、#define语句后面不能加  ;   

  • 相关阅读:
    配置navigation bar外观
    加急审核
    UIButton中setTitleEdgeInsets和setImageEdgeInsets的使用
    打开某个好友的聊天界面
    ALAssets的两种用法
    更改appstore开发商名字
    回调函数的使用
    相应字体所占的位置大小
    IOS的变量前加extern和static字段
    iOS开发代码规范(通用)
  • 原文地址:https://www.cnblogs.com/yanchao980817/p/6091324.html
Copyright © 2011-2022 走看看