求C语言循环结构程序,输出以下图案!!!!!!!!!!!!!!!!!!

*
***
*****
*******

我看了下一楼写的那个,好象不怎么好,我又帮你写好一个,你看下,看你的手笔,应该是刚学C语言吧,推荐你进个群吧,这个群针对C初学者,和已经入门的人,群号是97286391。
下面是代码,你看下,程序 挺简单的,我就没有写注释 了,以后要是有什么问题,就群里聊吧。呵呵,但愿我的回答能让你满意
#include<stdio.h>

void main()
{
int row=0,j=0,num=1;
printf("输入要打印的行数:");
scanf("%d",&row);

for(int i=0;i<row;i++)
{
for(;j<row;j++)
printf(" ");
j=i+1;

for(int n=0;n<num;n++)
printf("*");
num=num+2;
printf("\n");
}
}
温馨提示:内容为网友见解,仅供参考
第1个回答  2010-04-13
首先跟你讲一下这道题的算法:
1.记i为行变量;控制行数;
2.记j为输出空格的变量;
3.记k为输出*的变量;
4.算法是:第一行空格数j=4-i;*号数k=2*i-1;然后通过循环来输出*号;
一般初学者容易犯的错误是,不用循环输出*而是用一个输出,认为j为几就有几个*号输出;一定要注意啊!
一下是程序的代码:
#include<stdio.h>
#define N 20
void main()
{
int i,j,k;
for(i=1;i<=4;i++)
{
for(j=0;j<4-i+N;j++)
putchar(' ');
for(k=1;k<=2*i-1;k++)
putchar('*');
putchar('\n');
}
}
第2个回答  2010-04-16
这是一个菱形的题吧!!!呵呵...只要把行循环四次就够了。如下,不妨再做一下菱形的编程。

#include <stdio.h>
void main()
{
int i,j,k;
for(i=0;i<=3;i++)
{
for(j=0;j<=2-i;j++)
printf(" ");
for(k=0;k<=2*i;k++)
printf("*");
printf("\n");
}
}
第3个回答  2010-04-12
程序是用VC++写的(用的C),不是很难,所以没加什么注释,希望能帮你些许忙。
#include<stdio.h>
#define M 4 //行数
#define N 7 //列数
void main()
{
char a[M][N];
int i,j;
int m,n;
for(i=0;i<M;i++)
{
m=n=N/2;
for(j=0;j<i+1;j++)
{
a[i][m]='*';
a[i][n]='*';
m--;
n++;
}
}
for(i=0;i<M;i++)
{
for(j=0;j<N;j++)
{
if(a[i][j]=='*')
printf("%c\t",a[i][j]);
else
printf("\t");
}
printf("\n\n");
}
}
第4个回答  2019-03-03
#include<
stdio.h>
void
main()
{

int
i,j;

for(i=1;i<=7;i+=2)

{

for(j=0;j<(7-i)/2;j++)

printf("
");

for(j=0;j<i;j++)

printf("*");

for(j=0;j<(7-i)/2;j++)

printf("
");

printf("\n");

}
}
相似回答