002.变量、类型转换、运算符

1、变量

命名规则:

a 只能是字母(a-z),数字(0-9),下划线(_)
b 不能用数字开头
c 不能是C#中的关键字

命名规范:

a 简短,有语义的单词或组合
b 骆驼命名法(从第二个单词开始,首字母大写)myName

使用步骤:

a 声明并赋值(例:int age=18)
b 使用(输入输出、判断、运算等...)
* 先赋值再使用

2、数据类型

整形和非整形:
整形:sbyte(有符号的-128~127) byte(0~255 )一个字节8位
short(-32768~32767)ushort(0~65535)2个字节16位
int(-2^63~2^63-1) uint(0~^32-1)long(-2^63~2^63-1)

非整形:
float:单精度浮点型 f
double:双精度浮点型 d
decimal: m

非数值:
char:存储单个字符
string:双引号引起来的任意长度的字符串
bool:存储true或false,或结果为bool值的表达式

a +连接符连接字符串
b 占位符{数字}数字:0~变量列表的数量-1
Console.WriteLine("格式化字符串", 变量列表);

补充(了解二进制):
十进制数计算特点:逢十进一
计算机的二进制:
236:3*10^2+3*10^1+6*10^0
01001001:0*2^7+1*2^6+1.......(二进制转成十进制)
八进制:缩短二进制
十六进制:颜色

3、运算符
+、-、*、/、&&、||、<、>、<=、>=、++(自增)、--(自减)、%(取余数)、!=
例:
int n=1,m=1;
//做后缀,先引用变量原来得值,然后再自增;(先运算再+1)int x=n;n++
int x=n++;
//做前缀,先执行自增运算再使用变量的值; (先+1再运算) m++;int y=m
int y=++m;
Console.WriteLine("x={0}\ny={1}",x,y);
Console.ReadKey();

逻辑运算符
&&(逻辑与):条件表达式1&&条件表达式2 同时满足(两个条件都为真,结果才为真)
||(逻辑或):条件表达式1||条件表达式2 或者(只要有一个条件为真,结果就为真)
! (逻辑非): !条件表达式,如果条件表达式为真,结果为假,如果条件表达式为假,结果为真
例: Console.WriteLine("输入成绩");
int writeScore = int.Parse(Console.ReadLine());
Console.WriteLine("输入成绩");
int labScor = int.Parse(Console.ReadLine());
bool isParse = writeScore >= 60 && labScor >= 60;
Console.WriteLine(isParse);
Console.ReadKey();

数值运算符
快捷运算符:+=、-=、*=、/=
例:
sum+=1等于sum=sum+1;

三元运算符
例:
Console.WriteLine("请输入一个数");
int num1=int.Parse(Console.ReadLine());
Console.WriteLine("请输入一个数");
int num2 = int.Parse(Console.ReadLine());
int max = num1 > num2 ? num1 : num2;
Console.WriteLine("两个数中最大的是{0}", max);
Console.WriteLine("请输入一个数");
int num3 = int.Parse(Console.ReadLine());
max = max > num3 ? max : num3;
Console.WriteLine("三个数中最大的数是:{0}",max);
Console.ReadKey();

关于逻辑运算符的练习:
接收键盘输入的年份,判断该年是否是闰年?
闰年的条件:年份能被4整出但是不能被100整除,或者能被400整除。
代码:
第一种方法

Console.WriteLine("请输入一个年份?");
int year = int.Parse(Console.ReadLine());
//bool isYear = year % 4 == 0 && year % 100 != 0 || year % 400 == 0;
//Console.WriteLine(isYear);
//Console.ReadKey();
string isYear = year % 4 == 0 && year % 100 != 0 || year % 400 == 0?"闰年":"平年";
Console.WriteLine(isYear);
Console.ReadKey();

第二种方法

if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0)
{
Console.WriteLine("{0}年是闰年", year);
}
else
{
Console.WriteLine("{0}是平年", year);
}

Console.ReadKey();

运算符分类:
a 一元运算符
b 二元运算符
c 三元运算符

4、类型转换
数值类型之间:
隐式转换(自动转换):类型兼容 目标类型大于源类型 (范围)从小的转成大的(转换不会失败也不会丢失精度)

显式转换(强制转换):可能失败,也有可能损失精度
强制转换的语法:
(目标类型)表达式;

