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() 把列表变成字符串 列表不能再循环的时候删除. 因为索引会跟着改变 字典也不能直接循环删除.把 ...
随机推荐
- ABP框架系列之三十九:(NLayer-Architecture-多层架构)
Introduction Layering of an application's codebase is a widely accepted technique to help reduce com ...
- 如何通过Git GUI将自己本地的项目上传至Github(转)
githud是一个程序员以后成长都会使用到的,先不说很多优秀的开源框架都在这上面发布,光是用来管理自己的demo都已经让人感到很方便,用得也很顺畅.而真正让我下定决心使用github的原因是因为两次误 ...
- 2019swpuj2ee作业2--HTTP协议
简介: HTTP协议:超文本传输协议.它允许将超文本标记语言(HTML)文档从Web服务器传送到客户端的浏览器.在七层模型中属于应用层.是一种请求/响应式的协议. 主要特点: (1)支持客户端/服 ...
- MySQL-5.7安装
2.1 下载mysql 网址:https://www.mysql.com/ [root@localhost ~]# mkdir -p /root/soft/MySQL [root@localhost ...
- noip第21课资料
- [翻译] FastReport TfrxReport组件使用
一:加载和保存报表 报表默认保存在项目窗体文件中,大多数情况下,没有更多的操作要深圳市, 因此,你不需要采取特别措施来载入报告.如果你决定保存报表到文件或是数据库中 (这样更灵活, 比如修改报表不用重 ...
- MVC身份验证及权限管理(转载)
from https://www.cnblogs.com/asks/p/4372783.html MVC自带的ActionFilter 在Asp.Net WebForm的中要做到身份认证微软为我们提供 ...
- springboot之使用redistemplate优雅地操作redis
概述 本文内容主要 关于spring-redis 关于redis的key设计 redis的基本数据结构 介绍redis与springboot的整合 sringboot中的redistemplate的使 ...
- Android开发工程师文集-Activity生命周期,启动方式,Intent相关介绍,Activity详细讲解
前言 大家好,给大家带来Android开发工程师文集-Activity生命周期,启动方式,Intent相关介绍,Activity详细讲解的概述,希望你们喜欢 Activity是什么 作为一个Activ ...
- LabVIEW(十):数组和簇
一.数组 1.创建数组 (1).前面板右键>“数组.矩阵与簇”>数组. (2).前面板右键>(选择要添加的数组数据类型,比如创建数值数组)数值>将“数值输入控件”拖入数组中. ...