实验 6 数组1

//输入n个整数,将它们存入数组a中。输出最大值和它所对应的下标。
#include<stdio.h>
int main(void)
{
    int n,i,x;
    int a[10];
    x=0;
    printf("enter n:");
    scanf("%d",&n);
    for(i=0;i<n;i++){
        printf("enter :");
        scanf("%d",&a[i]);
    }
    //比较最大的数组
    for(i=1;i<n;i++){
        if(a[i]>a[x]){
            x=i;
        }
    }
    printf("最大值%d,下标%d",a[x],x);
    return 0;
}

 

//输入n个整数,存入数组a中,分别按正序和逆序输出这些数;

#include<stdio.h>
int main(void)
{
    int i,n;int a[10];
    printf("输入n:");
    scanf("%d",&n);
    for(i=0;i<n;i++){
        printf("enter a:");
        scanf("%d",&a[i]);
    }
    //正序输出;
    for(i=0;i<n;i++){
        printf("数组元素a[%d],元素值%d
",i,a[i]);
    }
    printf("
");
    //逆序输出;
    for(i=n-1;i>=0;i--){
        printf("数组元素a[%d],元素值%d
",i,a[i]);
    }
    return 0;
}

 

//设计一个程序,利用二维数组输出3x2矩阵
#include<stdio.h>
int main(void)
{
    int i,j;
    int a[3][2];
    //输入矩阵;
    for(i=0;i<3;i++){
        for(j=0;j<2;j++){
            printf("enter a:");
            scanf("%d",&a[i][j]);
        }
    }
    //输出矩阵;
    for(i=0;i<3;i++){
        for(j=0;j<2;j++){
            printf("%4d",a[i][j]);
        }
        printf("
");
    }
    return 0;
}

 

//定义一维数组arr,他有5个双精度浮点型元素,任意输入5个后,用冒泡排序法,由大到小排序并输出
#include<stdio.h>
int main(void)
{
    double arr[5];
    int i,j;
    double x;
    //输入数组
    printf("请输入5个实数:
");
    for(i=0;i<5;i++){
        scanf("%lf",&arr[i]);
    }
    //冒泡排序
    for(i=0;i<5;i++){
        for(j=0;j<5-i;j++){
            if(arr[j]<arr[j+1]){
                x=arr[j+1];
                arr[j+1]=arr[j];
                arr[j]=x;
            }
        }
    }
    //输出数组
    for(i=0;i<5;i++){
        printf("%lf
",arr[i]);
    }
    return 0;
}

//定义一个3×3的整形二维数组arr,为数组各元素赋值,找出最小值以及它的行下标和列下标,并输出该矩阵
#include<stdio.h>
int main(void)
{
    int arr[3][3];
    int i,j,x,y;
    //输入矩阵;
    for(i=0;i<3;i++){
        for(j=0;j<3;j++){
            printf("输入数组arr各元素值:
");
            scanf("%d",&arr[i][j]);
        }
    }
    x=y=0;
    //求出最小值;
    for(i=0;i<3;i++){
        for(j=0;j<3;j++){
            if(arr[i][j]<arr
                [x][y]){
                x=i;
                y=j;
            }
        }
    }
    //输出矩阵
    for(i=0;i<3;i++){
        for(j=0;j<3;j++){
            printf("%4d",arr[i][j]);
        }
        printf("
");
    }
    printf("第%d行%d列最小值是%d
",x,y,arr[x][y]);
    return 0;
}

原文地址:https://www.cnblogs.com/xuqiongxiang/p/3391708.html