C#编程基础(简单概述与理解)

1、C#变量和数据输入

C#常用到的几个数据类型:

整型:int  说明:32位有符号整数  范围:-2³¹~2³¹-1

浮点型:double  说明:64位双精度浮点数  范围:±5.0×10-­﹣³²~±1.7×10³º

布尔型:bool  值:true和false  字符串型:0个或多个字符组成的字符串 

变量概念:

 变量就是一块存储空间,存储的值在程序运行过程中是可以不断变化的。

C#变量命名规范:

  • 变量名只能由数字、字母和下划线组成
  • 变量名的第一个字符只能是字母或下划线,不能是数字
  • 不能使用C#中的关键字、类名等作为变量名
  • 通常变量名的首字母小写、如果变量名是多个单词组成,那么出第一个单词的首字母小写之外,其他单词的首字母均为大写(驼峰命名法)

   注:一般变量名都全是字母组成的,不要与C#中的关键字、类名相同就行

C#变量的赋值基础语法:

int x=34;  //定义变量y

y=100;    //给y赋值

int i=100+10*5;  //把表达式的结果赋值给变量i;

C#变量的输出:

            Console.WriteLine("殿下,请输入您的大名:");
            string Name = Console.ReadLine();
            Console.WriteLine("殿下,请输入您的芳龄");
            int Age =int.Parse(Console.ReadLine());    

 C#变量的输出:

            Console.WriteLine();//输出了一行空行 (换行)
            Console.WriteLine("明星:","票价:","GD","1000");//中有两个格式字符           {},{1}后面的两个数据,“GD”和“1000”按顺序放在其中的一个位置显示
            Console.WriteLine("I LOVE YOU");//有换行效果
            Console.Write("I LOVE YOU");//没有换行效果
            //Console.WriteLine("注销快捷键与注释效果"); //ctrl+k+c
            Console.WriteLine("取消注销快捷键与注释效果");//ctrl+k+u    

C#变量的输出2:

            Console.WriteLine("地址:{0}","珠海");//在C#中,格式字符串的参数是从0开始计算的
            int HYX = 520;//定义整型变量并赋值
            Console.WriteLine(""+HYX);//提示文字+HYX的值    

 C#数据类型的转换:

隐式转换:主要是用于安全的类型转换,由系统自动完成。

            int x = 33;
            double y = x;//int类型转换成了double类型储存
            int z = 'Q';//char类型转换成了int类型储存 

显示转换:也叫强制转换,它的基本语法是这样的(目标类型)(表达式)。

            double x= 33.44;
            int y = (int)x;//将x转成整型
            float z = (float)(z + 30);//将表达式转换成单精度浮点型    

 2、C#运算符和选择语句

C#赋值运算符:

运算符 运算规则 意义
= 将表达式赋值给变量 将右边的值给左边
+= x+=y x=x+y
-= x-=y x=x-y
*= x*=y x=x*y
\= x/=y x=x/y
%= x%=y x=x%y(%用于求余数)

使用运算符来解决一个问题:

            int x = 30, y = 40, temp;
            Console.WriteLine("交换前的数据:x={0},y={1}",x,y);
            //开始交换数据
            temp = x;
            x = y;
            y = temp;
            Console.WriteLine("交换后的数据:x={0},y={1}",x,y);

C#算术运算符:

运算符 运算规则 意义
+ x+y 执行加法运算
- x-Y 执行减法运算
* x*y 执行乘法运算
/ x/y 执行除法运算,得到商的值
% x%y 执行除法运算,得到余数的值
++ x++或++x 自增1
-- x--或--x 自减1

 C#关系运算符:

运算符 运算规则 示例 结果
== x==y 10==20 false
!= x!y 10!20 true
> x>y 10>20 true
>= x>=y 10>=20 fa;se
< x<y 10<20 true
<= x<=y 10<=20 true

C#逻辑运算符:

运算符 运算规则 意义
&&(与) A&&B A和B同时为true,结果为true注意:当A为false,B不需要计算
||(或) A||B A和B只要一个为true,结果为true注意:当A为true,B不需要计算
!(非) !A A为true,结果为false;A为false,结果为true;

C#运算符的优先级:

优先级 运算符
()
  前缀++,前缀--,!
  *,/,%
  +,-
  <,<=,>,<=
  =,!=
  &&
  ||
  =,+=,-=,*=,/=,%=
后缀++,后缀--

