<C#任务导引教程>练习三

/*Convert.ToInt("213165");

int a=12345;
string sn=a.ToString();//把a转换成字符串sn
int b=int.Parse(sn);//把sn转换成整数b,结果b=a*/

using System;
class Program
{
    static void Main()
    {
        short i = 289;
        byte b;
        b = (byte)i;//产生截断,即减去256,得到33,而 ! 的ASCII码就是33
        char c = (char)b;
        Console.WriteLine("{0}", c);
    }
}

//14,用foreach语句输出字符串型数组
using System;
class Program
{
    static void Main()
    {
        string[] WeekDays = new string[] { "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat" };
        Console.WriteLine("该数组的长度为:{0}", WeekDays.Length);
        Console.WriteLine("以下为数组内容:");
        int i = 1;
        foreach (string day in WeekDays)
            Console.WriteLine("该值为数组的第{0}个值--{1}", i++, day);
    }
}

//15,完成任务
using System;
class Program
{
    static void Main()
    {
        int i;
        int[] f = new int[20];
        f[0] = 1;
        f[1] = 1;
        for (i = 2; i < f.Length; i++)
            f[i] = f[i - 2] + f[i - 1];
        for(i=0;i<f.Length;i++)
        {
            if (i % 5 == 0 && i > 0)
                Console.WriteLine();
            Console.Write("{0,8}", f[i]);
        }
        Console.WriteLine();
    }
}
//16,有10位学生的成绩分别是,,,,试编写程序输出10个学生的成绩,找出其中的最高分极其在这批数中德位置
using System;
class Program
{
    static void Main()
    {
        int[] scores = new int[11] { 0, 67, 34, 90, 88, 55, 74, 95, 82, 43, 90 };
        int i, max, max_in;
        max = scores[1];
        max_in = 1;
        for(i=2;i<scores.Length;i++)
        {
            if (scores[i] > max)
            {
                max = scores[i];
                max_in = i;
            }
            Console.WriteLine("输出10个学生的成绩:");
            for (i = 1; i < scores.Length; i++)
            {
                Console.Write("{0}  ", scores[i]);
            }
            Console.WriteLine();
            Console.WriteLine("最高分:{0}", max);
            Console.WriteLine("第一个最高分的位置:{0}", max_in);
        }
    }
}
//17,用冒泡法和选择法分别将由键盘输入的十个整数拍成升序
using System;
class Program
{
    static void Main()
    {
        int[] a = new int[] { 9, 8, 5, 6, 2, 0 };
        int i, j, t;
        for(i=0;i<6-1;i++)
            for(j=0;j<6-1-i;j++)
                if(a[j]>a[j+1])
                {
                    t = a[j];
                    a[j] = a[j + 1];
                    a[j + 1] = t;
                }
        Console.WriteLine("排序的结果是:");
        for (i = 0; i < 6; i++)
            Console.Write("{0}  ", a[i]);
        Console.WriteLine();
    }
}
//18,冒泡排序,手动输入
using System;
class Program
{
    static void Main()
    {
        int[]a=new int[10];
        int i,j,t;
        Console.WriteLine("请输入十个整数:");
        for (i = 0; i < 10; i++)
        {
            a[i] = Convert.ToInt32(Console.ReadLine());
        }
        Console.WriteLine();
        for(i=0;i<10-1;i++)
            for (j = 0; j < 10 - 1 - i; j++)
                if(a[j]>a[j+1])
            {
                t = a[j];
                a[j] = a[j + 1];
                a[j + 1] = t;
            }
        for (i = 0; i < 10; i++)
        {
            Console.Write("{0}  ", a[i]);
            Console.WriteLine();
        }
    }
}
//19,选择法 将六个已知整数排成升序
using System;
class Program
{
    static void Main()
    {
        int[ ] a = new int[ ] { 9, 8, 5, 6, 2, 0 };
        int i, j, t;
        for (i = 0; i < 6 - 1; i++)
            for (j = i + 1; j < 6; j++)
                if (a[i] > a[j])
                {
                    t = a[i];
                    a[i] = a[j];
                    a[j] = t;
                }
        Console.WriteLine("排序的结果为:");
        for(i=0; i<6; i++)
            Console.Write("{0}  ",a[i]);
        Console.WriteLine();
    }
}

