C#语言 数据类型 类型转换
数据类型有 基本数据类型 和 引用数据类型 两大类型。
数据类型
C#语言 |
.NET(通用语言) |
大小(字节) |
值区间 |
||||
基本数据类型 |
值类型 |
整型 |
不能存在小数点,可以有负数 |
byte |
Byte |
1 |
0~255 |
short |
Int16 |
2 |
|||||
int |
Int32 |
4 |
|||||
long |
Int64 |
8 |
|||||
浮点型 |
有小数点/负数 |
foat |
Single |
4 |
|||
double |
Double |
8 |
|||||
decomal |
Decimal |
16 |
|||||
字符型 |
只能存在一个字符 |
char |
Char |
2 |
任意字符 |
||
布尔型 |
判断对错 |
bool |
Boolean |
1 |
True或false |
||
引用类型 |
字符串类型 |
string |
String |
字符序列 |
|||
日期时间 |
DateTime |
||||||
枚举类型 |
ENUM |
||||||
结构类型 |
struct |
string s=null; null 是一个空值/空数 在字符串里可以用
1、整型
int(最常用)
int a = 2;
2、浮点型:double(最常用)是C#默认小数类型,float用需加后缀f,decimal用需加后缀m。
double b = 3.14;
a = (int)b;
float c = 3.14f;
decimal d = 3.14m;
3、布尔型:用于判断,只允许放TRUE或者FALSE。
int a = 10;
int b = 15;
bool bb = a<b;
Console.WriteLine(bb); //程序启动就显示TRUE。
4、日期时间
获取当前时间
DateTime dt = DateTime.Now;
Console.WriteLine(dt); //就会显示当前的时间
定义一个时间
DateTime kl = new DateTime(2017, 4, 8); //这里的逗号可以改为任意字符串
Console.WriteLine(kl); //时间就会修改(显示)为2017-4-8 00::00:00
C#转义字符
应用在字符类型中 用反斜杠表示
\’ 单引号 \” 双引号 \\ 反斜杠 \0 空
\a 警告(产生峰鸣) \b 退格 \f 换页 \n 换行
\r 回车 \t 水平制表符 \v 垂直制表符
例子:
Console.WriteLine("H:\\音乐\\戏剧\\郭德纲\\于谦");
Console.ReadLine();
常量:只能够取值,不能重新赋值
const int f = 5;
f = 7;错误,不能重新赋值
基本的类型转换
1、自动转换(隐式转换)--从值类型转换到引用类型时候
2、强制转换(显式转换)--从引用类型转换到值类型时候,或者从浮点型转换到整形
当从一个引用类型转换到值类型时,必须引用类型中的数据元素,能够转换成值类型的容量范围内的数据才行,否则不能转。
⑴、用(),注:在被转换的数据左边加上小括号:(要被转换成的数据类型);
例子:int a;double b=12.3;a=(int)b;
⑵、用convert;
例子: int a; float c; double b=12.3;
a=convert.ToInt32(b);
c=convert.Tosingle(b);
⑶、用parse,常用;
例子: int a; double b=12.3;
a=int.parse(b);
注:int a = 2;
string s = a.ToString();
例子:输入三个数,求它们的和、差、积、商。
Console.WriteLine("请输入a=");
double a = double.Parse(Console.ReadLine());
Console.WriteLine("请输入b=");
double b = double.Parse(Console.ReadLine());
Console.WriteLine("两个数的和为"+(a+b)+",两个数的差为"+(a-b)+",两个数的乘积为"+(a*b)+",两个数的商为"+(a/b));
Console.ReadLine();
条件运转符
例子:x=(x>12)?1:2 // 假如想x>12, 那么进入1 否则进入2
练习题:
1、“请输入一个100以内的整数:”
“是不是7的倍数:是/不是”
“十位数是不是7:是/不是”
“个位数是不是7:是/不是”
Console.Write("请输入一个100以内的整数:");
int user = Convert.ToInt32(Console.ReadLine()); string end1 = (user % == ) ? user + "是7的倍数" : user + "不是7的倍数"; Console.WriteLine(user / ); string end2 = (user / == ) ? "十位数是7" : "十位数不是7"; Console.WriteLine(end2);
string end3=(user%==)?"个位数是7":"个位数不是7"; Console.ReadLine();
2、“请输入您的成绩(0-100):”
如果大于等于60,输出“及格了!”
如果小于60,输出“不及格,继续努力!”
Console.Write("请输入你的成绩:"); string chengji = Console.ReadLine(); int chengji1 = Convert.ToInt32(chengji); string end = (chengji1>=) ? "及格!" : "不及格!!!"; Console.WriteLine(end); Console.ReadLine();
3、“请输入第一个数:”
“请输入第二个数:”
“请输入+ - * /:”
结果:
//用户输入3个内容,分别是数字1,数字2,运算符
Console.Write("请输入第一个数:");
int a1 = Convert.ToInt32(Console.ReadLine());
Console.Write("请输入第二个数:");
int a2 = Convert.ToInt32(Console.ReadLine());
Console.Write("请输入运算符(+/-):");
string ysf = Console.ReadLine(); //根据用户输入的内容,进行运算,输出结果
int end = ysf == "+" ? a1 + a2 : a1 - a2; Console.WriteLine(end); Console.ReadLine();
4、“请输入一个1-100的整数:”
如果这个数小于50,输出“小”
如果这个数大于等于50,输出“大”
如果这个数是66,输出“小”
Console.Write("请输入一个1-100的整数:");
int a = Convert.ToInt32(Console.ReadLine()); string end = a < || a == ? "小" : "大"; Console.WriteLine(end); Console.ReadLine();
C#语言 数据类型 类型转换的更多相关文章
- Go语言 数据类型,流程控制
Go语言 数据类型,流程控制 人生苦短,Let's Go ! package main // 必须要有一个main包 import "fmt" func main() { fmt. ...
- C语言数据类型的转换
C语言的类型转换,一个是强制类型进行转换,而在这里要介绍的是自动的数据类型的转换,自动的数据类型转换很多时候是发生在多种数据类型混合使用的时候就会进行类型的转换,这样就会带来不能控制的结果,所以必须进 ...
- C语言数据类型的理解
数据类型的定义: 作为一种语言,必然有所谓的语言组成要素,就像日常生活中人们之间的交流一样,首先会有字,字再成词组,再来就是句子,后来呢就是段落等等.当然不同的字,词,句这些在一起,就会有不同的表达效 ...
- R语言数据类型
R语言数据类型[转!!]Zhao-Pace https://www.cnblogs.com/zhao441354231/p/5970544.html R语言用来存储数据的对象包括: 向量, 因子 ...
- C语言数据类型_02
C语言数据类型:
- R语言 数据类型
R语言数据类型 通常,在使用任何编程语言进行编程时,您需要使用各种变量来存储各种信息. 变量只是保留值的存储位置. 这意味着,当你创建一个变量,你必须在内存中保留一些空间来存储它们. 您可能想存储各种 ...
- [C语言]数据类型与计算
------------------------------------------------------------------------------------------------- 实际 ...
- C语言数据类型取值范围
一.获取数据类型在系统中的位数 在不同的系统中,数据类型的字节数(bytes)不同,位数(bits)也有所不同,那么对应的取值范围也就有了很大的不同,那我们怎么知道你当前的系统中C语言的某个数据类型的 ...
- 详解C语言的类型转换
1.自动类型转换 字符型变量的值实质上是一个8位的整数值,因此取值范围一般是-128-127,char型变量也可以加修饰符unsigned,则unsigned char 型变量的取值范围是0-255( ...
随机推荐
- C - Bear and Five Cards
Description A little bear Limak plays a game. He has five cards. There is one number written on each ...
- TypeScript完全解读(26课时)_15.模块和命名空间
新建文件夹ts-modules 并新建index.ts 在根index.ts内引入 新建a.ts文件 ts在1.5之前有两个概念一个是内部模块,一个是外部模块,因为在1.5之前es6的标准还没有提出 ...
- spown mj
local function getmjvalnew(key) local keynew = {} local sumnval = 0 for _, v in ipairs(key) do if v& ...
- 黑科技抢先尝 - Windows全新终端初体验(附无需编译就能安装的Preview版本及代码Build全过程)
目录 将Window 10 升级到1903版本 安装好git, 从github上clone代码 安装 VS 2019 和 .NET core 3.0 SDK 重定解决方案目标 设置好编译平台和启动的项 ...
- Swift3.0 数组(Array)
学习了数组的定义,创建,和元素的,增,删,改 //定义数组类型 var array1: Array<String> var array2:[String] //创建一个空数组,int类型元 ...
- MFC控件:listctrl使用方法总结
以下未经说明,listctrl默认view 风格为report 相关类及处理函数 MFC:CListCtrl类 SDK:以 “ListView_”开头的一些宏.如 ListView_InsertCol ...
- HDU2896【AC自动机-模板】
思路: 因为不同病毒特征码不会相同. AC自动机,然后对于每一个输出即可. 注意:以上字符串中字符都是ASCII码可见字符(不包括回车);G++ MLE. //#include <bits/st ...
- IT兄弟连 JavaWeb教程 Servlet会话跟踪 Session技术
Servlet提供了HttpSession接口,该接口提供了一种跨多个页面请求或访问网站时识别用户以及存储有关用户信息的方式. Servlet容器使用这个接口来创建一个HTTP客户端和HTTP服务器之 ...
- MQ简介1
站在巨人的肩膀上 关于消息队列的使用 一.消息队列概述消息队列中间件是分布式系统中重要的组件,主要解决应用解耦,异步消息,流量削锋等问题,实现高性能,高可用,可伸缩和最终一致性架构.目前使用较多的消息 ...
- DBUtils C3P0 阿里巴巴德鲁伊连接池工具的下载