第八次作业

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

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

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

#include<stdio.h>
int main()
{
    int xu[10]={3,5,7,9,11,13,15,17,19},a,i,l,y;
    printf("输入一个数");
    scanf("%d",&a);
    for(i=0;i<10;i++)
    {
        if(a>=xu[8])
        {
            xu[9]=a;
            break;
        }
        if(a<xu[i])
        {
           for(l=9;l>i;l--)
            {
                xu[l]=xu[l-1];
             }
        xu[i]=a;
        break;
        }
    }
    for(y=0;y<10;y++)
    {
        printf("%d ",xu[y]);
    }
    return 0; 
}

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

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

知识点总结:

1.数组的特点:数组中的每一个元素都属于同一种数据类型;数组一旦创建,不能改变大小;数组中的元素在内存中是连续依次排列的。

2.一维数组的引用:数组必须先定义,后使用;只能逐个引用数组元素,不能一次引用整个数组;每个数组元素是一个数组类型的变量。

3.一维数组的赋值:数组不初始化,其元素值为随机数;只给部分数组元素赋初值,则其后的元素被初始化为0;当全部数组元素赋初值时,可不指定数组长度。

实验总结:1.数组名【 】,【】中不能为变量

     2.数组下标从0开始

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

     

posted on 2016-11-25 20:26  王佳明  阅读(146)  评论(1编辑  收藏  举报

导航