c#题目求教
1、输出数字塔 就是1 121 12321 这样的。。。 2、就是输入n,在1-100这100个序号中,1-100头尾相接,从1开始数,逢n的序号将被删除,求最后留下的那个序号值。
各位大神啊,帮忙啊,老师上4节课大半本书就没了啊,这让我情何以堪啊,什么都不会。。。。。。。备注:都要在窗体中实现。
[解决办法]
第一个就是
1的平方,11的平方,111的平方,1111的平方....
[解决办法]
数字塔
- C# code
static void Main(string[] args) { int m = Convert.ToInt32(Console.ReadLine()); for (int i = 1; i <= m; i++) { for (int j = 1; j <= i; j++) { Console.Write(j); } for (int j = i-1; j >=1; j--) { Console.Write(j); } Console.Write('\n'); } Console.ReadLine(); }
[解决办法]
[解决办法]
我想第二道题可以做一个循环链表,然后遍历表,每到第n个元素时就删除该元素,直到剩下的元素个数小n为止.
[解决办法]
第二道题:
- C# code
namespace ConsoleApplication5{ class Node { public int Value; public Node Next, Prior; public Node(int value) { Value = value; } } class Link { private Node Head, Tail; private int Amount; public Link() { for (int i = 1; i <= 100; i++) { Add(new Node(i)); } Tail.Next = Head; Head.Prior = Tail; } private void Add(Node node) { if (Head == null) Head = Tail = node; else { node.Prior = Tail; Tail.Next = node; Tail = node; } Amount++; } public void DispNode() { Node node = Head; for(int i = 1;i<=Amount;i++) { Console.WriteLine(node.Value); node = node.Next; } } private void Delete(Node node) { if (Head == node) Head = node.Next; node.Prior.Next = node.Next; node.Next.Prior = node.Prior; Amount--; } public void Account(int n) { Node node = Head; int i = 1; while (Amount >= n) { if (i++ == n) { Delete(node); i = 1; } node = node.Next; } } } class Program { static void Main(string[] args) { Link link = new Link(); link.Account(5); link.DispNode(); Console.ReadKey(); } }