我的问题已修复,谢谢你!
所以我正在研究一个我认为应该用C编写的学校项目,但事实证明我必须在java中完成它,现在我设法让它以某种方式工作,但结果我是得到的不是我想要的。如果有人可以看看并告诉我为什么结果是错误的,将不胜感激!
我的Java代码:
public static void printMatrix(int p[][], int n){
int i, j;
for ( i=0;i<n;i++){
for (j=0;j<3;j++){
if (p[i][j]==0) System.out.println(".\t");
else System.out.println(p[i][j]+"\t");
}
}
System.out.println("-------------------");
}
我正在使用的C代码:
void printMatrix(int **p, int n){
int i, j;
printf("\n\n");
for (i=0 ; i<n ; i++){
for (j=0 ; j<3 ; j++){
if (p[i][j] == 0) printf(".\t");
else printf("%d\t", p[i][j]);
}
printf("\n");
}
printf("-------------------");
}
我得到的结果:
1
1
.
2
2
.
3
3
.
-------------------
我正在寻找的结果:
1 . .
2 . .
3 . .
-------------------
答案 0 :(得分:2)
print()
和println()
是不同的方法:println()
添加换行符。
public static void printMatrix(int p[][], int n){
for (int i = 0; i < n; i++){
for (int j = 0; j < 3; j++){
if (p[i][j] == 0)
System.out.print(".\t");
else
System.out.print(p[i][j]+"\t");
}
System.out.println();
}
System.out.println("-------------------");
}
答案 1 :(得分:2)
System.out.println(str)
在str
之后打印换行符。请改用System.out.print(str)
。