C#基础 数据类型 类型转换
本节主要讲解数据类型和各类型之间的转换,两点都是重点,难点在于各种转换的活学活用。
一 数据类型
(一)基本数据类型
1 值类型
(1)整形 int 十位字符长度
Long 最长
bute 0-----255
Short 介于long与int之间
(2)浮点型 float float t = 数值f/F;
double double d = 数值;
decimal decimal dd = 数值m/M
整形只能为整数,浮点型可放整数小数,都可放负数。
2布尔型 bool
boll ok ; ok = true 只有对错两种
Ok=false
3字符型 char
char = ‘ ‘; 单引号,放一个字符,不能为空
(二)引用类型
1字符串型 string (之前有讲过)
2时间日期型 DateTime
DateTime dt = new DateTime(int年,int月,int日)
DateTime nowdt = DateTime.Now 获取系统当前时间
string = “ ”;
String = “null”; 只有字符串类型可以为空
二 数据类型转换
1隐式转换:从值类型转换到引用类型 (装箱)
string a = “10”;
Int b = 20;
String s = a + b;
Console.Writeline(s)
其输出结果为1020 ,自动把int转为steing的字符串类型
string最厉害,其他任何类型与他相加都会被string类型同化掉
2显式转换(强制转换): 从引用类型转换到数值型 (拆箱)
从浮点型转换到整形。
Int a = int.parse(s);
string s = “10”; int a = (int)s; 最好不用
Int a = convert.ToInt32(s) 推荐使用
显式转换有三种方法推荐使用第三种。
显式转换特别容易报错,是唯一一个能让程序在运行过程中因用户的输入而导致报错的地方。
* 字串符类型的强制转换
Int a = 10;
string s = “10”
string ss = a + s; ———— string ss = s+ a.ToString();
相比较强制转换更稳定不容易出错。
* 变量 int a = 10;
a = 20 可以重新继续覆值
常量 const int a = 10; 只能覆值一次
作业
“请输入第一个学生的姓名:”
“请输入第一个学生的年龄:”
“请输入第一个学生的语文成绩:”
“请输入第一个学生的数学成绩:”
“请输入第一个学生的英语成绩:”
“------------------------------”
“请输入第二个学生的姓名:”
“请输入第二个学生的年龄:”
“请输入第二个学生的语文成绩:”
“请输入第二个学生的数学成绩:”
“请输入第二个学生的英语成绩:”
“------------------------------”
“请输入第三个学生的姓名:”
“请输入第三个学生的年龄:”
“请输入第三个学生的语文成绩:”
“请输入第三个学生的数学成绩:”
“请输入第三个学生的英语成绩:”
“-------------------成绩展示---------------------”
“1、张三的语文成绩是:“100”,数学成绩是:“90”,英语成绩是:“80”,总分是:“270”。”
“2、张三的语文成绩是:“100”,数学成绩是:“90”,英语成绩是:“80”,总分是:“270”。”
“3、张三的语文成绩是:“100”,数学成绩是:“90”,英语成绩是:“80”,总分是:“270”。”
语文总分是“”,平均分是“”。
数学总分是“”,平均分是“”。
英语总分是“”,平均分是“”。
所有人员的所有科目分数总和是“”。
namespace _2._19作业
{
class Program
{
static void Main(string[] args)
{
//“请输入第一个学生的姓名,年龄,语文,数学,英语成绩” Console.Write("请输入第一个学生的姓名;"); string xingming1 = Console.ReadLine(); Console.Write("请输入第一个学生的年龄:"); string nianling1 = Console.ReadLine(); Console.Write("请输入第一个学生的语文成绩:"); string yuwen1 = Console.ReadLine(); Console.Write("请输入第一个学生的数学成绩:"); string shuxue1 = Console.ReadLine(); Console.Write("请输入第一个学生的英语成绩:"); string yingyu1 = Console.ReadLine(); Console.WriteLine("----------------------------------------------------------------------------------"); //“请输入第二个学生的姓名,年龄,语文,数学,英语成绩” Console.Write("请输入第二个学生的姓名;"); string xingming2 = Console.ReadLine(); Console.Write("请输入第二个学生的年龄:"); string nianling2 = Console.ReadLine(); Console.Write("请输入第二个学生的语文成绩:"); string yuwen2 = Console.ReadLine(); Console.Write("请输入第二个学生的数学成绩:"); string shuxue2 = Console.ReadLine(); Console.Write("请输入第二个学生的英语成绩:"); string yingyu2 = Console.ReadLine(); Console.WriteLine("----------------------------------------------------------------------------------"); //“请输入第三个学生的姓名,年龄,语文,数学,英语成绩” Console.Write("请输入第三个学生的姓名;"); string xingming3 = Console.ReadLine(); Console.Write("请输入第三个学生的年龄:"); string nianling3 = Console.ReadLine(); Console.Write("请输入第三个学生的语文成绩:"); string yuwen3 = Console.ReadLine(); Console.Write("请输入第三个学生的数学成绩:"); string shuxue3 = Console.ReadLine(); Console.Write("请输入第三个学生的英语成绩:"); string yingyu3 = Console.ReadLine(); Console.WriteLine("---------------------------------成绩展示-------------------------------------------------"); // 1、xx的语文成绩是:“__”,数学成绩是:“__”,英语成绩是:“__”,总分是:“__”。”
// 2、xx的语文成绩是:“__”,数学成绩是:“__”,英语成绩是:“__”,总分是:“__”。”
// 3、xx的语文成绩是:“__”,数学成绩是:“__”,英语成绩是:“__”,总分是:“__”。” decimal zongfe1 = Convert.ToDecimal(yuwen1) + Convert.ToDecimal(shuxue1) + Convert.ToDecimal(yingyu1); decimal zongfe2 = Convert.ToDecimal(yuwen2) + Convert.ToDecimal(shuxue2) + Convert.ToDecimal(yingyu2); decimal zongfe3 = Convert.ToDecimal(yuwen3) + Convert.ToDecimal(shuxue3) + Convert.ToDecimal(yingyu3); Console.WriteLine("1、" + xingming1 + "的语文成绩是:“" + yuwen1 + "”,数学成绩是:“" + shuxue1 + "”,英语成绩是:“" + yingyu1 + "”,总分是:“" + zongfe1.ToString() + "“。"); Console.WriteLine("2、" + xingming2 + "的语文成绩是:“" + yuwen2 + "”,数学成绩是:“" + shuxue2 + "”,英语成绩是:“" + yingyu2 + "”,总分是:“" + zongfe2.ToString() + "“。"); Console.WriteLine("3、" + xingming3 + "的语文成绩是:“" + yuwen3 + "”,数学成绩是:“" + shuxue3 + "”,英语成绩是:“" + yingyu3 + "”,总分是:“" + zongfe3.ToString() + "“。"); //语文总分是“”,平均分是“”。
//数学总分是“”,平均分是“”。
//英语总分是“”,平均分是“”。
//所有人员的所有科目分数总和是“”。 decimal yuwenzongfe = Convert.ToDecimal(yuwen1)+Convert.ToDecimal(yuwen2)+Convert.ToDecimal(yuwen3); decimal shuxuezongfe = Convert.ToDecimal(shuxue1) + Convert.ToDecimal(shuxue2) + Convert.ToDecimal(shuxue3); decimal yingyuzongfe = Convert.ToDecimal(yingyu1) +Convert.ToDecimal(yingyu2) +Convert.ToDecimal(yingyu3); Console.WriteLine("语文总分是“" + yuwenzongfe.ToString() + "”,平均分是“" +( yuwenzongfe/).ToString() + "”。"); Console.WriteLine("数学总分是“" + shuxuezongfe.ToString() + "”,平均分是“" + (shuxuezongfe / ).ToString() + "”。"); Console.WriteLine("英语总分是“" + yingyuzongfe.ToString() + "”,平均分是“" + (yingyuzongfe / ).ToString() + "”。"); Console.WriteLine("所有人员的所有科目分数总和是“" + (zongfe1+zongfe2+zongfe3).ToString()+"”。"); Console.ReadLine();
}
}
C#基础 数据类型 类型转换的更多相关文章
- [.net 面向对象编程基础] (4) 基础中的基础——数据类型转换
[.net面向对象编程基础] (4)基础中的基础——数据类型转换 1.为什么要进行数据转换? 首先,为什么要进行数据转换,拿值类型例子说明一下, 比如:我们要把23角零钱,换成2.30元,就需要把整形 ...
- 【Swift】学习笔记(一)——熟知 基础数据类型,编码风格,元组,主张
自从苹果宣布swift之后,我一直想了解,他一直没有能够把它的正式学习,从今天开始,我会用我的博客来驱动swift得知,据我们了解还快. 1.定义变量和常量 var 定义变量,let定义常量. 比如 ...
- [五]基础数据类型之Short详解
Short 基本数据类型short 的包装类 Short 类型的对象包含一个 short 类型的字段 原文地址:[五]基础数据类型之Short详解 属性简介 值为 215-1 ...
- python基础篇_002_基础数据类型
Python基础数据类型 1.int # int 用于计算 num = 3 # int 与其他数据类型转换 int_to_str = str(num) # 数字加引号 print(int_to_str ...
- Python基础数据类型-字符串(string)
Python基础数据类型-字符串(string) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 本篇博客使用的是Python3.6版本,以及以后分享的每一篇都是Python3.x版 ...
- 基础数据类型的坑和集合及深浅copy
一.基础数据类型的坑: 元组: 如果一个元组中,只有一个元素,且没有逗号,则该"元组"与里面的数据的类型相同. # 只有一个数据,且没有逗号的情况: print(tu1,type( ...
- [日常] Go语言圣经--作用域,基础数据类型,整型
go语言圣经-作用域 1.一个声明语句将程序中的实体和一个名字关联,比如一个函数或一个变量 2.一个变量的生命周期是指程序运行时变量存在的有效时间段;声明语句的作用域对应的是一个源代码的文本区域,它是 ...
- Python中的基础数据类型
Python中基础数据类型 1.数字 整型a=12或者a=int(2),本质上各种数据类型都可看成是类,声明一个变量时候则是在实例化一个类. 整型具备的功能: class int(object): & ...
- python基础数据类型补充
python_day_7 一. 今日主要内容: 1. 补充基础数据类型的相关知识点 str. join() 把列表变成字符串 列表不能再循环的时候删除. 因为索引会跟着改变 字典也不能直接循环删除.把 ...
随机推荐
- 2019.02.21 bzoj2829: 信用卡凸包(凸包)
传送门 题意:给nnn个A∗BA*BA∗B的矩形,其中每个矩形的四个角被改造成了半径为rrr的四分之一 圆,问这些矩形的凸包周长. 思路:考虑求出圆心的凸包周长然后加上一个整圆的周长,证明很简单,略掉 ...
- 走进JDK(二)------String
本文基于java8. 基本概念: Jvm 内存中 String 的表示是采用 unicode 编码 UTF-8 是 Unicode 的实现方式之一 一.String定义 public final cl ...
- crontab定时时间解释
用户所建立的crontab文件中,每一行都代表一项任务,每行的每个字段代表一项设置,它的格式共分为六个字段,前五段是时间设定段,第六段是要执行的命令段,格式如下: minute hour day mo ...
- Rabbit mq 简单应用
参考:http://rabbitmq.mr-ping.com/AMQP/AMQP_0-9-1_Model_Explained.html 简答模式(exchange不工作) import pika # ...
- 初识Twisted(一)
pip install Twisted 安装Twisted库 from twisted.internet import reactor #开启事件循环 #不是简单的循环 #不会带来任何性能损失 rea ...
- Spring AOP的实现及源码解析
在介绍AOP之前,想必很多人都听说AOP是基于动态代理和反射来实现的,那么在看AOP之前,你需要弄懂什么是动态代理和反射及它们又是如何实现的. 想了解JDK的动态代理及反射的实现和源码分析,请参见下面 ...
- 我的FP感悟
FP概要: 我主要总结了以下5点: 函数是一等公民: 函数的参数是函数,返回值是函数,类型还是函数... 舍弃语句,拥抱表达式: 表达式就一定有返回值. 无副作用: 不修改外部系统的状态. immut ...
- Netty 发送消息失败或者接收消息失败的可能原因
1. 消息发送失败: 检查通道是否建立成功 Netty中的通道建立采用的是异步方式,获取到的通道对象可能为空或初始化未完成: 2. 接收的消息有丢失 消息可能会粘包,是否有拆包机制
- 声反馈抑制使用matlab/simulink仿真
第一份工作时做啸叫抑制的仿真,调大0.3可以有大的啸叫产生,下图的SIMULINK仿真模型 实现移相有多种方法: 1.iir实现 2.FFT实现 3.使用FIR实现 所有信号均可以由正弦信号叠加而成.
- 深度学习笔记(七)SSD 论文阅读笔记
一. 算法概述 本文提出的SSD算法是一种直接预测目标类别和bounding box的多目标检测算法.与faster rcnn相比,该算法没有生成 proposal 的过程,这就极大提高了检测速度.针 ...