C#选择语句1:

            Console.WriteLine("请输入您的国籍哈!");
            string country = Console.ReadLine();
            if (country == "中国")
            {
                Console.WriteLine("您是爱好和平的伟大中国人!");
            }
            else
            {
                Console.WriteLine("你好黑鬼!(注:纯属搞笑的)");
            }

C#选择语句2:

            int 月;
            Console.WriteLine("请输入一个月份:");
            月 = Convert.ToInt32(Console.ReadLine());
            if (月 >= 1 && 月 <= 12)
            {
                Console.WriteLine("{0}您输入的月份正确!", 月);
            }
            else
            {
                Console.WriteLine("{0}您输入的月份错误!", 月);
            }

C#选择语句3:

            Console.WriteLine("请输入您的性别:");
            string 性别 = Console.ReadLine();
            Console.WriteLine("请输入您的年龄:");
            int 年龄 = Convert.ToInt32(Console.ReadLine());
            if (性别 == "")
            {
                if (年龄 >= 22)
                {
                    Console.WriteLine("你是{0}性,今年{1}岁,您已达法定结婚年龄", 性别, 年龄);
                }
                else
                {
                    Console.WriteLine("你是{0}性,今年{1}岁,您未达法定结婚年龄", 性别, 年龄);
                }
            }
            else
            {
                if (年龄 >= 20)
                {
                    Console.WriteLine("你是{0}性,今年{1}岁,您已达法定结婚年龄", 性别, 年龄);
                }
                else
                {
                    Console.WriteLine("你是{0}性,今年{1}岁,您未达法定结婚年龄", 性别, 年龄);
                }
            }

C#选择运算器:

            int x, y;
            Console.WriteLine("请输入第一个数:");
            x = Convert.ToInt32(Console.ReadLine());//x = int.Parse(Console.ReadLine());
            Console.WriteLine("请输入第二个数:");
            y = int.Parse(Console.ReadLine());
            Console.WriteLine("请输入ysf:+,-,*,/");
            string ysf = Console.ReadLine();
            if (ysf == "+")
            {
                Console.WriteLine("{0}+{1}={2}", x, y, x + y);
            }
            if (ysf == "-")
            {
                Console.WriteLine("{0}-{1}={2}", x, y, x - y);
            }
            if (ysf == "*")
            {
                Console.WriteLine("{0}*{1}={2}", x, y, x * y);
            }
            if (ysf == "/")
            {
                Console.WriteLine("{0}/{1}={2}", x, y, x / y);
            }

3、C#循环

C#中的四种循环结构:

  • for循环
  • whie循环
  • do...while循环
  • foreach循环

for循环语法结构:

for(表达式1;表达式2;表达式3;)
{

  语句块;

}

for循环案例1+2+3...20的和:

           int sum = 0;//存放和的变量
            {
                for (int i = 1; i < 20; i++)
                {
                    sum += i;//累加所有数的和
                }
                Console.WriteLine("1到20之间整数和为:{0}",sum);
            }

 while循环语法结构:

while(布尔表达式)

{

  语句块;

}

 while循环案例输出1-8的整数:

            int i = 1;
            while(i<=8)
            {
                Console.WriteLine(i);
                i++;//注意:这里需要修改i的值
            }

do...while循环结构语法:

            int i = 1;
            do
            {
                Console.WriteLine(i);
                i++;//注意:这里需要修改i的值
            }while(i<=8);   

C#嵌套循环的使用案例:

 C#嵌套循环输出10行1~8之间的整数:

                for (int i = 1; i <= 10; i++)//外循环,i控制行
                {
                    for (int j = 1; j <= 8; j++)//内循环,j控制列
                    {
                        Console.WriteLine(j + "");//输出j
                    }
                    Console.WriteLine();//输出一行整数后再换行
                }      

 运行图:

 C#镶套循环输出直角三角形:

            for(int i=1;i<=5;i++)
            {
                for(int j=1;j<=i;j++)//外层循环,i用于控制行数的变化
                {
                    Console.Write("▲");//内层循环,j用于控制列数的变化
                }
                Console.WriteLine();//打印完一行后换行
            }

 运行图:

 C#镶套循环输出九九乘法表:

               for(int i=1;i<=9;i++)
                {
                    for(int j=1;j<=i;j++)
                    {
                        Console.Write("{0}*{1}={2}\t",i,j,i*j);
                    }
                    Console.WriteLine();
                }

运行图:

4、C#数组

 C#一位数组的声明:

