鱼C论坛

 找回密码
 立即注册
查看: 1925|回复: 5

[已解决]为啥俺这里输出的是长方形不是正方形咧

[复制链接]
发表于 2018-3-9 21:37:04 | 显示全部楼层 |阅读模式
20鱼币
如题,不知是符号问题还是哪里的问题呢,路过的鱼油帮忙解下呗
  1. #include <stdio.h>

  2. int map[15][15] = {0};



  3. int main(void)
  4. {
  5.         int i, j;
  6.        
  7.         for(i = 0; i < 15; i++)       
  8.         {
  9.                 for(j = 0; j < 15; j++)
  10.                 {
  11.                         if(i == 0 && j == 0)
  12.                         {
  13.                                 printf("╔");
  14.                         }
  15.                         else if(i == 0 && j != 0)
  16.                         {
  17.                                 if(i == 0 && j == 14)
  18.                                         printf("╗");
  19.                                 else
  20.                                         printf("╦");
  21.                         }
  22.                         else if(i != 0 && j == 0)
  23.                         {
  24.                                 if(i == 14 && j == 0)
  25.                                         printf("╚");
  26.                                 else
  27.                                         printf("╠");
  28.                         }
  29.                         else if(i == 14 && j != 0)
  30.                         {
  31.                                 if(i == 14 && j == 14)
  32.                                         printf("╝");
  33.                                 else
  34.                                         printf("╩");
  35.                         }
  36.                         else if(i > 0 && i < 14 && j > 0 && j < 14)
  37.                         {
  38.                                 printf("╬");
  39.                         }
  40.                         else
  41.                                 printf("╣");                         
  42.                 }
  43.                 printf("\n");
  44.         }
  45.        
  46.         getch();
  47.         return 0;
  48. }
复制代码
最佳答案
2018-3-9 21:37:05
因为这些字符就无法拼成正方形
无论是最简单的
╔╗
╚╝

还是
╔╦╗
╠╬╣
╚╩╝

又或是
╔╦╦╗
╠╬╬╣
╠╬╬╣
╚╩╩╝

这些字符无法拼成正方形


另外,你的代码逻辑好乱
我修改了你的代码
  1. #include <stdio.h>

  2. void Print(int n)
  3. {
  4.         for(int y = 0; y < n; ++y)
  5.         {
  6.                 for(int x = 0; x < n; ++x)
  7.                 {
  8.                         if(x == 0 && y == 0)
  9.                         {
  10.                                 printf("╔");
  11.                         }
  12.                         else if(x == 0 && y == n - 1)
  13.                         {
  14.                                 printf("╚");
  15.                         }
  16.                         else if(x == n - 1 && y == 0)
  17.                         {
  18.                                 printf("╗");
  19.                         }
  20.                         else if(x == n - 1 && y == n - 1)
  21.                         {
  22.                                 printf("╝");
  23.                         }
  24.                         else if(x == 0)
  25.                         {
  26.                                 printf("╠");
  27.                         }
  28.                         else if(x == n - 1)
  29.                         {
  30.                                 printf("╣");
  31.                         }
  32.                         else if(y == 0)
  33.                         {
  34.                                 printf("╦");
  35.                         }
  36.                         else if(y == n - 1)
  37.                         {
  38.                                 printf("╩");
  39.                         }
  40.                         else
  41.                         {
  42.                                 printf("╬");
  43.                         }
  44.                 }
  45.                 printf("\n");
  46.         }
  47. }

  48. int main(void)
  49. {
  50.         for(int i = 1; i < 5; ++i)
  51.         {
  52.                 Print(i);
  53.                 printf("\n\n");
  54.         }
  55.        

  56.         return 0;
  57. }
复制代码




  1. ╔╗
  2. ╚╝


  3. ╔╦╗
  4. ╠╬╣
  5. ╚╩╝


  6. ╔╦╦╗
  7. ╠╬╬╣
  8. ╠╬╬╣
  9. ╚╩╩╝


  10. 请按任意键继续. . .
复制代码
问题.png

最佳答案

查看完整内容

因为这些字符就无法拼成正方形 无论是最简单的 ╔╗ ╚╝ 还是 ╔╦╗ ╠╬╣ ╚╩╝ 又或是 ╔╦╦╗ ╠╬╬╣ ╠╬╬╣ ╚╩╩╝ 这些字符无法拼成正方形 另外,你的代码逻辑好乱 我修改了你的代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2018-3-9 21:37:05 | 显示全部楼层    本楼为最佳答案   
因为这些字符就无法拼成正方形
无论是最简单的
╔╗
╚╝

