• C语言练习题之——从简单到烧脑(13)(每日两道)


    打印爱心

    1.1:普通输出爱心

    1. #include
    2. int main()
    3. {
    4. printf(" ********* *********\n"); //7(代表边上的空格)
    5. printf(" *************** ***************\n"); //4
    6. printf(" ****************** ******************\n");//2
    7. printf(" ***************************************\n");//1
    8. printf("*****************************************\n");//0
    9. printf("*****************************************\n");//0
    10. printf(" ***************************************\n");//1
    11. printf(" *************************************\n");//2
    12. printf(" **********************************\n");//4
    13. printf(" *****************************\n");//6
    14. printf(" *************************\n");//8
    15. printf(" *******************\n");//11
    16. printf(" *************\n");//14
    17. printf(" *******\n");//17
    18. printf(" ***\n");//19
    19. return 0;
    20. }

    1.2循环打印爱心(效果自己实现观看)

    1. #include
    2. int main()
    3. {
    4. int gui[15] = { 7,4,2,1,0,0,1,2,4,6,8,11,14,17,19 };// 输出每一行的空格数
    5. int i = 0,j=0;
    6. int zhonggui[3] = { 9,3,1 }; //输出中间的空格
    7. int xing[3] = { 9,15,18 }; //输出中间的星号
    8. for (i = 0; i < 3; i++)
    9. {
    10. for (j = 0; j < gui[i]; j++) putchar(' ');
    11. for (j = 0; j < xing[i]; j++) putchar('*');
    12. for (j = 0; j < zhonggui[i]; j++) putchar(' ');
    13. for (j = 0; j < xing[i]; j++) putchar('*');
    14. putchar('\n');
    15. }
    16. for (i = 3; i <15; i++)
    17. {
    18. for (j = 0; j < gui[i]; j++) putchar(' ');
    19. for (j = 0; j < 41 - gui[i] * 2; j++) putchar('*');
    20. putchar('\n');
    21. }
    22. getchar();
    23. return 0;
    24. }

    2:符号变换爱心(这个还是不错的,有动态效果的样子)

    1. #include
    2. #include
    3. #include
    4. #include
    5. char str[15][41] = {
    6. " ********* ********* ",
    7. " *************** *************** ",
    8. " ****************** ****************** ",
    9. " *************************************** ",
    10. "*****************************************",
    11. "*****************************************",
    12. " *************************************** ",
    13. " ************************************* ",
    14. " ********************************* ",
    15. " ***************************** ",
    16. " ************************* ",
    17. " ******************* ",
    18. " ************* ",
    19. " ******* ",
    20. " *** ",
    21. };
    22. void Goto(int hang,int lie)
    23. {
    24. COORD cd = {lie,hang};
    25. SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), cd);
    26. }
    27. void Dong(int m,char c)
    28. {
    29. int n = 0;
    30. while (n++ < 1000)
    31. {
    32. int hang = rand() % 15;
    33. int lie = rand() % 41;
    34. if ('*' != str[hang][lie])
    35. continue;
    36. Goto(hang, lie);
    37. putchar(c);
    38. Sleep(5);
    39. }
    40. }
    41. int main()
    42. {
    43. srand((unsigned int)time(NULL));
    44. Dong(300, '*');
    45. Dong(500, '+');
    46. Dong(200, '+');
    47. return 0;
    48. }

  • 相关阅读:
    hive中concat_ws的秘密
    [C语言、C++]数据结构作业:线性表-顺序表的基本操作
    【微软技术栈】C#.NET 元组类型
    CCF CSP认证 历年题目自练Day37
    重要的SQL 查询语法
    Ruby 环境变量
    数据指标体系建设思路
    [自然语言处理] 基于pycorrector实现文本纠错
    《深入理解Linux内核中文第三版》学习笔记——第7章 进程调度
    Java#16(包装类和集合练习)
  • 原文地址:https://blog.csdn.net/weixin_52710247/article/details/139336900