是否可以使用单个for
循环生成乘法表(例如,从1到9)?
答案 0 :(得分:6)
是的,使用类似的东西...但为什么不使用两个嵌套循环?
for (int i = 0; i < 9 * 9; ++i) { int a = i / 9 + 1; int b = i % 9 + 1; Console.WriteLine("{0} * {1} = {2}", a, b, a * b); }
答案 1 :(得分:1)
要使用单个for循环生成1-9的乘法表,您可以循环81次并使用除法和模运算符来获取两个操作数。
for (int i = 0; i < 9*9; ++i)
{
int a = i / 9 + 1;
int b = i % 9 + 1;
Console.WriteLine($"{a} * {b} = {a * b}");
//Console.WriteLine("{0} * {1} = {2}", a, b, a * b);
}
注意,必须有更好的方法来构造输出,但我不熟悉C#。
答案 2 :(得分:0)
这是一种提示方法。
如何从0到81的单个整数中提取所有需要的乘数和被乘数?
答案 3 :(得分:0)
尝试:
Console.WriteLine(" 1 2 3 4 5 6 7 8 9");
for (int i = 1; i<10; i++)
Console.WriteLine(
string.Format("{0}: {1:#0} {2:#0} {3:#0} {4:#0} " +
"{5:#0} {6:#0} {7:#0} {8:#0} {9:#0}",
i, i, 2*i, 3*i, 4*i, 5*i, 6*i, 7*i, 8*i, 9*i));
答案 4 :(得分:0)
这里是基于我们标准的乘法表的代码 假设 输入值:2 输入b值:10 然后输出就像2 * 1 = 2到2 * 10 = 20 ......
static void Main(string[] args)
{
int a, b, c, d;
Console.WriteLine("enter a value:");
a = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("enter b value:");
b = Convert.ToInt32(Console.ReadLine());
for (d = 1; d <=b; d++)
{
c = a * d;
Console.WriteLine("{0}*{1}={2}",a,d,c);
}
Console.ReadLine();
}
答案 5 :(得分:0)
class Program
{
static void Main(string[] args)
{
Console.Write("Enter the value:");
int m = int.Parse(Console.ReadLine());
if (m == 0)
return;
for(int i=1;i<=10;i++)
Console.WriteLine("{0} * {1} ={2}",m,i,m*i);
Console.ReadLine();
}
}
答案 6 :(得分:0)
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApplication11
{
class Program
{
int a;
int b;
int c;
public void Accept()
{
Console.WriteLine("enter the no.:");
a = Convert.ToInt32(Console.ReadLine());
}
public void Process()
{
for (int c = 1; c <= 10; c++)
{
b = a * c;
Console.WriteLine("table: {0}", b);
}
Console.ReadLine();
}
public void Display()
{
//Console.WriteLine(a "X" + c +"="b);
}
static void Main(string[] args)
{
Program pr = new Program();
pr.Accept();
pr.Process();
Console.ReadKey();
}
}
}