在C中使用嵌套for循环打印星号图案
此代码用于打印带星号的图案,如下所示 如果输入数字,例如5 然后程序应打印以下图案。它应该按照给定的数字顺序打印*然后递减在C中使用嵌套for循环打印星号图案,c,loops,for-loop,C,Loops,For Loop,此代码用于打印带星号的图案,如下所示 如果输入数字,例如5 然后程序应打印以下图案。它应该按照给定的数字顺序打印*然后递减 ***** **** *** ** * 但它只打印了一行。请告诉我这里有什么毛病 #include<stdio.h> int main() { int lines,lines2; printf("Enter the number of lines : "); scanf("%d",&lines); lines2=l
*****
****
***
**
*
但它只打印了一行。请告诉我这里有什么毛病
#include<stdio.h>
int main()
{
int lines,lines2;
printf("Enter the number of lines : ");
scanf("%d",&lines);
lines2=lines;
for(;lines>0;lines--) {
for(;lines2>0;lines2--){
printf("*");
}
}
printf("\n");
return 0;
}
#包括
int main()
{
int行,lines2;
printf(“输入行数:”);
scanf(“%d”行和“&line”);
lines2=行;
对于(;行>0;行--){
对于(;lines2>0;lines2--){
printf(“*”);
}
}
printf(“\n”);
返回0;
}
您只需在外部循环之前初始化lines2
一次;这就是为什么过了第一行它总是零。您应该每行重置一次,将其指定给行的当前值。这可能就是你想要做的:
for(; lines > 0; --lines) {
for(lines2 = lines; lines2 > 0; --lines2) {
首先:应在两个循环之间放置以下行:
lines2=lines;
Second:以下行应放在外环的{
之前:
printf("\n");
最后的解决办法是:
#include<stdio.h>
int main()
{
int lines,lines2;
printf("Enter the number of lines : ");
scanf("%d",&lines);
for(;lines>0;lines--)
{
lines2=lines;
for(;lines2>0;lines2--)
{
printf("*");
}
printf("\n");
}
return 0;
}
#包括
int main()
{
int行,lines2;
printf(“输入行数:”);
scanf(“%d”行和“&line”);
对于(;行>0;行--)
{
lines2=行;
对于(;lines2>0;lines2--)
{
printf(“*”);
}
printf(“\n”);
}
返回0;
}
看看这个!
它起作用了
#include<stdio.h>
main()
{ int lines,lines2;
printf("Enter the number of lines : ");
scanf("%d",&lines);
lines2=lines;
for(;lines>0;lines--)
{ for(lines2=lines;lines2>0;lines2--)
{ printf("*");
}
printf("\n");
}
}
#包括
main()
{int行,第2行;
printf(“输入行数:”);
scanf(“%d”行和“&line”);
lines2=行;
对于(;行>0;行--)
{for(lines2=行;lines2>0;lines2--)
{printf(“*”);
}
printf(“\n”);
}
}
您刚刚更改了一些行的位置。您需要将换行符放入第一个循环:
int main() {
int lines,lines2;
printf("Enter the number of lines : ");
scanf("%d", &lines);
for(;lines>0;lines--) {
lines2=lines;
for(;lines2>0;lines2--){
printf("*");
}
printf("\n");
}
return 0;
}
有时,在调试程序时,尽可能使所有内容都可见是很有用的。可能很难看到输出中换行符的位置。在测试时,尝试打印一个可见字符,如“!”而不是“\n”,可能会有所帮助。答案至少应包含格式正确的代码。请输入您的答案。
int main() {
int lines,lines2;
printf("Enter the number of lines : ");
scanf("%d", &lines);
for(;lines>0;lines--) {
lines2=lines;
for(;lines2>0;lines2--){
printf("*");
}
printf("\n");
}
return 0;
}