#include <stdio.h>
int main
{
int a[3][3],*p;
int i,j,t;
p=a[0];
printf("Input 3*3 matrix:\n");
for(i=0;i<3;i++)
scanf("%d%d%d ",p+i*3+0,p+i*3+1,p+i*3+2);
for(i=0;i<3;i++)
//{
for(j=i;j<3;j++)
{
t=p[i*3+j];
p[i*3+j]=p[j*3+i];
p[j*3+i]=t;
}
//}
printf("Transposition Matrix:\n");
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
//{
printf("%d",*(p+i*3+j));
//}
printf("\n");
}
}
二维数组,没有报错,输不出结果
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
2条回答 默认 最新
- qzjhjxj 2022-03-04 10:34关注
main后面缺(), scanf("%d%d%d ",p+i3+0,p+i3+1,p+i*3+2); %d 后面多了‘ ‘空格,修改见注释,供参考:
#include <stdio.h> int main() //int main 修改 { int a[3][3],*p; int i,j,t; p = a[0]; printf("Input 3*3 matrix:\n"); for (i = 0; i < 3; i++) scanf("%d%d%d",p + i * 3 + 0,p + i * 3 + 1,p + i * 3 + 2); //scanf("%d%d%d ",p + i * 3 + 0,p + i * 3 + 1,p + i * 3 + 2); 修改 for (i = 0; i < 3; i++) //{ for (j = i; j < 3; j++) { t = p[i * 3 + j]; p[i * 3 + j] = p[j * 3 + i]; p[j * 3 + i] = t; } //} printf("Transposition Matrix:\n"); for (i = 0; i < 3; i++) { for (j = 0; j < 3; j++) //{ printf("%d ",*(p + i * 3 + j)); //修改 printf("%d",*(p + i * 3 + j)); //} printf("\n"); } return 0; }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 1无用
悬赏问题
- ¥15 数据量少可以用MK趋势分析吗
- ¥15 使用VH6501干扰RTR位,CANoe上显示的错误帧不足32个就进入bus off快慢恢复,为什么?
- ¥15 大智慧怎么编写一个选股程序
- ¥100 python 调用 cgps 命令获取 实时位置信息
- ¥15 两台交换机分别是trunk接口和access接口为何无法通信,通信过程是如何?
- ¥15 C语言使用vscode编码错误
- ¥15 用KSV5转成本时,如何不生成那笔中间凭证
- ¥20 ensp怎么配置让PC1和PC2通讯上
- ¥50 有没有适合匹配类似图中的运动规律的图像处理算法
- ¥15 dnat基础问题,本机发出,别人返回的包,不能命中