关于循环周的问题[英] question on loop weeks

问题描述

你好

使用系统;使用 System.Collections.Generic;使用 System.Linq;使用 System.Text;命名空间 ConsoleApplication1{class 程序{static void Main(string[] args){int count = 52;for (int i = 1; i<= count; i++){Console.Write("{0} {1,2}", "周", i);Console.ReadLine();}}}}

是的,我知道代码是错误的.

我也在努力让它一年中每 3 周写一次.并且您可以像不需要为每一行都输入控制台一样做到这一点.它看起来像这样:

第 1 周 第 3 周 第 5 周
第 7 周 第 9 周 第 11 周
以此类推,直到第 51 周

推荐答案

试试 for (int i = 1; i <= count; i+=2)

好的,那么你需要做的第一件事就是改变您的 for 循环:i++ 只增加一,而您想要增加二:
for (int i = 1; i <= count; i++)
变成:
for (int i = 1; i <= count; i += 2)

减少它的写入频率稍微困难一些,但不是很多.你有两种方式:
1)不要使用WriteLine,而是使用Write.然后在你写完三组之后,写一个空行.
2)将您的输出构建成一个字符串(或者更好的是一个 StringBuilder),并在您拥有三个组时编写它.

你的老师更喜欢哪个?到目前为止,您的课程涵盖了哪些内容?
"我得到这个来帮助我.
int p= 0;const int cols = 3;p++;if ( (p >= cols) && (p % cols == 0))Console.WriteLine();

是的,这是一项学校作业,但您不需要展示它"

我猜是!:笑:

所以,你需要像我上面展示的那样改变你的循环,然后合并两个代码片段:

int count = 52;int p= 0;const int cols = 3;string 程序集 = "";for (int i = 1; i<= count; i += 2){程序集 += 字符串.Format("{0} {1,2}", "周", i);p++;if ( (p >= cols) && (p % cols == 0)){Console.WriteLine(程序集);汇编 = "";}}Console.WriteLine(程序集);

通常,我建议使用 StringBuilder 而不是 string 来执行此操作,但如果您还没有遇到它们,请使用字符串 - 稍后记住这通常不是一个好主意,原因很复杂.

现在,你真的需要变量"p"——你能去掉它并得到相同的输出吗?

本文地址:https://www.itbaoku.cn/post/1394739.html

相关标签/搜索