A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

#include <stdio.h>
void print(int m,int n,int arr[m][n]){
    for (int i=0; i < m; i++) {
        for (int j = 0; j < n; j++) {
            printf("%d\t",arr[i][j]);
        }
        printf("\n");
    }
   
}
void enter(int m,int n,int arr[m][n]){

  
    for (int i = 0; i < m; i++) {
        
        for (int j = 0; j < n; j++) {
         
            printf("请输入第%d行第%d列的数:\n",i,j);
            
            scanf("%d",&arr[i][j]);
            
            
        }
    }
}

int main(int argc, const char * argv[]) {
   
    int m,n;
   
//    获取的m和n的值要放到主函数里,如果放到自定义函数enter里,当enter函数运行
//    完毕后m和n的值就会被释放导致后面的函数print里m和n没有数值无法运行
    printf("请输入二维数组的行和列,用逗号隔开:\n");
   
    scanf("%d,%d",&m,&n);
//    定义二维数组时m和n的值必须是确定的否则当m和n大于3时是无法正确输入arr[m][n]各元素的值的
     int arr[m][n];
    enter(m, n, arr);
    print(m, n, arr);
    return 0;
}

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马