今天做了一道题,关于左右对齐的
题目如下:
下面是一个完整的下三角九九口诀表:
1*1=1 1*2=2 2*2=4 1*3=3 2*3=6 3*3=9 1*4=4 2*4=8 3*4=12 4*4=16 1*5=5 2*5=10 3*5=15 4*5=20 5*5=25 1*6=6 2*6=12 3*6=18 4*6=24 5*6=30 6*6=36 1*7=7 2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49 1*8=8 2*8=16 3*8=24 4*8=32 5*8=40 6*8=48 7*8=56 8*8=64 1*9=9 2*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63 8*9=72 9*9=81
本题要求对任意给定的一位正整数N,输出从1*1到N*N的部分口诀表。
输入格式:
输入在一行中给出一个正整数N(1≤N≤9)。
输出格式:
输出下三角N*N部分口诀表,其中等号右边数字占4位、左对齐。
输入样例:
4
结尾无空行
输出样例:
1*1=1
1*2=2 2*2=4
1*3=3 2*3=6 3*3=9
1*4=4 2*4=8 3*4=12 4*4=16
结尾无空行
这题要求左对齐,我查到两种方法,一种是C语言,最为简单
#includeint main() { int n; scanf("%d",&n); for(int i=1;i<=n;i++) { if(i!=1) printf("n"); for(int j=1;j<=i;j++) { printf("%d*%d=%-4d",j,i,i*j); } } return 0; }
这里用printf("-4d",i*j),4就代表4个空格,如果数字长度小于4就会自动在后面补上空格。
如果是右对齐的话就用printf("4d",i*j)。
C++的话要用到setw函数,稍微复杂一些,但也不难理解。
#include#include using namespace std; int main() { int n; cin>>n; int i,j,k,t; for(i=1;i<=n;i++) { if(i!=1) cout< 头文件加上#include
然后用cout<
如果右对齐的话就把left换成right,或者直接把setiosflags(ios::left)删掉也可以



