C语言的高手请进,救命啊~~~

来源:百度知道 编辑:UC知道 时间:2024/05/14 19:03:43
我有两个题目想请大家帮帮忙
1、用C语言描述下列高为n(n=6)的等腰三角形。
*
***
*****
*******
*********
***********
2、是著名的“百钱买百鸡”问题:即用100元钱买100只鸡,其中公鸡5元一只,母鸡3元一只,小鸡1/3元一只,问:这100元买100只鸡中,公鸡、母鸡、小鸡分别是多少只?(我知道答案是买大公鸡12只,母鸡4只,小鸡84只;或买大公鸡8只,母鸡11只 ,小鸡81只;或买大公鸡4只,母鸡18只,小鸡78只。)但是我不知道用C语言的怎么表达出来。

请各位大虾们帮帮忙吧,先谢拉!
请注意:
第1题的等腰三角形是对称的,不知道为什么在这里打不出来....

我先说第2题吧,第一题一会再说
#include "stdio.h"
main()
{
int x,y,z;
for(x=0;x<=19;x++)
for(y=0;y<=33;y++)
{
z=100-x-y;
if(15*x+9*y+z==300)
printf("x=%-10dy=%-10dz=%-10d\n",x,y,z);
}
}
OK了,第一道
#include "stdio.h"
main()
{
int i,j;
for(i=1;i<=6;i++)
{
for(j=6;j>i;j--)
printf(" ");
for(j=1;j<=2*i-1;j++)
printf("%c",'*');
printf("\n");
}
}

运行程序后可以看到有五种买鸡的方案
main()
{
int i,j,k;
for (i=1;i<=(int)(100/3);i++)
{
for (j=1;j<=(int)(100/2);j++)
{
for (k=1;k<=100*3;k++)
{
if (i+k+j==100 && 3*i+2*j+k/3==100 && k%3==0)
printf("\n\n%d,%d,%d",i,j,k);
}
}
}
}