C语言设计案例张传学P6编写输出圣诞树
#include
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;
}
为了更方便的设计圣诞树的形状,我用的是设计递归函数的方法。程序如下:
#include
#include
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。
改变min函数调用函数的参数,可以设计圣诞树形状和高度等,如下
void main()
{
shu(1);
shu(2);
shu(3);
gen(4);
}
将得到图2的形状。
不知你要画的圣诞树长什么样?给你找了一个代码:
#include <stdio.h>
void printTree(int n)
{
int i=0,j=0,k=0,max=n*n-n+5;
for (i=1;i<=n;i++)
{
for (j=1;j<=i*(i-1)/2+3;j++)
{
for (k=0;k<(max-(2*j-1))/2;k++)
putchar(' ');
for (k=(max-(2*j-1))/2;k<(max+2*j-1)/2;k++)
putchar('*');
putchar('
');
}
}
for (i=0;i<2;i++)
{
for (j=0;j<(max-1)/2;j++)
putchar(' ');
printf ("*
");
}
}
int main()
{
int n;
scanf ("%d", &n);
printTree(n);
return 0;
}
执行结果如下:层数手动输入
C语言设计案例张传学P54中鸡兔同只
4.8得到代码如下:include <stdio.h>int main(){ int h = 8, f = 22, ch, r; for (ch = 0; ch <= h; ++ch){ if ((f-ch*2)%4==0){ r = (f-ch*2)\/4; printf ("鸡:%d只,兔:%d只\\n", ch, r); } } return 0;}4.9得到如下代码:i...
C语言设计案例张传学P6编写输出圣诞树
include <stdio.h>void printTree(int n){ int i=0,j=0,k=0,max=n*n-n+5; for (i=1;i<=n;i++) { for (j=1;j<=i*(i-1)\/2+3;j++) { for (k=0;k<(max-(2*j-1))\/2;k++) putchar(' '); for (k=(max-(2*j-1))\/2;k<(max+2...
C语言设计案例张传学P137指针错误
temp指针没有分配内存。改成这样。void swap(int *p1, int *p2){ int temp;temp = *p1;p1 = *p2;p2 = temp;} 调用方式。int i = 1;int j = 2;swap(&i, &j);
C语言设计案例张传学P43华氏转摄氏
printf( "%dF=%gC\\n", a[i],5.0\/9*(a[i]-32) ) ;return 0;}
揣泊星元: 6.6得到如下代码:#include #include #include int main(){ int num[10][2], answer[10], sc = 0, t; int op[10]; i...
阿克苏市18944045870: C语言设计案例张传学P73编写如何积输入 - ?
揣泊星元: 6.4代码如下:#include int main(){ int ans = 1, i; for (i = 2; i <= 10; i += 2){ ans *= i; } printf ("%d\n", ans);...
阿克苏市18944045870: C语言编写输出以下图案的程序 - ?
揣泊星元: 你好,程序如下:#include<stdio.h> void main(){int i,j,k;for(i=1;i<=4;i++){for(j=1;j<=4-i;j++)printf(" ");for(k=1;k<=2*i-1;k++)printf("*");printf("\n");}for(i=1;i<=4;i++){for(j=1;j<i+1 ;j++)printf(" ");for(k=1;k<=7-2*i;k++)printf("*");printf("\n");}} 有疑问提出.望采纳.
阿克苏市18944045870: C语言程序设计,输出形状为直角三角形的九九乘法表 - ?
揣泊星元: #include "stdio.h" int main(void) { int i,j; /*定义变量i,j分别为行和列*/ for(i=1;i<=9;i++) printf("%7d",i); printf("\n"); for(i=10;i<=76;i++) printf("%c",'-'); /* 输出“-”线,并延伸*/ printf("\n"); for(i=1;i<=9;i++){ for(j=1;j<=i;j++) printf("%2d*%d=%2d",i,j,i*j); /*输出每行乘以每列的结果*/ printf("\n"); } return 0; } 楼主可以参考下
阿克苏市18944045870: C语言设计案例张传学P135指针后加上 - ?
揣泊星元: #include<stdio.h> void main() { int a[]={10,20,30,40,50};//这里少了一个分号.int *p; p=&a[1]; printf("%d\n",*++p); }当p=&a[1] p指向a[1] 然后打印*++p 会先p自加 指向a[2] 然后打印*p 也就是a[2] 即原始程序会打印30 如果p=&a[1]后 增加*p++ 由于,++的结合性更强.所以 自加的是p 而不是*p 于是,*p++后,p自加指向a[2] 这样在printf的时候,p再自加一次指向a[3] 打印*p为40
阿克苏市18944045870: C语言设计案例张传学P110编写函数反回个 - ?
揣泊星元: 8.5得到如下代码:# include # define SIZE 10void input(int a[], int n){ int i; printf ("请输入%d个元素:", n); for (i = 0; i < ...
阿克苏市18944045870: 《C语言程序设计》编写程序:编写一个函数,main()函数调用该函数并输出.(函数中用到循环) - ?
揣泊星元: #include<stdio.h> int stu(int a); int main(void) { int su=10; stu(su); getche(); } int stu(int a) { int i=0; while(i<=a) { printf("i is %d",i); i++; } } 希望可以帮助你
阿克苏市18944045870: C语言设计案例张传学P165用20本书 - ?
揣泊星元: #include<stdio.h>#include<string.h>#define N 3 int main() {struct book{ char book_name[50]; char author[20]; char publisher[50]; struct date{ int year; int month; int day; }publish_date; float price; }; struct book bookinfo[N],t,*p=bookinfo; int i,j;for(i=0;i...
阿克苏市18944045870: c语言程序设计?
揣泊星元: 你好,这下面是你要的代码#include<stdio.h>int main(){ int i,j,n=3; for(i=0;i<=n;i++) { for(j=1;j<=n-i;j++) printf(" "); for(j=1;j<=2*i+1;j++) printf("%d",j<=i+1?j:j-i-1); printf("\n"); }}代码编译结果如图所示希望能帮到你,满意请采纳答案,点击【采纳答案】,谢谢 ^_^ 你的点赞或采纳是我继续帮助其他人的动力
阿克苏市18944045870: C语言程序设计实现任一字符和字符串长度的输出,其中字符和字符串内容由编程者自定 - ?
揣泊星元: 输入任意长度字符串62616964757a686964616fe59b9ee7ad9431333431343063,并输出打印字符串及其长度.#include<stdio.h>#include<malloc.h>#include<conio.h> char *input();//输入任意长度字符串(可包含空格),回车确认,返回输...