C#初学系列第一章

学C3学了2周,有点小心得,在这里分享一下

1.数据类型

整数型按字节排序:

byte,sbyte,short ushort,int,uint,long,ulong     

浮点型按字节排序为:

float,double,decimal

字符型

char


数据之间的转换方式

(以整数为例)

强制转换方式:

int a = Convert.ToInt16(Console.ReadLine());

//这里int有16/32/64位三种格式

int a =int.Parse(a);


判断语句

第一种

if(条件表达式1)

   {


   }

else if(条件表达式2)

   {


   }

else

{

}

第二种

switch(条件表达式)

{

case1:(语句1,break;)

case2:(语句2,break;)

·

·

·

casen:(语句n,break)

}


循环语句

第一种

for(定义变量,条件,自增)//或自减,for循环里面可以加入一个新的for循环,称为嵌套循环。

{


}


第二种

while循环//while循环有while循环,do-while循环;


数组

一维数组

冒泡排序

int[] Array= { //任意数组元素组成 };

            for (int i = 0; i < Array.Length-1; i++)

            {

                for (int j= 0; j < Array.Length - 1 - i; j++)

                {

                    if(Array[j] > Array[j + 1])

                    {

                        int m = Array[j + 1];

                        Array[j + 1] =Array[j];

                        Array[j] = m;

                        //从大到小写大于,先写m等于小的,最后写大的等于m,而不是m等于大的;

                    }

                }

            }

            for (int i = 0; i < Array.Length; i++)

            {

                Console.Write(Array[i]+" ");

           }

选择排序

int[] Array = { //同上 };

            intminValue = 0;

            //声明一个空变量,存储选择的数;

            intminIndex = 0;

            //声明一个变量存储该数组的下标;

            for (int i = 0; i < Array.Length - 1; i++)

            //第一层循环,实现选择一个数

            {

                minValue = Array[i];

                //每趟吧数组的数放到这个变量中;          

                minIndex = i;

                //同时记录下标;        

                for (int j = i + 1; j < Array.Length; j++)

                    //从而比较Array[i]和Array[i+1];

                {

                    if(minValue > Array[j])

                    //判断变量中的数是否比后面的大;

                    {

                        minValue = Array[j];

                        //如果大,把这个小的数再存到变量中。继续比较;

                        minIndex = j;

                    }//if循环是判断,当if循环不成立跳出到内部for循环开始第二遍查找;

                }

                //实现数组数据的交换

                Array[minIndex] = Array[i];

                Array[i] = minValue;

            }

            Console.Write("int[] Array = {");

            for (int i = 0; i < Array.Length - 1; i++)

            {

                Console.Write(Array[i]+ " ,");

            }

            Console.Write(Array[A.Length]);

           Console.Write("}");

二分数组

                     //              1   2     3      4       5      6      7

           int[] array01 = { 88,90, 100, 103, 110, 125, 150 };

                        //           0   1     2       3      4      5      6

            //最小数的标签                                                  

            int low= 1;

            //最大数的标签

            int high= array01.Length;

            //要查找的数

            inttarget = int.Parse(Console.ReadLine());

            //循环实现查找,条件:

            while (low<= high)

            {

               // 二分求中间数的标签

                int mid= (low + high) / 2;

                //求数组下标,进行判断是否与要查找的数相等

                if(array01[mid - 1] == target)

                {

                    Console.Write("找到了");

 

                    return;

 

                }

                elseif (array01[mid - 1] > target)

                {

                    //丢掉右边,向左找

                    high = mid - 1;

                    //继续循环

                    continue;

                }

                else

                {

                    //向右查找

                    low = mid + 1;

                    continue;

                }

 

            }

           Console.Write("没找到");

二维数组

int [,]Array =new int {,};



初等编程语言函数  

有返回值的函数

static 数据类型 XXX(int a)

//这里XX输入的是在class program这个类中可以调用的函数名称;

{

return a=10;
}

无返回值

static void XXX(int a)

{


}


调用类

类中对象的初始化

Set为赋值,Get为取值,切记调用顺序不要搞混,

比如

class Mid

{

string ai;

string bi;

       public void Mid(String a,String b)

       {

         ai =a;

         bi=b;

//这里给上面的成员变量赋予了初始值;

       }

       public void SetAi(string a)

       {

         string a ="ahasbajbkj"

       }

       public void GetAi()

      {

        return a;

      }

}

继承

需要牢记三个常用修饰符的区别

private(私有权限,不可被类外函数访问,不可被子类继承)

public(公有权限,可以被所有类外调用,可被子类继承)

protected(保护权限,可以被子类继承,不可被类外函数调用,如果想要调用,可以用方法)

protected可以被类外函数调用的方法:

class Circle
    {
        protected double r;
        public void setR(int newR)
        {
            r = newR;
        }
        //只在当前类使用
        private double avg(double x)
        {
            return x * x;
        }
        public double GetArea()
        {
            return this.avg(r) * 3.14;
        }
    }


以及public和static的区别

static只能在类中调用

public上面已经说过。

书签题目

定义一个名为网站的类

对象(属性有网址,标题,星级,访问度)

step1 初始化对象

step2赋值取值(set,get)

step3增加书签

step4查询书签

step5删除书签

step6查询标题修改网址

step7根据星级排列网址

遍历算法:

public URLItem FindURLItem(String title) {
            foreach (URLItem item in list) {
                //item遍历了每一个书签,我们要比对,item的标题和title
                if (item.GetTitle() == title) {
                    return item;
                }
                //如果有进行删除
                List.Remove(item);//从列表里移出item,因为已经找到了所找的title
                //就是item,所以只需要删除item就可以了;
                Console.WriteLine("书签{0}已被删除", title);
                return true;
            }


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值