字符串类型转换成其他类型-->XXX.Parse(string); XXX---类型
想要得到的数据类型.Parse()
例:
string str="1";
int i=int.Parse(str);
double i=double.Parse();
float i=float.Parse();

其他类型转换成字符串类型:-->XXX.ToString(); XXX---(表达式、值、变量名)
变量名.ToString();

任意类型转换
常用的Convert方法:
int i=Convert.ToInt32(15.22);(类似于四舍五入)
float f=Convert.ToSingle();
double d=Convert.ToDouble();
bool b=Convert.Boolean();

总结:

1.变量
数据类型 变量名=值

使用变量的时候必须先赋值
赋的值和变量的数据类型匹配 int i=2;double d=2.5;

变量的命名规则和规范

2.数据类型
数值 非数值
数值:整形 非整形
整形:styte byte short ushort int uint long ulong
非整形:float double decimal
非数值:char string bool

3.运算符
一元、二元、三元

算数运算符
比较运算符
条件运算符
赋值运算符
快捷运算符

优先级别:()>一元运算符(! ++ --)>算数运算符(*/%>+-)比较运算符(>、<、>=、<=优先于==、!=)>逻辑运算符(&&、||)>赋值和快捷运算符

4.类型转换
数值类型之间
隐式转换:(自动转换)double d=20;
显式转换:(强制转换)int i=(int)d;double d1=(double)i;

字符串<---->其它类型
XXX.Parse(string) string:必须是目标类型的有效表示格式 XXX:类型
XXX,ToString(); XXX:变量、表达式、值
Convert.ToInt();

作业:
1.温度转换器
华氏度=(摄氏度-32)*5/9,要求输入日期、摄氏度,输出"今天是***,温度是***华氏度";
double f=9.0/5*C+32

代码:
Console.Title = "温度转换器";
Console.WriteLine("欢迎使用温度转换器!");
Console.WriteLine("请输入今天的温度(摄氏度)");
double s = Convert.ToDouble(Console.ReadLine());
double f = 9.00 / 5 * s + 32;
Console.WriteLine("今天是:{0}\n今天的温度是{1}华氏度", DateTime.Now.Date, f);
Console.ReadKey();

2.分解整数
接收键盘输入的一个4位整数,分别输出个位、十位、百位、千位。
如:1234 分别输出 个位:4 十位:3 百位:2 千位:1
除10变成最低位取余

代码: Console.WriteLine("请输入一个四位数的整数!");
int number=Convert.ToInt32(Console.ReadLine());
int nb1=number%10;//个位
int nb2 = number / 10 % 10;//十位
int nb3 = number/100%10;//百位
int nb4 = number/1000;//千位
Console.WriteLine("个位数是{0},十位数是{1},百位数是{2},千位数是{3}", nb1, nb2,nb3,nb4);
Console.ReadKey();

时间: 2024-08-08 01:08:37

002.变量、类型转换、运算符的相关文章

C#变量类型转换

1.变量 变量是指在程序的运行过程中随时可以发生变化的量. 语法:数据类型 变量名; 例如:string stra="这是一个字符串"; 2.常量 也称常数,是一种恒定的或不可变的数值或数据项. 语法: const 数据类型 常量名 = 常量值; 例如:const string strconst="常量"; 3.数据类型: 在C#当中,数据类型分为两种,值类型与引用类型. 值类型,表示实际数据,只是将值存放在内存中,值类型都存储在堆栈中,包括:简单类型:int,ch

C语言---程序的一般形式、数据类型、常量变量、运算符、表达式、格式化输入输出

