2、C#基础整理(运算符、数据类型与转换、var关键字)
·运算符
数学运算符:+ - * / %
比较运算符:< > = <= >= != 返回bool值
逻辑运算符:&&并且、||或者,两者运行顺序无先后
逻辑非"!": 只作用于紧跟的代码,数学运算符(在有括号的情况下成立)<优先级<比较运算符
运算顺序:"(* / %)">"(+ -)", 逻辑运算符,赋值运算符“=”
自增“++”自减“--”:写在变量前就先++后赋值,优先级>加减乘除模;写在变量后就先赋值后++,优先级<加减乘除模。如:
int a = ;
int b = ;
int c = ++a + b;
int d = a++ + b;
Console.WriteLine(c +","+ d+","+a);
c,d,a的输出结果分别是1,1,2
条件运算符 (比较表达式)?(满足表达式:语句一):(不满足表达式:语句二)
其他赋值运算符:+= -= /= *= %=
·数据类型
值类型
int,long,double,float,decimal
1.sbyte--有符号 byte--无符号(正数)255
2.int long short--有符号 uint ulong ushort--无符号
3.enum枚举 struct结构体
引用类型
1.class 委托 dynamic 接口 object string
2.object基类 所有类型的父类(统称)
3.string分段方法:string.Join("分隔符",string数组)
常量(const)
const使变量转换为常量,方法:const int = 1
隐式类型
var myInt= 0;var myBool = true……(强类型数据,通过var来代替正式的数据类型名)
匿名类型
var student = new {name = "李明", Age = 19}
=>class student{ public string name{get;set} public int age{get;set}} student s = new student{name = "李明",age = 19}
用自动属性封装各个数据。
·类型转换
1、值类型转为值类型:强制转换。例:
int i = ; int s = ;
double jieguo = (double)i/s; double i1 = 4.5; int s1 = ;
double jieguo1 = i1 / (double)s1;
2、值类型转换成引用类型:显式转换。例:
//转换为字符串ToString
string j = i.ToString();
Console.WriteLine(j);
//j现在是字符串形式
3、引用类型转换为值类型:隐式转换(需要在值类型的承受范围内,如“1.23”就不能转换成int整数型)。例:
string st = "1.35";
double dd = double.Parse(st);
double ds = Convert.ToDouble(st);//另一种方法 int ss = int.Parse(st);//Wrong!不能运行
int ii = (int)double.Parse(st);//转换为整型时需要先转换为double型,默认取floor值 Console.WriteLine(dd);//结果是1.35
Console.WriteLine(ii);//结果是1
·练习:
1、从控制台输入底面半径和高,求圆柱的表面积
Console.WriteLine("请输入底边半径和高:");
double di = double.Parse(Console.ReadLine());
double h = double.Parse(Console.ReadLine());
double dimianji = 3.14 * r * r;
double cemianji = * 3.14 * r * h;
double biaomianji = dimianji * + cemianji;
Console.WriteLine("圆柱的表面积是:{0}",biaomianji);
查看答案
2、(含if语句的)从控制台输入一个月份,如果这个月份是1~6月,就输出“这是上半年”,否则输出“这是下半年”
Console.WriteLine("请输入一个月份:");
int mon = int.Parse(Console.ReadLine());
bool pan = mon<=;
if (pan == true)
Console.WriteLine("这是上半年");
else
Console.WriteLine("这是下半年");
查看答案
2、C#基础整理(运算符、数据类型与转换、var关键字)的更多相关文章
- C#基础(八)——C#数据类型的转换
C#数据类型的转换主要有以下几种方式: 1.强制转换 注意:char类型不能强制转换成int,如果使用强制转化,得到的是原整数的ASCII码值. 2.class.parse(string类型的变量), ...
- Python基础学习Day3 数据类型的转换、int、str、bool、字符串的常用方法、for循环
一.数据类型的转换 常用的是:int 转str.str转int.int转bool 时 非零即为 True . # 数据类型之间转换 ***** # int <--> str str(i ...
- JavaScript基础知识(数据类型及转换、运算符)
9.数据类型 概念:表示当前存储的数据的分类(表示数字 - 整数和小数) u 原始类型(原始值) -----[typeof运算符:判断变量的原始类型] *number(数字):表示数字 ...
- while循环,格式化输出%,运算符,数据类型的转换,编码的初识,
1.内容总览 while循环 格式化输出 运算符 and or not 编码的初识 2. 具体内容 while 循环 where:程序中:你需要重复之前的动作,输入用户名密码时,考虑到while循环. ...
- 1、C#基础整理(进制转换的方法)
进制 二进制转换为十进制(展权相加法) 110101 =1*2^5+1*2^4+0*2^3+1*2^2+0*2^1+1*2^0 1. 写2 2. 标指数(从右到左) 3. 乘系数(一一对应) 4 ...
- 01-Java基础知识:数据类型与变量、标识符、运算符、表达式
Java基础知识:数据类型与变量.标识符.运算符.表达式 一.数据类型 Java定义了基本数据类型.引用数据类型.自定义类型. 八种基本数据类型:byte (1). short (2). int ( ...
- 语言基础:C#输入输出与数据类型及其转换
今天学习了C#的定义及特点,Visual Studio.Net的集成开发环境和C#语言基础. C#语言基础资料——输入输出与数据类型及其转换 函数的四要素:名称,输入,输出,加工 输出 Console ...
- javascript笔记整理(数据类型强制/隐式转换 )
A.数据类型强制转换 1.转换为数值类型 Number(参数) 把任何的类型转换为数值类型 A.如果是布尔值,false为0,true为1 var a=false;alert(Number(a)); ...
- JAVA_SE基础——9.基本数据类型间的转换
前面我已经教会大家基本的数据类型进行了介绍, 然后这篇文章,我来介绍下,基本数据类型的转换. Java中有两种类型转换形式,分别是自动类型转换和强制类型转换. Step1.自动类型转换. 自动类型 ...
- python 基础-----数字,字符串,if while 循环 数据类型的转换简单介绍
一.第一个python小程序 首先我们要知道python创立的初衷是:Python崇尚优美.清晰.简单. 所以python比起其他的语言需要的工作量少了一半都不止,比如和现在一直霸占语言排行榜 榜首 ...
随机推荐
- nyoj-----127星际之门(一)
星际之门(一) 时间限制:3000 ms | 内存限制:65535 KB 难度:3 描述 公元3000年,子虚帝国统领着N个星系,原先它们是靠近光束飞船来进行旅行的,近来,X博士发明了星际之门 ...
- Collaborative Filtering
for i=1:6040 Ai=ratings(ratings(:,1)==i,:); for j=1:5 Labnum(i,j)=length(Ai(Ai(:,3)==j)); end num(i) ...
- 为什么html5用的jQuery Mobile在手机浏览器/微信中打开字体很小
头部加入 <header> <metaname="viewport"content="width=device-width, initial-scale ...
- android 定制目录
首先简单介绍一下安卓系统文件夹对照表 主要介绍的是Android系统的文件夹结构,帮助大家更直观地了解系统 \\system\\app这个里面主要存放的是常规下载的应用程序,可以看到都是以APK格式结 ...
- CentOS hadoop启动错误 JAVA_HOME is not set and could not be found
... Starting namenodes on [] localhost: Error: JAVA_HOME is not set and could not be found. localhos ...
- hduacm 2888 ----二维rmq
http://acm.hdu.edu.cn/showproblem.php?pid=2888 模板题 直接用二维rmq 读入数据时比较坑爹 cin 会超时 #include <cstdio& ...
- ACM心情总结
已经快要12点了,然而还有5000字概率论论文没有动.在论文里,我本来是想要总结一下ACM竞赛中出现过的概率论题目,然而当敲打第一段前言的时候,我就迟疑了. 我问自己,ACM竞赛到底有什么现实意义. ...
- struts2的 result 通配符 OGNL
result: 1). result 是 action 节点的子节点 2). result 代表 action 方法执行后, 可能去的一个目的地 3). 一个 action 节点可以配置多个 resu ...
- 戴文的Linux内核专题:08内核配置(4)
转自Linux中国 这个第四部分里,我们将继续配置更多的设置和特性. 这里我们被问及关于"IBM Calgary IOMMU support (CALGARY_IOMMU)".这个 ...
- Oracle Database 11g express edition
commands : show sys connect sys as sysdba or connect system as sysdba logout or disc clear screen or ...