动态分配的二维数组以矩阵形式输出

july哈哈哈 2013-11-14 07:16:50
麻烦帮我看下为什么这样不能以矩阵形式输出啊
/*#include <stdio.h>
#include <stdlib.h>
void main()
{
int n,i=0,j=0;
int **p;
printf("?????????:");
scanf("%d", &n);
p = (int**)calloc(n, sizeof(int*));


for (i = 0; i < n; i++)
{
p[i] = (int*)calloc(n + 1, sizeof(int));


for (j = 0; j < n; j++)
{
scanf("%d", &p[i][j]);

p[i][n] += p[i][j];
}
}

for (i = 0; i < n; i++)
{
for (j = 0; j < n+1 ; j++)
{
printf("%d ", p[i][j]);
}
}
}
...全文
340 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
max_min_ 2013-11-15
  • 打赏
  • 举报
回复
引用 3 楼 lushangqiushui 的回复:
看到上边的人已经恢复得很完全了,要形成矩阵形式,至少要有相应的换行操作,还有,for (j = 0; j < n+1 ; j++),j的范围超了,竟然不发生越界错误。。。挺神奇的
他第二次分配内存空间的时候也有+1操作,所以不会
紫火桑葚 2013-11-15
  • 打赏
  • 举报
回复
看到上边的人已经恢复得很完全了,要形成矩阵形式,至少要有相应的换行操作,还有,for (j = 0; j < n+1 ; j++),j的范围超了,竟然不发生越界错误。。。挺神奇的
图灵狗 2013-11-14
  • 打赏
  • 举报
回复

#include <stdio.h>
#include <stdlib.h>

int main(int argc, char* argv[])
{
int n,i=0,j=0;
int **p;
printf("?????????:");
scanf("%d", &n);
p = (int**)calloc(n, sizeof(int*));
 
  
for (i = 0; i < n; i++)
{
    p[i] = (int*)calloc(n + 1, sizeof(int)); 
 
          
    for (j = 0; j < n; j++) 
    {
        scanf("%d", &p[i][j]); 
          
        p[i][n] += p[i][j]; 
    }
}
  
for (i = 0; i < n; i++)
{
    for (j = 0; j < n; j++)
    {
        printf("%d ", p[i][j]);
    }
    printf("\n");
}

return 0;
}
引用 楼主 dutou33 的回复:
麻烦帮我看下为什么这样不能以矩阵形式输出啊
/*#include <stdio.h>
#include <stdlib.h>
void main()
{
int n,i=0,j=0;
int **p;
printf("?????????:");
scanf("%d", &n);
p = (int**)calloc(n, sizeof(int*));

 
for (i = 0; i < n; i++)
{
    p[i] = (int*)calloc(n + 1, sizeof(int)); 

         
    for (j = 0; j < n; j++) 
    {
        scanf("%d", &p[i][j]); 
         
        p[i][n] += p[i][j]; 
    }
}
 
for (i = 0; i < n; i++)
{
    for (j = 0; j < n+1 ; j++)
    {
        printf("%d ", p[i][j]);
    }
}
}
max_min_ 2013-11-14
  • 打赏
  • 举报
回复

for (i = 0; i < n; i++) 
{
     for (j = 0; j < n+1 ; j++)
     {
         printf("%d ", p[i][j]);
     }
     printf("\n");   //这里必须要个的换行符呢!
}  // 还有每次输入数据的时候,后面加个getchar()函数,吃掉每次输入的回车符!

33,321

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 新手乐园
社区管理员
  • 新手乐园社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