//20,用选择法 对 十个键盘输入的数 排升序
using System;
class Program
{
    static void Main()
    {
        int[] a = new int[10];
        int i, j, t;
        Console.WriteLine("请输入十个整数");
        for (i = 0; i < 10; i++)
        {
            a[i] = Convert.ToInt32(Console.ReadLine());
        }
        Console.WriteLine();
        for(i=0;i<10-1;i++)
            for (j = i + 1; j < 10; j++)
                if (a[i] > a[j])
                {
                    t = a[i];
                    a[i] = a[j];
                    a[j] = t;
                }
        for (i = 0; i < 10; i++)
        {
            Console.Write("{0}  ", a[i]);
        }
        Console.WriteLine();
    }
}
//21,二维数组的声明
using System;
class Program
{
    static void Main()
    {
        int [ , ]score=new int[3,5];
        score = new int[,] { { 97, 87, 92, 78, 83 }, { 97, 87, 92, 78, 83 }, { 70, 65, 80, 91, 76 } };
        Console.Write("课程1\t课程2\t课程3\t课程4\t课程5");
        string str = " \n";
        for(int i=0;i<score.GetLength(0);i++)
        {
            for (int j = 0; j < score.GetLength(1); j++)
            {
                str += " ";
                str += score[i, j].ToString() + "\t";//制表
            }
            str += "\n";//换行
        }
        Console.WriteLine(str);
    }
}
//22,用二维数组实现矩阵转置
using System;
class Program
{
    static void Main()
    {
        int i, j, d;
        int[,] data = new int[5,5];
        for (i = 0; i < 5; i++)
            for (j = 0; j < 5; j++)
                data[i, j] = Convert.ToInt32(Console.ReadLine());
        Console.WriteLine("转置前的矩阵:");
        for (i = 0; i < 5; i++)
        {
            for (j = 0; j < 5; j++)
                Console.Write("{0,4 }", data[i, j]);
            Console.WriteLine();
        }
        for(i=0;i<5-1;i++)
            for (j = i + 1; j < 5; j++)//实现矩阵的转置
            {
                d = data[i, j];
                data[i, j] = data[j, i];
                data[j, i] = d;
            }
        Console.WriteLine("\n转置后的矩阵:");
        for (i = 0; i < 5; i++)
        {
            for (j = 0; j < 5; j++)
                Console.Write("{0,4}", data[i, j]);
            Console.WriteLine();
        }
    }
}

//23,字符数组的输出
using System;
class Program{
    static void Main(){
        char[] c = new char[10] { 'I', ' ', 'a', 'm', ' ','a',' ', 'b', 'o', 'y' };
        int i;
        for (i = 0; i < 10; i++)
        {
            Console.Write("{0}", c[i]);
        }
        Console.WriteLine();
    }
}
//24.二维字符数组输出
using System;
class Program
{
    static void Main()//二维字符数组
    {
        char[ , ] d = new char[5, 5] { { ' ', ' ', '*', ' ', ' ' }, { ' ', '*', ' ', '*', ' ' }, { '*', ' ', ' ', ' ', '*' }, { ' ', '*', ' ', '*', ' ' }, { ' ', ' ', '*', ' ', ' ' } };
        int i, j;
        for (i = 0; i < 5; i++)
        {
            for (j = 0; j < 5; j++)
                Console.Write("{0}", d[i, j]);
            Console.WriteLine();
        }
    }
}
//25,创建一个控制台应用程序,使用string类声明一个字符串变量并进行初始化,然后获取该字符串中的某个字符
using System;
class Program
{
    static void Main()
    {
        string str = "我钟爱C#!";
        char ch1 = str[1];
        char ch2 = str[2];
        Console.WriteLine("字符串:{0}中德第2个字符是:{1}",str,ch1);
        Console.WriteLine("字符串:{0}中的第3个字符是:{1}",str,ch2);
    }
}
//26,创建一个控制台应用程序,声明两个string类型的变量str1和str2,然后使用Format方式格式化这两个string变量,最后输出格式化后的字符串
using System;
class Program
{
    static void Main()
    {
        string str1= "努力学习C#!";
        string str2 = "饱尝编程的愉悦";
        string newstr = String.Format("{0},{1}!!!", str1, str2);
        Console.WriteLine(newstr);
    }
}

posted @ 2014-03-23 21:02  zhangyongjian  阅读(205)  评论(0编辑  收藏  举报