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#变量的输出:

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;)
{

  语句块;

}

扫描二维码关注公众号,回复: 3661645 查看本文章

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.静态方法内要访问本类中的成员变量时,该成员变量也必须是静态的

猜你喜欢

转载自www.cnblogs.com/ZhangJiXuan/p/9826194.html
今日推荐