❶ c语言设计案例张传学P82编写如图123圣诞树
为了更方便的设计圣诞树的形状,我用的是设计递归函数的方法。程序如下:
#include <stdio.h>
#include <math.h>
void shu(int n)
{
int i;
for (i = 1; i <= 6 - n; i++)
{
printf(" ");
}
for (i = 1; i <= 2 * n - 1;i++)
{
printf("*");
}
printf(" ");
if (n != 6)
shu(n + 1);
}
void gen(int n)
{
int i;
for (i = 1; i <= n; i++)
{
printf(" ***** ");
}
}
void main()
{
shu(1);
shu(2);
gen(5);
}
仿真结果如图1。

❷ 如何用 C 语言画一个“圣诞树”
画圣诞树
1,用 C 语言画的“圣诞树”,对于我一个美术生来说,画画是自己的兴趣,我也很喜欢画画,从小对画画还有创意性的,我大学是学艺术设计的,用电脑操作绘画是我的专业,我尝试用最少代码来画一个抽象一点的圣诞树,可惜没有画树干。然后,我尝试用更真实一点的风格。因为树是一个比较自相似的形状,这次使用递归方式描述树干和分支。就是画一主树干,树干越高看着就越幼。

所以考虑到太小的叶片是很难采样得到好看的结果,我尝试以一个较大的球体去表现叶片,就如素描时考虑更整体的光暗,而不是每片叶片的光暗,这样画出来的效果非常的漂亮,我觉得结果已有进步。
❸ 【急!】用C语言排圣诞树,要怎么让结果呈现并排
#include<stdio.h>
#include<stdlib.h>
int len(int h);
int max(int x,int y,int z);
int min(int x,int y,int z);
void main()
{ int i,j,k;
 printf("请输入你想要圣诞叶的高度(0~39且为奇数):");
 scanf("%d%d%d",&i,&j,&k);
 int  Height,Length, Width, Leaf, Smax,Smin, Index;
 Height=i;
 Smax=max(i,j,k);
 Smin=min(i,j,k);
 Length = max(i,j,k)/2;
 Width =(i+j+k)*2-1;
   if ((Height > 0)&&(Height< 40)&&(Height%2 != 0))
  {
    for (Leaf = 0; Leaf <Smax+Length; Leaf++)
    { if(Leaf<Smin)
	{for (Index = 1; Index <= Width; Index++)
      {
        if ((((Index <= Height+Leaf)&&(Index >= Height-Leaf)&&(Leaf<i))
			||(((Index <= Height+Leaf+j+i)&&(Index >= Height-Leaf+j+i))&&(Leaf<j))
			||(((Index <= Height+Leaf+j+i+j+k)&&(Index >= Height-Leaf+j+i+j+k)))&&(Leaf<k)))
          printf("*");
        else
	    if((Index==2*i)||(Index==2*i+2*j))
			printf(" ");
		else
          printf("-");
      }
	  printf("\n");
	  
    }
else 
{if(Leaf<Smax)
	   { 
    
      for (Index = 1; Index <= Width; Index++)
      {
        if (((Index == Height)&&(Leaf<i+len(i)))
			||((Index == Height+j+i)&&(Leaf<j+len(j)))
			||((Index == Height+j+i+j+k)&&(Leaf<k+len(k)))
			||(((Index <= Height+Leaf)&&(Index >= Height-Leaf)&&(Leaf<i))
			||(((Index <= Height+Leaf+j+i)&&(Index >= Height-Leaf+j+i))&&(Leaf<j))
			||(((Index <= Height+Leaf+j+i+j+k)&&(Index >= Height-Leaf+j+i+j+k)))&&(Leaf<k)))
          printf("*");
        else
			if((Index==2*i)||(Index==2*i+2*j))
			printf(" ");
			else
          printf("-");
      }
      printf("\n");
    }
	else
	{
		for (Index = 1; Index <= Width; Index++)
      {
        if (((Index == Height)&&(Leaf<i+len(i)))
			||((Index == Height+j+i)&&(Leaf<j+len(j)))
			||((Index == Height+j+i+j+k)&&(Leaf<k+len(k))))
			
          printf("*");
        else
			if((Index==2*i)||(Index==2*i+2*j))
			printf(" ");
			else
          printf("-");
      }
      printf("\n");
    }
	   }
	}
   }  
}
int len(int h)
{ return h/2;
}
int max(int x,int y,int z)
{ if(x>y&&x>z)
  return x;
  if(y>x&&y>z)
  return y;
  if(z>x&&z>y)
  return z;
}
int min(int x,int y,int z)
{ if(x<y&&x<z)
  return x;
  if(y<x&&y<z)
  return y;
  if(z<x&&z<y)
  return z;
}
空白处未解决,基本已实现其功能~~
❹ c语言圣诞树代码有颜色
从网上下载并安装c-free3.5其他任何版本的都可以,其他的C语言开发工具也可以!这里给出c-free的安装教程
2.新建一个程序代码有基础的可以自己试着写,这里直接给出第一层的代码inti,j;for(i=1;i<=7;i++){for(j=1;j<=10;j++){printf("");}for(j=1;j<=7-i;j++){printf("");}for(j=1;j<=2*i-1;j++){printf("*");}printf("
");}3.继续编辑第二层的大小和高度画线部分为调整位置进行的修改,可以按照个人喜好随意调整,或许能得到更加丰富的图案4.最后编辑树的枝干
❺ 如何用C语言画一个“圣诞树”
从网上下载并安装c-free3.5
其他任何版本的都可以,其他的C语言开发工具也可以!这里给出c-free的安装教程
新建一个程序代码
有基础的可以自己试着写,这里直接给出第一层的代码
  int i,j;
   for(i=1;i<=7;i++){
        for(j=1;j<=10;j++){
            printf(" ");
        }
        for(j=1;j<=7-i;j++){
            printf(" ");
      }
        for(j=1;j<=2*i-1;j++){
            printf("*");
      }
    printf("\n");
   }
继续编辑第二层的大小和高度
画线部分为调整位置进行的修改,可以按照个人喜好随意调整,或许能得到更加丰富的图案
最后编辑树的枝干
代码在图片中给出了
运行并观察结果
这个是每一步都需要做的,可以根据图形与我们理想的偏差来进行调整,结果应该就想我图片中的一样了。
保存
好不容易写完了,记得保存为,cpp的格式,下次想打开直接双击就可以了!
❻ 电脑的C语言怎样编写出圣诞树
打印两个等边三角形,再打一个矩形就可以实现圣诞树雏形;
参考代码如下:
#include<stdio.h>
voidmain()
{
inti,j;
printf("* ");
for(i=2;i<4;i++)
{
printf("");
for(j=1;j<2*i;j++)
printf("*");
printf(" ");
}
for(i=1;i<5;i++)
{
printf("");
for(j=1;j<2*i;j++)
printf("*");
printf(" ");
}
for(i=1;i<4;i++)
{
printf("");
printf("*** ");
}
}
❼ c语言,怎么做出这个圣诞树用while或for语句。帮我写出代码,谢谢。(不一定要圆圈,其他图案
#include<stdio.h>
void main()
{
	int n,j,i,k;
	char ch;
	ch='*';
scanf("%d",&n);
		for(j=1;j<=n;j++)
		{	
			
				for(k=n;k>j;k--)
				{
				 printf(" ");
				}
				
			for(i=1;i<=j;i++)
			{
			
			printf(" %c",ch);
			}
			printf("\n");
		}
	    for(j=1;j<=n-1;j++)
        {
				for(k=1;k<=j;k++)
				{
				 printf(" ");
				}
		    for(i=n-1;i>=j;i--)
			{
	             
			printf(" %c",ch);
			}
		    printf("\n");
}
}
❽ 用c语言输出圣诞树,在线急等
参考下面代码
#include <stdio.h>
void main()
{
    int i,j;
 
    printf("*\n");
    for (i=2; i<4; i++)
    {
        printf(" ");
        for (j=1; j<2*i;j++)
            printf("*");
        printf("\n");
    }
    for (i=1; i<5; i++)
    {
        printf(" ");
        for (j=1; j<2*i; j++)
            printf("*");
        printf("\n");
    }
    for (i=1; i<4; i++)
    {
        printf(" ");
        printf("***\n");
    }
}
❾ 求教 用C语言打出圣诞树
void Print(int n,int N)//输出三角形 
{
    int al=1,sp=N,i;//每行字母数目,空格数目 
    for(i=0; i<n; i++)//控制行数 
    {
		int j=0;
        for(; j<sp; j++)//输出空格循环 
			printf(" ");
		for(;j<sp+al;j++)//输出字符循环 
			printf("*");
                   
		sp = sp-1;
		al = al+2;
		printf("\n");
    }
}
int main()
{
    int n,i;
    scanf("%d",&n);
     
    for(i=1;i<=n;i++)
		Print(i+1,n); 
	return 0;
}
不知道是不是符合你的要求
❿ 用c语言输出这个圣诞树,在线等,很急
#include <stdio.h>
void prt(int a,int b)
{int i,j;
for(i=0;i<5;i++)
{for(j=0;j<b-i-a;j++)
printf(" ");
for(j=-(i+a);j<=i+a;j++)
printf("*");
printf(" ");
}
}
int main()
{int i;
for(i=0;i<10;i+=2)
prt(i,12);
for(i=0;i<3;i++)
printf(" *** ");
return 0;
}

