基础题1

1. 声明两个变量:int n1 = 10, n2 = 20;要求将两个变量交换,最后输出n1为20,n2为10。扩展(*):不使用第三个变量如何交换?

int n1 = 10;
int n2 = 20;
n1 = n1 + n2;
n2 = n1 - n2;
n1 = n1 - n2;
Console.WriteLine("n1:{0},n2:{1}", n1, n2);

2. 用方法来实现:将上题封装一个方法来做。提示:方法有两个参数n1,n2,在方法中将n1与n2进行交换,使用ref。(*)

static void Main(string[] args)
        {
            int n1 = 10, n2 = 20;
            Repalce(ref n1,ref n2);
            Console.WriteLine("n1={0},n2={1}",  n1,  n2);
            Console.ReadKey();

        }
 static void Repalce(ref int n1,ref int n2)
        {
            n1 = n2 - n1;
            n2 = n2 - n1;
            n1 = n2 + n1;
        }

3. 请用户输入一个字符串,计算字符串中的字符个数,并输出。

string msg = Console.ReadLine();
Console.WriteLine("字符个数为:{0}", msg.Length);

4. 用方法来实现:计算两个数的最大值。思考:方法的参数?返回值?扩展(*):计算任意多个数间的最大值(提示:params)。

5. 用方法来实现:计算1-100之间的所有整数的和。

6. 用方法来实现:计算1-100之间的所有奇数的和。

int sum = 0;
 for (int i = 1; i <= 100; i++)
{
         if (i%2!=0)
          {
                continue;  
          }
           sum += i;
}
Console.WriteLine("1-100之间的所有奇数的和为{0}", sum);

7. 用方法来实现:判断一个给定的整数是否为“质数”。

8. 用方法来实现:计算1-100之间的所有质数(素数)的和。

static void Main(string[] args)
     {
            int startNum = 1, endNum = 100;
            int sum = 0;
            for (int i = startNum; i <= endNum; i++)
            {
                if (IsZhishu(i))
                {
                    sum += i;                  
                }
            }
            Console.WriteLine(sum);
            Console.ReadKey();
        }
  static bool IsZhishu(int num)
  {
         bool isZhishu = true;
            for (int i = 2; i <= (int)Math.Sqrt(num); i++)
            {
                if (num % i == 0)
                {
                    isZhishu = false;
                }
            }
            return isZhishu;
}

9. 用方法来实现:有一个整数数组:{ 1, 3, 5, 7, 90, 2, 4, 6, 8, 10 },找出其中最大值,并输出。不能调用数组的Max()方法。

10. 用方法来实现:有一个字符串数组:{ "马龙", "迈克尔乔丹", "雷吉米勒", "蒂姆邓肯", "科比布莱恩特" },请输出最长的字符串。

static string GetMaxString(string[] arrNames)
        {
            string maxName = arrNames[0];
            for (int i = 0; i < arrNames.Length; i++)
            {
                if (arrNames[i].Length > maxName.Length)
                {
                    maxName = arrNames[i];
                }
            }
            return maxName;
        }
posted @ 2013-03-14 11:44  幻想领域  阅读(241)  评论(0编辑  收藏  举报