数据类型 [ ] 数组名称;

C#数组的初始化:

(1)指定数组存储的元素序列,语法格式结构如下:

数据类型 [ ] 数组名称={值1,值2,值3,...,值n};

(2)指定数组长度,使用new关键字初始化数组,语法结构下:

 数据类型 [ ] 数组名称=new 数据类型[长度];

注意:数组里只能储存数据类型相同的数据!!!

注意:数组里只能储存数据类型相同的数据!!!

注意:数组里只能储存数据类型相同的数据!!!

Arrays.short();(升序)

例子:

int [ ] a={1,2,3}; 第一钟方式,长度为3(因为我们初始化了3个值)

int [ ] b=new int [4]; 第二种方式,长度为4

int [ ] c=new int [4] {1,2,3,4}; 这两种形式的结合,数组长度必须和元素个数匹配

int [ ] d=new int [ ] {1,2,3,4,5,6,7} 初始化了元素,长度可以省略 

 C#一维数组循环案例:

            string[] lx = new string[5];
            for (int i = 0; i < lx.Length; i++)
            {
                Console.WriteLine("请输入第{0}种军用飞机类型:", i + 1);
                lx[i] = Convert.ToString(Console.ReadLine());
                Console.WriteLine("是否继续输入(y/n)?:");
                string a = Console.ReadLine();
                if (a == "n")
                {
                    Console.WriteLine("信息输入完毕!");
                    break;
                }
            }

运行图:

C#一位数组求和与平均值:

            int sum = 0;//累加
            int n = 10;//决定用户输入的个数
            int[] num = new int[n];//保存用户输入的10个数
            //接收用户输入的10个数
            for(int i=0;i<num.Length;i++)
            {
                Console.WriteLine("请输入第{0}个数:",i+1);
                num[i] = Convert.ToInt32(Console.ReadLine());
                sum = sum + num[i];//求和
            }
            Console.WriteLine("\n您输入的数之和为:"+sum);
            Console.WriteLine("您输入的数平均值为:"+(sum*1.0/num.Length));

运行图:

 5、类与对象

类的概念:

泰迪是狗,加菲猫是猫,海绵宝宝是海绵,它们都是不同类型的事物,这里就体现了什么叫做类(区别、分类)

对象的概念:

假如有一堆的书,而《大主宰》是其中的具体一本,我们可以把《大主宰》这本书理解成就是一个对象。

属性的概念:

眼前有个妹纸,她叫小美她的特点是很漂亮,小美是具体的一个对象,她的特征是漂亮,这个特征在程序中就相当于属性。

 方法的概念:

方法是一种执行的方式,它调用等于一个军师,告诉调用它的对象它能做些神马。

定义类的语法结构:

[访问修饰符] class 类名
{
类的成员;
}

定义字段的语法结构:

[访问修饰符] 数据类型 字段名称;

属性定义语法如下:         自动属性定义语法如下:

[访问修饰符] 数据类型 属性名称                [访问修饰符] 数据类型 属性名称{get;set;}
{
get{return 字段;}
set{字段=value;}
}

构造方法定义语法如下:

[访问修饰符] 类名([参数列表的])

{
构造方法的主体;
}

对象定义语法如下:

类名 对象名=new 类名([参数列表]);   对象.属性=值;//赋值   变量=对象名.属性;//取值

实例方法的语法如下:

[访问修饰符] 返回类型 方法名([参数列表])

{
方法主体;
}

方法的参数:

[访问修饰符] 返回类型 方法名称([参数类型 参数名称1,参数类型 参数名称2,……,参数类型 参数名称n])

{
方法体
}

方法的返回值:

return 表达式;

实例方法的调用:

对象名.方法名([参数]);   //对于没有返回值的方法

变量名=对象名.方法名([参数]);   //对于有返回值的方法

静态方法:

[访问修饰符] static 返回类型 方法名 ([参数列表])
{
方法体;
}

 静态方法的调用:

1.静态的方法或变量是长期住留在内存中,直到程序关闭这个软件才会在内存中消失
2.静态方法的调用是无需构建对象类访问,直接用类名打点调用
3.静态方法内要访问本类中的成员变量时,该成员变量也必须是静态的

 

注:仅供学习与交流,有不懂的地方别来问我,因为:我也不想告诉你哈哈!

posted @ 2017-12-17 23:56  陈爸比  阅读(8361)  评论(0编辑  收藏  举报