我正在尝试编写一个可以打印这样的代码
-xv
-xvv
-xvvv
-xvvvv
-xvvvvv
-xxv
-xxvv
-xxvvv
-xxvvvv
-xxvvvvv
-xxxv
-xxxvv
-xxxvvv
-xxxvvvv
-xxxvvvvv
3 个“组”之间的额外间距只是为了清楚起见。'-' 的最大个数是 1,'x' 是 3,'v' 是 5,每个符号的个数递增。
要绘制此图,我有以下代码
for (k = 1 ; k <= num_dash ; k++)
{
for (i = 1 ; i <= num_x ; i++)
{
for (j = 1 ; j <= num_v ; j+++)
{
for (k1 = 0 ; k1 < k ; k++)
printf("-");
for (i1 = 0 ; i1 < i ; i++)
printf("x");
for (j1 = 0 ; j1 < j ; j++)
printf("v");
printf("\n");
}
}
}
这是我知道有 3 种不同类型的符号的时候。如果仅在运行时知道符号的数量,是否可以这样做?例如,如果我希望相同的程序也能够打印怎么办
xv
xvv
xvvv
xvvvv
xvvvvv
xxv
xxvv
xxvvv
xxvvvv
xxvvvvv
xxxv
xxxvv
xxxvvv
xxxvvvv
xxxvvvvv
在这种情况下,我的代码只会是
for (i = 1 ; i <= num_x ; i++)
{
for (j = 1 ; j <= num_v ; j+++)
{
for (i1 = 0 ; i1 < i ; i++)
printf("x");
for (j1 = 0 ; j1 < j ; j++)
printf("v");
printf("\n");
}
}
而且只有 2 个 for 循环而不是 3 个。我可以编写代码以使 for 循环的数量发生变化吗?