C语言循环输出图形

用*构建了几个图形求代码,将这几个图形按顺序反复输出。使用printf函数几个图形是固定的,已经设计好。就是要【循环】输出,直到按任意键退出weizcw2008我不是这个... 用*构建了几个图形
求代码,将这几个图形按顺序反复输出。
使用printf函数
几个图形是固定的,已经设计好。就是要【循环】输出,直到按任意键退出
weizcw2008 我不是这个意思
要的效果是运行后屏幕上先出现一个图形
然后清屏,接着出现下一个
以此类推
形成一个【动画】的效果
总共就4个图形
【那个图形是我指定的】
849797221 的代码直接在C环境下报错,c++才行的通
。。。。
VC
展开
 我来答
ryw12403
2010-06-08 · TA获得超过1899个赞
知道大有可为答主
回答量:2501
采纳率:0%
帮助的人:2102万
展开全部

说下什么编程环境?

TC 还是mc++6.

这可以做,简单 把你己有的*号图形写成独立的输出函数,

我想你也是用printf加空格试出来的吧,在主程序调用就行.

#include <stdio.h>

#include <windows.h>//TC不用这头文件

#include <conio.h>

void yourprintf1(void){

/*

这里加你自己的*号图形代码

*/

 printf("        *\n");

 printf("       ***\n");

 printf("      *****\n");

}

void yourprintf2(void){

/*

这里加你自己的*号图形代码

*/

  printf("    ******\n");

  printf("    *    *\n");

  printf("    *    *\n");

  printf("    *    *\n");

  printf("    ******\n");

}

void yourprintf3(void){

/*

这里加你自己的*号图形代码

*/

}

void yourprintf4(void){

/*

这里加你自己的*号图形代码

*/

}

main(){

do{

 system("cls");

yourprintf1();

Sleep(1000);//vc用这个

delay(1000);//tc用这个

getch();

system("cls");

yourprintf2();

Sleep(1000);//vc用这个

delay(1000);//tc用这个

system("cls");

yourprintf3();

Sleep(1000);//vc用这个

delay(1000);//tc用这个

system("cls");

yourprintf4();

Sleep(1000);//vc用这个

delay(1000);//tc用这个

}while(getch()!='q');//按q退出图形循环,不然一直循环显示.

}

我只简单画了三角形和方形,

只要你自己有空用printf试好另外再复杂的图形加入上面4个自定义的打印函数里就行.

看下效果:

weizcw2008
2010-05-26 · TA获得超过446个赞
知道答主
回答量:27
采纳率:0%
帮助的人:41万
展开全部

楼主,我想你主要是卡在“想要它循环,直到任意键退出”这个点上了,判断键盘消息用到了kbhit()函数和system("pause")函数,只不过记得加头文件就行。

看我代码,图形有两个,常用到的,你自己跑一跑,看看效果:

#include <stdio.h>

#include <conio.h> 

#include <stdlib.h>

void main()

{

   int i,j,k;

   while(!kbhit())/*判断键盘消息*/

   {

  printf("/************输出第一个图形**************/\n");

    /*输出前4行*/

    for(i=0;i<4;i++)

 {

      for(j=0;j<3-i;j++)

         printf(" ");

      for(k=0;k<2*i+1;k++)

         printf("*");

      

      printf("\n");

 }

    /*输出后3行*/

    for(i=3;i>0;i--)

 {

       for(j=0;j<=3-i;j++)

           printf(" ");

       for(k=0;k<2*i-1;k++)

        printf("*");

       printf("\n");

 }

 printf("/************输出第二个图形**************/\n");

    for(i=0;i<4;i++)

 {

    for(j=0;j<2*i+1;j++)

    printf("*");

    printf("\n");

 }

    for(i=2;i>=0;i--)

 {

    for(k=0;k<2*i+1;k++)

     printf("*");

    printf("\n");

 }

   }

   system("pause");/*暂停*/

}

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
少司命静默
2010-05-26 · TA获得超过330个赞
知道小有建树答主
回答量:221
采纳率:100%
帮助的人:63.9万
展开全部
循环输出菱形
#include“stdio.h"

void main()
{
int i,j,k;
for(i=0;i<=3;i++) /*i从0开始到3结束,共循环4次,功能为打印菱形的上半部分*/
{
for(j=0;j<=2-i;j++) /*j从0开始循环,用来输出每行前面的空格*/
printf(" ");
for(k=0;k<=2*i;k++) /*k控制输出*的数量,2*i,上半部分没增加一行就多2颗*,所以2*i*/
printf("*");
printf("\n"); /*输完一行就换行*/
}
for(i=0;i<=2;i++) /*i从0开始到2结束,共循环3次,功能为打印菱形的下半部分*/
{
for(j=0;j<=i;j++) /*下半部分每一行的空格数量跟i的值相同*/
printf(" ");
for(k=0;k<=4-2*i;k++) /*4-2*i 为*数*/
printf("*");
printf("\n");
}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
山药山药王
2010-06-08 · TA获得超过887个赞
知道小有建树答主
回答量:227
采纳率:0%
帮助的人:0
展开全部
LZ啊 你把849797221的代码稍微改一下

把void main改成int main
然后在main函数的最后加上return 0;

这样我猜在“C环境下”就不会报错了吧
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
暴雁兰7A
2010-05-26 · TA获得超过158个赞
知道小有建树答主
回答量:169
采纳率:0%
帮助的人:144万
展开全部
我来回答,我来拿分。程序我已经运行过了,绝对没问题,如果还有什么不足的地方,LZ尽可联系我。
#include<stdio.h>
#include<stdlib.h>
void main()
{
int i=0;
int n;
printf("请输入你要将图形输出几次:");
scanf("%d",&n);
for(i=0;i<n;i++){
for(int i=0;i<4;i++)
{
for(int j=0;j<3-i;j++)
printf(" ");
for(int k=0;k<2*i+1;k++)
printf("*");
printf("\n");
}
for( i=0;i<3;i++)
{
for(int j=0;j<i+1;j++)
printf(" ");
for(int k=0;k<5-2*i;k++)
printf("*");
printf("\n");
}

}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(7)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式