打印数组的右上三角部分(C)

复制代码
/* 计算数组  比如[1,2,3,4]
                [2,3,4,5]
                [2,1,3,4]
                [1,2,3,4]
            让这个数组的右上三角的元素乘以一个数
            变成[1*a,   2*a,   3*a,    4*a]
                [2,     3*a,   4*a,    5*a]
                [2,     1,     3*a,    4*a]
                [1,     2,      3,     4*a]
*/
#include<stdio.h>
#include<stdlib.h>
#define N 5

// multiply a number
void fun(int (*a)[N], int m)
{
    for(int i=0;i<N;i++)
    {
        for(int j=N-1;j>=i;j--)
        {
            a[i][j] *= m;
        }
    }
}

// print the array
void printFunction(int (*a)[N])
{
    for(int i=0;i<N;i++)
    {
        for(int j=0;j<N;j++)
        {
            printf("%4d",a[i][j]);
        }
        printf("\n");
    }

}

int main()
{
    int a[N][N], m , i, j;
    for(i=0; i<N;i++)
    {
        for(j=0;j<N;j++)
        {
            a[i][j] = rand()%20;
            printf("%4d",a[i][j]);   
        }
    printf("\n");
    }
    printf("\n");
    m = rand()%4;
    fun(a,m);
    printFunction(a);
    return 0;
}

//conclusion  结合九九乘法表的各种打印方式来理解
复制代码

 

posted @   看星星的派大星  阅读(501)  评论(0编辑  收藏  举报
编辑推荐:
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
点击右上角即可分享
微信分享提示