还是
╔╦╗
╠╬╣
╚╩╝

又或是
╔╦╦╗
╠╬╬╣
╠╬╬╣
╚╩╩╝

这些字符无法拼成正方形


另外,你的代码逻辑好乱
我修改了你的代码
  1. #include <stdio.h>

  2. void Print(int n)
  3. {
  4.         for(int y = 0; y < n; ++y)
  5.         {
  6.                 for(int x = 0; x < n; ++x)
  7.                 {
  8.                         if(x == 0 && y == 0)
  9.                         {
  10.                                 printf("╔");
  11.                         }
  12.                         else if(x == 0 && y == n - 1)
  13.                         {
  14.                                 printf("╚");
  15.                         }
  16.                         else if(x == n - 1 && y == 0)
  17.                         {
  18.                                 printf("╗");
  19.                         }
  20.                         else if(x == n - 1 && y == n - 1)
  21.                         {
  22.                                 printf("╝");
  23.                         }
  24.                         else if(x == 0)
  25.                         {
  26.                                 printf("╠");
  27.                         }
  28.                         else if(x == n - 1)
  29.                         {
  30.                                 printf("╣");
  31.                         }
  32.                         else if(y == 0)
  33.                         {
  34.                                 printf("╦");
  35.                         }
  36.                         else if(y == n - 1)
  37.                         {
  38.                                 printf("╩");
  39.                         }
  40.                         else
  41.                         {
  42.                                 printf("╬");
  43.                         }
  44.                 }
  45.                 printf("\n");
  46.         }
  47. }

  48. int main(void)
  49. {
  50.         for(int i = 1; i < 5; ++i)
  51.         {
  52.                 Print(i);
  53.                 printf("\n\n");
  54.         }
  55.        

  56.         return 0;
  57. }
复制代码




  1. ╔╗
  2. ╚╝


  3. ╔╦╗
  4. ╠╬╣
  5. ╚╩╝


  6. ╔╦╦╗
  7. ╠╬╬╣
  8. ╠╬╬╣
  9. ╚╩╩╝


  10. 请按任意键继续. . .
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2018-3-10 07:43:51 | 显示全部楼层
人造人 发表于 2018-3-9 22:11
因为这些字符就无法拼成正方形
无论是最简单的
╔╗

噢,原来是符号问题,那俺增加下数组长度,逻辑乱是想减少代码行,不过确实看着很乱,学到了,给大神低头
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2018-3-10 16:18:43 | 显示全部楼层
好吧,我错了,这些字符可以拼成正方形

无标题.png

  1. #include <stdio.h>

  2. void Print(int n)
  3. {
  4.         n = n * 2;
  5.         int X = n * 2 - 1;

  6.         for(int y = 0; y < n; ++y)
  7.         {
  8.                 for(int x = 0; x < X; ++x)
  9.                 {
  10.                         if(x == 0 && y == 0)
  11.                         {
  12.                                 printf("╔");
  13.                         }
  14.                         else if(x == 0 && y == n - 1)
  15.                         {
  16.                                 printf("╚");
  17.                         }
  18.                         else if(x == X - 1 && y == 0)
  19.                         {
  20.                                 printf("╗");
  21.                         }
  22.                         else if(x == X - 1 && y == n - 1)
  23.                         {
  24.                                 printf("╝");
  25.                         }
  26.                         else if(x == 0)
  27.                         {
  28.                                 printf("╠");
  29.                         }
  30.                         else if(x == X - 1)
  31.                         {
  32.                                 printf("╣");
  33.                         }
  34.                         else if(y == 0)
  35.                         {
  36.                                 printf("╦");
  37.                         }
  38.                         else if(y == n - 1)
  39.                         {
  40.                                 printf("╩");
  41.                         }
  42.                         else
  43.                         {
  44.                                 printf("╬");
  45.                         }
  46.                 }
  47.                 printf("\n");
  48.         }
  49. }

  50. int main(void)
  51. {
  52.         for(int i = 1; i < 10; ++i)
  53.         {
  54.                 Print(i);
  55.                 printf("\n\n");
  56.         }


  57.         return 0;
  58. }
