m0_67892778 2022-04-21 11:33 采纳率: 100%
浏览 76
已结题

编程实现,已有NXM的矩阵,对矩阵的全部元素做如下变换,若该数是素数则置0,否则置1。输出变换后的矩阵

编程实现,已有NXM的矩阵,对矩阵的全部元素做如下变换,若该数是素数则置0,否则置1。输出变换后的矩阵

  • 写回答

2条回答 默认 最新

  • 列宁格勒的街头 2022-04-21 23:40
    关注
    
    #include<stdio.h>
    
    int main()
    {
        int arr[500][500] = { 0 };
    
        int n = 0;
        int m = 0;
        int i = 0;
        int j = 0;
        scanf("%d%d", &n, &m);
        for (i = 0; i < n; ++i)
        {
            for (j = 0; j < m; ++j)
            {
                scanf("%d", &arr[i][j]);
            }
        }
    
        for (i = 0; i < n; ++i)
        {
            for (j = 0; j < m; ++j)
            {
                //判断是否是素数
                if (arr[i][j] == 0 || arr[i][j] == 1 || arr[i][j] == 2)
                {
                    arr[i][j] = 1;
                }
                int num = 0;
                for (num = 2; num < arr[i][j]; ++num)
                {
                    if (arr[i][j] % num == 0)
                    {
                        arr[i][j] = 1;
                    }
                    else
                    {
                        arr[i][j] = 0;
                    }
                }
            }
    
        }
    
        for (i = 0; i < n; ++i)
        {
            for (j = 0; j < m; ++j)
            {
                printf("%d ", arr[i][j]);
            }
            printf("\n");
        }
    
        return 0;
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 4月30日
  • 已采纳回答 4月22日
  • 创建了问题 4月21日