#include
main()
{
int i,j
for (i=1;i<=4;i++)
{
for (j=1;j<=i;j++)
{
printf("*");
}
printf("\n");
}
}
分析:请LZ仔细观察,图形的每行个数和所在行完全一样
比如说第1行,有1个
第二行,有2个
第三行,有3个
……
通过这个条件,我们只需要列举行,然后在输出行数个*,问题就迎刃而解了。
#include
struct date
{
int year;
int month;
int day;
};
int days(struct date day)
{
static int day_tab[2][13]=
{{0,31,28,31,30,31,30,31,31,30,31,30,31,}, /*平均每月的天数*/
{0,31,29,31,30,31,30,31,31,30,31,30,31,},
};
int i,lp;
lp=(day.year%4==0&&day.year%100!=0)||day.year%400==0;
/*判定year为闰年还是平年,lp=0为平年,非0为闰年*/
for(i=1;i
day.day+=day_tab[lp][i];
return day.day;
}
int main()
{
struct date today,term;
int yearday,year,day;
printf("请输入日期:(年 月 日):");
scanf("%d%d%d",&today.year,&today.month,&today.day); /*输入日期*/
term.month=12; /*设置变量的初始值:月*/
term.day=31; /*设置变量的初始值:日*/
for(yearday=0,year=1990;year
{
term.year=year;
yearday+=days(term); /*计算从1990年至指定年的前一年共有多少天*/
}
yearday+=days(today); /*加上指定年中到指定日期的天数*/
day=yearday%5; /*求余数*/
if(day>0&&day<4) printf("打鱼\n"); /*打印结果*/
else printf("晒网\n");
}
#include "stdio.h"
main()
{
int i,j;
for(i=0;i<4;i++)
{
{
for(j=0;j<4;j++)
if(i>=j)
printf("%c",'*');
else
printf("%c",' ');
}
printf("\n");
}
}
#include "stdio.h"
main()
{
int i,j;
for(i=0;i<4;i++)
for(j=0;j<4;j++)
{
if(i>=j)
printf("%c",'*');
else
printf("%c",' ');
if(j==3)
printf("\n");
}
}
两个方法的不同点是回车提行的设计。lz采纳吧!祝你c学的顺利~
#include
void main()
{
int i,j;
for(i=1;i<=4;i++)
{
for(j=1;j<=i;j++)
{
printf("*");
}
printf("\n");
}
}