1. 程序的一般形式 (1)注释 ① 分类:单行注释( // ): 注释一行.多行注释( /**/ ): 在这个区间内,都属于多行注释,可以换行. ② 作用:提示代码的作用,提示思路   不写注释的后果:出来混总是要还的. ③ 单行注释不能换行 (2) #include  #import ① 导入文件,系统提供类库文件中包含一些功能函数,如果想在某个文件中使用,必须导入需要的文件. ② stdio  标准输入输出  standard input output (3) main  函数,又称主函数

自增自减运算符的重载(强制类型转换运算符重载)

前置运算符重载为一元运算符,后置运算符重载为二元运算符. Operator int() { return n; } int作为一个强制类型转换运算符被重载, Demo s; (int)s;       //等效于s.int(): 强制类型转换运算符重载时, 不能写返回值类型 实际上其返回值类型----强制类型转换运算符代表的类型 只能作为成员函数,不能作为友元函数或普通函数 转换构造函数和类型转换运算符有一个共同的功能:当需要的时候,编译系统会自动调用这些函数,建立一个无名的临时对象(或临时变量

C++ Primer 学习笔记_29_操作符重载与转换(4)--转换构造函数和类型转换运算符归纳、operator new 和 operator delete 实现一个简单内存泄漏跟踪器

C++ Primer 学习笔记_29_操作符重载与转换(4)--转换构造函数和类型转换运算符归纳.operator new 和 operator delete 实现一个简单内存泄漏跟踪器 一.转换构造函数 可以用单个实参来调用的构造函数定义从形参类型到该类型的一个隐式转换.如下: class Integral { public: Integral (int = 0); //转换构造函数 private: int real; }; Integral A = 1; //调用转换构造函数将1转换为In

黑马程序员——Java基础语法(一) --- 关键字、标识符、注释、常量和变量、运算符

------<a href="http://www.itheima.com" target="blank">Java培训.Android培训.iOS培训..Net培训</a>.期待与您交流! ------- 本篇博文主要总结java的基础语法,主要的内容包括:关键字.标识符.注释.常量和变量.运算符几部分. 一.关键字 关键字是被Java语言赋予了特殊含义的单词.关键字中所有的字母都是小写. java中的关键字主要包括如下几部分: 1.用于定

黑马程序员——01.Java编程基础(一) ——常量、变量、运算符

一.Java的基础组成 1.关键字--被赋予特殊含义的单词 ????????????学习Java的过程中去记忆. 2.标识符---就是指名称(类名.对象名.变量名.函数名.对象名等) ? ? ? ?????????1.26?个英文字母的大小写.0~9数字._和$(不允许有空格) ? ? ? ? ????????2.数字不能开头,关键字不能用来命名 ? ? ? ?????????3.类名-首字母大写(XxxYyyZzz);函数名-(xxxYyyZzz);变量名对象名(xxxyyyzzz) (1)和

C++静态成员函数,静态成员变量,运算符重载

当一个函数不属于某个具体的实例而属于整个类,那么这个函数最好写成静态成员函数,这样就可以直接用类名调用 Class::Func() 对于一般成员函数当用obj.Func()调用函数时,编译器会将其编译成TypeOf(obj)::Func()的样式,所以静态成员函数不能这么调用 友元函数和静态成员函数都不属于类,调用时都不会传入this,所以不可以使用 只让本类对象共享数据,让成员变量声明为static,静态数据成员的初始化要放在外面,class::name = value;因为其属于类,所以分配

C#面向过程之编译原理、变量、运算符

.net基础:.net与C# .net是一个平台 c#是一门语言 .net的用途a.桌面应用程序 b.网站应用程序 c.专业游戏开发(XBOX360) d.嵌入式设备软件开发 e.智能手机APP开发 f.平板电脑APP开发 正题:static void Main(string [] args) 主函数.方法入口 编译原理:1.编写源代码:2.C#编译器将C#源代码编译成MSIL:3.将中间代码交给CLR的即时编译器(JIT)将微软中间语言转化成相对应的机器码(CPU指令)4.交给CPU运行机器码

01.Java编程基础(一) ——常量、变量、运算符

一.Java的基础组成 1.关键字--被赋予特殊含义的单词 ????????????学习Java的过程中去记忆. 2.标识符---就是指名称(类名.对象名.变量名.函数名.对象名等) ? ? ? ?????????1.26?个英文字母的大小写.0~9数字._和$(不允许有空格) ? ? ? ? ????????2.数字不能开头,关键字不能用来命名 ? ? ? ?????????3.类名-首字母大写(XxxYyyZzz);函数名-(xxxYyyZzz);变量名对象名(xxxyyyzzz) (1)和

Java基础语法(一)---关键字、常量、变量、运算符

Java基础语法(一)---关键字.常量.变量.运算符一.关键字 定义:被Java赋予了特殊含义的单词. 特点:体现上都是英文小写. 1. 用于定义数据类型的关键字 基本数据类型: 整数类型: byte(1字节,最大值127) short(2字节,最大值为2^15-1) int(4字节,最大值为2^31-1) long(8字节,最大值为2^63-1) 浮点类型: float (单精度实数在内存中占32bit 有效数字为6~7位) double(双精度实数占内存单元为64bit 有效数字为15~1