我正在尝试制作V形。它几乎是完美的,但是我无法通过最后更改变量l和r来更改需要打印的空间量。我是编程新手,我的智慧到此为止。它应该在逻辑上起作用,对吧?
#include<stdio.h>
int main(){
int l=0,r=17,y=9,x=0,z=0;
for(z=0;z<y;z++){
for(x=0;x<l;x++){
printf(" "); //first space
}
printf("****");
for(x=0;x<r;x++){
printf(" "); //second space
}
printf("****");
printf("\n");
l+1;
r-2;
}
}
答案 0 :(得分:2)
线条
l+1;
r-2;
不更改l和r的值。
应该是
l = l + 1;
r = r - 2;
或
l += 1;
r -= 2;
答案 1 :(得分:0)
您即将解决此问题。您的错误在这里:
l+1;
r-2;
考虑一下当您使用+
或-
之类的操作时会发生什么...结果将到达何处?
答案 2 :(得分:0)
l+1;
r-2;
都应该是:
l+=1;
r-=2;
在这里对脚本进行一些修改:
#include <stdio.h>
// v-shape
// gcc -Os -Wall -o 53505746 53505746.c
int main() {
int l = 0;
int r = 17;
int y = 9;
int x = 0;
int z = 0;
for (z=0; z<y; z++) {
for (x=0; x<l; x++) {
printf(" "); // first space
}
printf("****");
for (x=0; x<r; x++) {
printf(" "); // second space
}
printf("****");
printf("\n");
l += 1;
r -= 2;
}
return 0;
}