10.25作业,关于数组的题目

定义一个8*8的矩阵,随机赋值,取值范围1-100,
分别打印四边及两条对角线上元素之和;

int a[64];
    int i = 0, k = 0, sum1= 0, sum2 = 0, sum3 = 0, sum4 = 0, sum5= 0, sum6 = 0, sum7 = 0;
    for (i = 0; i <64; i++)
    {
        a[i] = rand() % 100 + 1;
        printf("%3d ", a[i]);
        if (i % 8 == 7)
        {
            putchar('\n');
        }
        if (i < 8)
        {
            sum1= sum1+ a[i];
        }
        if (i % 8 == 0)
        {
            sum2 = sum2 + a[i];
        }
        if (i % 8 == 7)
        {
            sum3 = sum3 + a[i];
        }
        if (i<64&&i>55)
        {
            sum4 = sum4 + a[i];
        }
        if (i%9 == 0)
        {
            sum5 = sum5 + a[i]; 
        }
        if (i%7==0)
        {
            sum6 = sum6+ a[i];
        }
    }   
printf("矩形上边长元素之和为%d,下边长元素之和为%d,里宽元素之和为%d,外宽元素之和为%d,对角线元素之和分别为%d,%d", sum1, sum4, sum2, sum3, sum5, sum6);


    getchar();

20个学生,语数外三门课.分数随机给,满分100,给三门课分数进行排序.

int i = 0, k = 0;
    int a[60];
    for (i = 0; i < 60; i++)
    {
        a[i] = rand() % 101;
        printf("%3d ", a[i]);
        if (i % 20 ==19)
        {
            putchar('\n');
        }
    }
        for (i = 0; i < 20; i++)
        {
                for (k = i + 1; k < 20; k++)
                    if (a[i] > a[k])
                    {
                        a[i] = a[i] ^ a[k];
                        a[k] = a[i] ^ a[k];
                        a[i] = a[i] ^ a[k];
                    }
                printf("数学%3d ", a[i]);     
        }
        putchar('\n');
        for (i = 20; i < 40; i++)
        {
            for (k = i + 1; k < 40; k++)
                if (a[i] > a[k])
                {
                    a[i] = a[i] ^ a[k];
                    a[k] = a[i] ^ a[k];
                    a[i] = a[i] ^ a[k];
                }
            printf("英语%3d ", a[i]);
        }
        putchar('\n');

        for (i = 40; i < 60; i++)
        {
            for (k = i + 1; k < 60; k++)
                if (a[i] > a[k])
                {
                    a[i] = a[i] ^ a[k];
                    a[k] = a[i] ^ a[k];
                    a[i] = a[i] ^ a[k];
                }
            printf("语文%3d ", a[i]);
        }
    getchar();
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值