如何用C语言先输出一段文字如何再输出心形图案?

例如... 例如 展开
 我来答
好程序员
2016-01-18 · HTML5前端培训/大数据培训/Java
好程序员
好程序员是IT高端课程培训基地,从平凡到卓越,为梦想而拼搏。
向TA提问
展开全部

#include <stdio.h>

void heart() {
printf("        **           **        \n");
printf("    *       *     *       *    \n");
printf("  *            *            *  \n");
printf(" *                           * \n");
printf(" *                           * \n");
printf(" *                           * \n");
printf(" *                           * \n");
printf("  *                         *  \n");
printf("   *                       *   \n");
printf("    *                     *    \n");
printf("      *                 *      \n");
printf("        *             *        \n");
printf("          *         *          \n");
printf("             *   *             \n");
printf("               *               \n");
}

int main() {
heart();
return 0;   
}

缘明思
推荐于2018-02-22 · TA获得超过543个赞
知道小有建树答主
回答量:795
采纳率:88%
帮助的人:339万
展开全部
#include<stdio.h> 
#include<math.h> 
#include<stdlib.h>
#define I 20       //爱心的上半部分两个小半圆的半径
#define R 340   //爱心的下半部分圆弧曲线半径
int main() 
{
    int i,j,e; 
    int a; 
//爱心的上半部分 为两个实心半圆
    for(i=1,a=I;i<I/2;i++,a--)

        for(j=(int) (   I-sqrt((double)(I*I-(a-i)*(a-i)))   );j>0;j--) 
            printf(" "); 
        for(e=1;e<=2*sqrt((double)(I*I-(a-i)*(a-i)));e++) 
            printf("\3");
        for(j=(int) (   2*( I-sqrt((double)(I*I-(a-i)*(a-i))) )   );j>0;j--) 
            printf(" ");
        for(e=1;e<=2*sqrt( (double) (I*I-(a-i)*(a-i)) );e++) 
            printf("\3");
        printf("\n"); 
    } 
//爱心的中间一行 可以打印一些标记
    for(i=1;i<80;i++)
    {
        if(i==25)
     {
            printf("    I LOVE YOU!O(∩_∩)O~    ");
            i+=30;
        }
        printf("\3");
    }
    printf("\n"); 
    
//爱心的下半部分 以R为半径的左右两条圆弧曲线 R设置为比较大
    for(i=1;i<=R/2;i++)

        if(i%2||i%3)continue;//因为R很大 两条曲线应该删去中间的一些点 这样就会更像爱心
        for(j=(int) (   R-sqrt( (double) (R*R-i*i) )   );j>0;j--) 
            printf(" "); 
        for(e=1;e<=2*( sqrt( (double)(R*R-i*i) ) - (R-2*I) );e++) 
            printf("\3");
        printf("\n"); 
    } 
//以下是以time做时间变量来控制变色
//懒得查时间变量函数 故用这种超耗cpu的算法代替
//最好不要这么写 以下代码仅供娱乐
long time; 
for(; ;) 

   system("color a");
   for(time=0;time<99999999;time++); 
   system("color b");
   for(time=0;time<99999999;time++);
   system("color c");
   for(time=0;time<99999999;time++);
   system("color d");
   for(time=0;time<99999999;time++);
   system("color e");
   for(time=0;time<99999999;time++);
   system("color f");
   for(time=0;time<99999999;time++);
   system("color 0");
   for(time=0;time<99999999;time++);
   system("color 1");
   for(time=0;time<99999999;time++);
   system("color 2");
   for(time=0;time<99999999;time++);
   system("color 3");
   for(time=0;time<99999999;time++);
   system("color 4");
   for(time=0;time<99999999;time++);
   system("color 5");
   for(time=0;time<99999999;time++);
   system("color 6");
   for(time=0;time<99999999;time++);
   system("color 7");
   for(time=0;time<99999999;time++);
   system("color 8");
   for(time=0;time<99999999;time++);
   system("color 9");
   for(time=0;time<99999999;time++);
   system("color ab");
   for(time=0;time<99999999;time++);
   system("color ac");
   for(time=0;time<99999999;time++);
   system("color ad");
   for(time=0;time<99999999;time++);
   system("color ae");
   for(time=0;time<99999999;time++);
   system("color af");
   for(time=0;time<99999999;time++);

    return 0;
}

 这个是别人的,我只是转。

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
小镜子914
2018-03-30 · TA获得超过1.4万个赞
知道小有建树答主
回答量:21
采纳率:100%
帮助的人:7639
展开全部

学习C语言其实并不是枯燥无味的,也有蛮多好玩的

  1. 代码如下:
    #include <stdio.h>

  2. int main()
    {
    int i,j;

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

  4. //前三排的规律性不强  所以直接显示就好了

  5. for(i=0;i<3;i++)//显示中间三排
    {
    for(j=0;j<29;j++)
    printf("*");
    printf("\n");
    }

  6. for(i=0;i<7;i++)//显示呈递减趋势规律的中间7排
    {
    for(j=0;j<2*(i+1)-1;j++)
    printf(" ");
    for(j=0;j<27-i*4;j++)
    printf("*");
    printf("\n");
    }

  7. for(i=0;i<14;i++)//最后一个星号*与上面的规律脱节了  所以独立显示
    printf(" ");
    printf("*\n");
    return 0;
    }

就是我用C语言写的心形图案,花样心形图案,主要是用for语句写的,有兴趣的朋友可能试下

C语言是一门通用计算机编程语言,应用广泛。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
tattackor
2015-10-31 · TA获得超过3.5万个赞
知道大有可为答主
回答量:5083
采纳率:94%
帮助的人:863万
展开全部

1、数组方式,数组heart存放由'*'组成的心形,再由printf函数显示出来。编译与执行环境:VC++ 6.0.

2、例程:

#include<stdio.h>
#define HIG 12  //心形高度
#define WID 32  //最长宽度31个'*'与末尾'\0'组成
int main()
{
    char heart[HIG][WID]={
        "        *             *",
        "      *****         *****",
        "    *********     *********",
        "  ************* *************",
        "*******************************",
        "  ***************************",
        "    ***********************",
        "      *******************",
        "        ***************",
        "          ***********",
        "            *******",
        "              ***"};
    int i;
    for(i=0;i<HIG;i++)   //逐行打印
        printf("%s\n",heart[i]);
    printf("\n");
    return 0;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
和瓦伊aa
2015-10-10 · 超过13用户采纳过TA的回答
知道答主
回答量:58
采纳率:0%
帮助的人:21.5万
展开全部
先用一个函数输出心形图案
然后 在main函数里面先输出一段文字,再调用那个函数就可以了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式