m0_63873455 2021-11-18 15:38 采纳率: 0%
浏览 22

希望能得到答复,c语言的4道题

用c语言编写下列程序:

  1. 定义MxN的矩阵,
    1)对该矩阵进行转置,然后输出
    2)保留该矩阵的右上三角进行输出
    3)保留该矩阵的左下三角进行输出
  2. 输入M1xN1的矩阵A,和M2xN2的矩阵B
    1)计算A X B, 并输出 (注意两个人矩阵不可乘的异常处理)
  3. 定义一个2x5x8的三维数组:
    1) 按存放的地址顺序遍历该数组并打印
    2)按存放的逆地址顺序遍历该数组并打印
    3)计算平均值、最大值、最小值并打印
  4. 定义字符数组S,通过gets输入一行任意的字符串,
    1)请计算字符串长度,以及sizeof(S),并打印输出
    2)请把该字符串按照ASCII码重新排序,并输出
    3)请输入一个字串,并在该字符串中查询它的位置。注:如果找不到,输出位置为-1
  • 写回答

1条回答 默认 最新

  • 关注
    
    #include <stdio.h>
    /*
        2、将二维数组int a[3][3]的行列转换后输出,如:
        1(0,0)    2(0,1)    3(0,2)    输出成:        1(0,0)    4(0,1)    7(0,2)
        4(1,0)    5(1,1)    6(1,2)                    2(1,0)    5(1,1)    8(1,2)
        7(2,0)    8(2,1)    9(2,2)                    3(2,0)    6(2,1)    9(2,2)
    */ 
    void main6(){
        int i,j;
        int a[3][3]={
            {1,2,3},
            {4,5,6},
            {7,8,9}
        };
        for(i=0;i<3;i++){
            printf("%d\t%d\t%d\n",a[i][0],a[i][1],a[i][2]);
        }
        int t;//临时变量 
        //转换
        for(i=0;i<3;i++){
            for(j=0;j<i;j++){ //对角线下面部分与对角线上面部分数据进行交换 
                t = a[i][j];
                a[i][j]=a[j][i];
                a[j][i]=t;
            }
        } 
        printf("置换后的结果如下:\n"); 
        for(i=0;i<3;i++){
            printf("%d\t%d\t%d\n",a[i][0],a[i][1],a[i][2]);
        }
    } 
    
    
    评论

报告相同问题?

问题事件

  • 创建了问题 11月18日