复制代码

  1. ╔╦╗
  2. ╚╩╝


  3. ╔╦╦╦╦╦╗
  4. ╠╬╬╬╬╬╣
  5. ╠╬╬╬╬╬╣
  6. ╚╩╩╩╩╩╝


  7. ╔╦╦╦╦╦╦╦╦╦╗
  8. ╠╬╬╬╬╬╬╬╬╬╣
  9. ╠╬╬╬╬╬╬╬╬╬╣
  10. ╠╬╬╬╬╬╬╬╬╬╣
  11. ╠╬╬╬╬╬╬╬╬╬╣
  12. ╚╩╩╩╩╩╩╩╩╩╝


  13. ╔╦╦╦╦╦╦╦╦╦╦╦╦╦╗
  14. ╠╬╬╬╬╬╬╬╬╬╬╬╬╬╣
  15. ╠╬╬╬╬╬╬╬╬╬╬╬╬╬╣
  16. ╠╬╬╬╬╬╬╬╬╬╬╬╬╬╣
  17. ╠╬╬╬╬╬╬╬╬╬╬╬╬╬╣
  18. ╠╬╬╬╬╬╬╬╬╬╬╬╬╬╣
  19. ╠╬╬╬╬╬╬╬╬╬╬╬╬╬╣
  20. ╚╩╩╩╩╩╩╩╩╩╩╩╩╩╝


  21. ╔╦╦╦╦╦╦╦╦╦╦╦╦╦╦╦╦╦╗
  22. ╠╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╣
  23. ╠╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╣
  24. ╠╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╣
  25. ╠╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╣
  26. ╠╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╣
  27. ╠╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╣
  28. ╠╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╣
  29. ╠╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╣
  30. ╚╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╝


  31. ╔╦╦╦╦╦╦╦╦╦╦╦╦╦╦╦╦╦╦╦╦╦╗
  32. ╠╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╣
  33. ╠╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╣
  34. ╠╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╣
  35. ╠╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╣
  36. ╠╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╣
  37. ╠╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╣
  38. ╠╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╣
  39. ╠╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╣
  40. ╠╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╣
  41. ╠╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╣
  42. ╚╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╝


  43. ╔╦╦╦╦╦╦╦╦╦╦╦╦╦╦╦╦╦╦╦╦╦╦╦╦╦╗
  44. ╠╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╣
  45. ╠╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╣
  46. ╠╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╣
  47. ╠╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╣
  48. ╠╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╣
  49. ╠╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╣
  50. ╠╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╣
  51. ╠╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╣
  52. ╠╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╣
  53. ╠╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╣
  54. ╠╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╣
  55. ╠╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╣
  56. ╚╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╝


  57. ╔╦╦╦╦╦╦╦╦╦╦╦╦╦╦╦╦╦╦╦╦╦╦╦╦╦╦╦╦╦╗
  58. ╠╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╣
  59. ╠╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╣
  60. ╠╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╣
  61. ╠╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╣
  62. ╠╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╣
  63. ╠╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╣
  64. ╠╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╣
  65. ╠╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╣
  66. ╠╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╣
  67. ╠╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╣
  68. ╠╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╣
  69. ╠╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╣
  70. ╠╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╣
  71. ╠╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╣
  72. ╚╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╝


  73. ╔╦╦╦╦╦╦╦╦╦╦╦╦╦╦╦╦╦╦╦╦╦╦╦╦╦╦╦╦╦╦╦╦╦╗
  74. ╠╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╣
  75. ╠╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╣
  76. ╠╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╣
  77. ╠╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╣
  78. ╠╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╣
  79. ╠╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╣
  80. ╠╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╣
  81. ╠╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╣
  82. ╠╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╣
  83. ╠╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╣
  84. ╠╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╣
  85. ╠╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╣
  86. ╠╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╣
  87. ╠╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╣
  88. ╠╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╣
  89. ╠╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╣
  90. ╚╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╝


  91. 请按任意键继续. . .
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2018-3-10 16:21:49 | 显示全部楼层
看来只有在cmd窗口中才是正方形
^_^
无标题.png
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2018-3-10 17:09:49 From FishC Mobile | 显示全部楼层
人造人 发表于 2018-3-10 16:21
看来只有在cmd窗口中才是正方形
^_^

喵?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-4-20 20:46

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表