singapore vermicelli:c语言编程的结果如何换行
1*1=1
1*2=2 2*2=4
1*3=3 2*3=6 3*3=9
.............................
#include"stdio.h"
#define A result
main()
{
int i,j,A;
printf("乘法口诀\n");
for(i=1;i<10;i++)
{for(j=1;j<10;j++)
{A=i*j;
printf("%d*%d=%d\n",i,j,A);
}
}
}
1楼的结果显然与我要求的不符合,我要输出的是三角形的乘法口诀表,而你给的只是简单的分段
你的宏定义没有任何意义。上面的程序打出来是个矩阵,不符合要求。我把第二个循环做了一下修改。
#include<stdio.h>
main()
{
int i,j,A;
printf("乘法口诀\n");
for(i=1;i<10;i++)
{for(j=1;j<=i;j++)
{
A=i*j;
printf("%d*%d=%d\t",j,i,A);
}
putchar('\n');
}
}
这是你想要左对齐三角形:
#include <stdio.h>
void main(){
int i, j;
for(i = 1; i<10; i++){
for(j = 1; j<=i; j++){
printf("%d×%d=%-4d", i, j, i*j);
}
printf("\n");
}
}
这个是比较好看的等边三角形:
#include <stdio.h>
void main(){
// space表示每一行初始空格数
// 因为第9行初始空格数为0,所以用4*(9-1) = 4*8
int i, j, k, space = 4*8;
for(i = 1; i<10; i++){
for(k = 0; k<space; k++){
printf(" ");
}
space -= 4;
for(j = 1; j<=i; j++){
printf("%d×%d=%-4d", i, j, i*j);
}
printf("\n");
}
}
C语言中有专门的换行命令控制符,就是“\n”,比如:
一个字符串"string outcmd";你想输出两行,每行一个词,那么可以这样处理
char *s1="string",*s2="outcmd";
printf("%s",s1);
printf("\n");
printf("%s",s2);
#include"stdio.h"
#define A result
main()
{
int i,j,A;
printf("乘法口诀\n");
for(i=1;i<10;i++)
{for(j=1;j<10;j++)
{A=i*j;
printf("%d*%d=%d\n",i,j,A);
}
printf("\n");
}
}
输入
printf ("\n");
其中\n表示换行