当前位置:首页 » 编程语言 » C语言圣诞树while结构
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

C语言圣诞树while结构

发布时间: 2023-02-26 13:28:56

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;

}