weixin_43573137 2018-11-17 15:53 采纳率: 0%
浏览 640

无法输出矩阵,在赋值时只能赋一个值,请问错在哪里了?

#include
int main()
{
void input_matrix1();
void input_matrix2();
input_matrix1();
input_matrix2();
}
void input_matrix1()
{
int r,c,i,j;
printf("请输入矩阵的行数r:\n");
scanf("r=%d",&r);
printf("请输入矩阵的列数c:\n");
scanf("c=%d",&c);
int a[r][c];
printf("请输入第一个矩阵a:\n");
for(i=1; i<=r; i++)
{
for(j=1; j<=c; j++)
{
scanf("%d",&a[i][j]);
}
}
printf("您输入的矩阵为a=\n");
for(i=1; i<=r; i++)
{
for(j=1; j<=c; j++)
{
printf("%d ",&a[i][j]);
}
if(j>c);
printf("\n");
return;
}
}

void input_matrix2()

{
int r1,c1,i1,j1;
printf("请输入矩阵的行数r1:\n");
scanf("r1=%d",&r1);
printf("请输入矩阵的列数c1:\n");
scanf("c1=%d",&c1);
int b[r1][c1];
printf("请输入第二个矩阵b:\n");
for(i1=1; i1<=r1; i1++)
{
for(j1=1; j1<=c1; j1++)
{
scanf("%d",&b[i1][j1]);
}
}
printf("您输入的矩阵为b=\n");
for(i1=1; i1<=r1; i1++)
{
for(j1=1; j1<=c1; j1++)
{
printf("%d ",&b[i1][j1]);
}
if(j1>c1);
printf("\n");
}
return;
}

  • 写回答

1条回答 默认 最新

  • threenewbee 2018-11-17 16:16
    关注
     你的基础知识太差!
    void input_matrix1()
    {
    int r,c,i,j;
    printf("请输入矩阵的行数r:\n");
    scanf("%d",&r); //scanf不是print,不要加多余的东西
    printf("请输入矩阵的列数c:\n");
    scanf("%d",&c);
    int a[r][c];
    printf("请输入第一个矩阵a:\n");
    fflush(stdin);
    for(i=0; i<r; i++)  //数组下标从0开始
    {
    for(j=0; j<c; j++) 
    {
    scanf("%d", &a[i][j]);
    }
    }
    printf("您输入的矩阵为a=\n");
    for(i=0; i<r; i++) 
    {
    for(j=0; j<c; j++) 
    {
    printf("%d ",a[i][j]); //printf不需要取地址符号
    }
    if(j==c) //这里不需要分号
    printf("\n"); //这里不要return
    }
    }
    

    至于函数是干嘛的,你更是完全不懂。函数是为了代码重复使用用的,你两个代码完全一样(除了变量名),应该合并成一个函数,不同的地方提取为参数。然而你对函数完全一窍不通。

    图片说明

    评论

报告相同问题?

悬赏问题

  • ¥15 安卓adb backup备份应用数据失败
  • ¥15 eclipse运行项目时遇到的问题
  • ¥15 关于#c##的问题:最近需要用CAT工具Trados进行一些开发
  • ¥15 南大pa1 小游戏没有界面,并且报了如下错误,尝试过换显卡驱动,但是好像不行
  • ¥15 没有证书,nginx怎么反向代理到只能接受https的公网网站
  • ¥50 成都蓉城足球俱乐部小程序抢票
  • ¥15 yolov7训练自己的数据集
  • ¥15 esp8266与51单片机连接问题(标签-单片机|关键词-串口)(相关搜索:51单片机|单片机|测试代码)
  • ¥15 电力市场出清matlab yalmip kkt 双层优化问题
  • ¥30 ros小车路径规划实现不了,如何解决?(操作系统-ubuntu)