C#笔记01——注释、进制、基本数据类型、量和输入输出函数
一、注释
1.单行注释
使用方法:行首加 ” //“;
VS2019中的快捷键(以后如果不特加说明都是VS2019): 注释(CTRL+E,C); 取消注释(CTRL+E,U);
2.多行注释
使用方法:在需要注释的行用 “/* */” 包裹;
注:多行注释不能嵌套使用!
二、进制
1.二进制(0-1)0b/BIN、八进制(0-7)0/OCT、十进制(0-9)DEC、十六进制(0-9 A-F)0x/HEX

2.进制之间的转换
1> 十进制转其他进制(连除倒取余)
直到商为0为止;
2> 其他进制转十进制(按权求和)
eg:0b 11011
1*24+1*23+0*22+1*21+1*20 = 27
0x5C
5*161+12*160 = 92;
O 65
6*81+5*80 = 53;
3> 二进制转换十六进制(需要用到8421法则--在后面有补充)
四位一分割,然后转换为10进制(8421分割)再对应即可
eg: 0b 111000101 转十六进制
0001 | 1100 | 0101
1 8+4 4+1
1 12 5
1 C 5
0x 3CB 转 二进制 8421
3 |C |B
3 12 11
2+1 8+4 8+2+1
0010 1100 1011
补充:8421法则:
二进制的4位对应十六进制的1位,二进制的4位分别对应8421
23 22 21 20
8 4 2 1
对数用8421这几个数进行拼凑,每个数只能用一次,用到的数在下面写1,没有用到的就写0,最后列出来即可;
例如十六进制的3是2+1;那么2和1 下面就是1,8和4下面就是0,写出来就是0011;
三、基本数据类型
数据类型的存在就是为了让我们能够更好的管理数据,系统内存,防止内存空间的浪费或者造成数据丢失。
系统开辟空间以字节(Byte)为单位
1T = 1024G = 1024*1024M = 1024*1024*1024KB = 1024*1024*1024*1024B
1Byte = 8bit

补充:
对于有符号最高位代表符号位,0为正,1为负;
求字节数:sizeof;字符使用单引号引起,只能存放一个字符;字符串要用双引号引起;
四、常量和变量
常量:在程序运行期间不可以改变的量
变量:在程序运行期间可以改变的量, 变量的实质就是开辟存储空间
1 变量的定义:
1> 隐式定义 必须赋初始值
var num = ;
var 它可以自动的根据所赋的值分配字节,所以必须要赋初始值
2> 显式定义
语法: 数据类型 变量名 [ = 数值; ]
int scores; //开辟一个空间
scores = ;//存储数据
int MyAge = ; //开辟完空间之后直接存数据 float cores = 98.7F // C#默认小数类型为double,要将小数定义为float类型需要在数值后面加F/f
decimal price = 100.3M // demical 类型数据后面都需要加M/m
补充:
变量名命名规则:
1.见名知意;
2.驼峰命名,第一个单词首字母小写,后面的单词首字符都大写;
3.只能以数字、字母下划线和@组成,但是不能以数字开头;
4.如果有@符号, @符号必须放在最前面;
5.变量必须先定义后使用;
6.变量名不可以重复定义;
五、运算符
1.赋值运算符 ’=‘,将’=‘右边的赋值给左边;
2.算数运算符 ‘+,-,*,/,%,++(自增),--(自减)’
"/" 想要得到小数,除号两边的数至少要有一个为小数;否则进行地板式除法,小数后面的数直接会被舍掉;
"%" 取余,求余结果的正负号只和'%'符号左边的数有关和右边的无关;
int num1 = , num2 = ; // num1 % num2 = 1
int num1 = -, num2 = ; //num1 % num2 = -1
int num1 = -, num2 = -; //num1 % num2 = -1
int num1 = , num2 = -; //num1 % num2 = 1
"++" "++"在前:先自增再打印, "++"在后:先打印再自增
int num1 = ;
int num2 = num1++; // 等同于: int num2 = num1; num1 += 1;
Console.WriteLine("num1 = {0}, num2 = {1}", num1, num2);
// num1 = 2, num2 = 1
int num3 = num1++ + ++num1;
Console.WriteLine("num3 = {0}", num3);
// num3 = 4; '+'号左边先使用1,然后num1自增为2; '+'号右边num1先自增为3然后使用,最后结果为4;
补充:
类型转换:
1> 低类型向高类型转换: 自动转换
short num = ;
int num1 = num;
char num2 = '';
int num3 = num2; // char类型是一个特殊的整型;
2> 高类型向低类型转换:需要强制转换--在数值前加'(数据类型)'
int num5 = (int)10.6; // 会直接将小数点后面的数全部省去,地板式擦除;num5 实际的值为10
char num4 = (char)num3;
表达式
不能独立运行(程序最小只能以语句执行, 语句的结尾必须有分号),是由常量变量和运算符组成的式子; 单独的变量和常量也是一个表达式.
六、基本输入和输出
输出:
1> 连接输出
2> 格式化 / 用占位符输出
语法: Console.WriteLine("{数字:格式字符}[,{数字:格式字符}....]", 参数0[,参数1...);
{数字:格式字符} 表示占位符,数字表示最后输出参数几, 格式字符表示最后输出形式, 例如小数输出想要时限制位数: {0:f2} 注意: '{}' 里的冒号前后不能有空格!
!!! 要注意大括号里面的数值要对应后面的参数位置!(也即是说假设大括号里面最大的数值为n,那么参数的个数最少为n+1) -- 下标必须从0开始.

int num1 = , num2 = ;
float num3 = 24.7546346f;
// 换行输出
Console.WriteLine();
// 不换行输出
Console.Write();
// 连接输出
Console.WriteLine(" " + num1 + num2); // 前面有"" ,后面的'+' 表示为连接, 如果没有或者" " 在后面则 '+' 表示运算;
// 占位符输出
Console.WriteLine("num1 = {0}, num2 = {1}, ", num1, num2); // 使用占位符打印,{num}为占位符, ',' 最后输出的时候占位符会替换',' 后面的参数.
Console.WriteLine("num3 = {0:f2}", num3); // num3 = 24.75
输入
函数: Console.ReadLine() 注:这个只能接受String类型
想要转换需要用到 类型.Parse() 或者 Convert.To类型 函数
string str1 = Console.ReadLine(); // 出入字符串类型的数据
// 字符串转型--1 类型.Parse 只能将字符串类型的进行转换
int num = int.Parse(str1);
// 2 Convert.To类型 函数 可以将任何类型转换成任何类型
Convert.ToInt32(234.3f);
Convert.ToDouble();
函数 Console.Read() 只能接受一个字符,而且会输出它对应的十进制
C#笔记01——注释、进制、基本数据类型、量和输入输出函数的更多相关文章
- 进制转换&数据类型(1)
一: 进制转换 在计算机中, 数据都是以0和1来表示的 进制: 进位制 十进制: 数字由0~9这10个数字来表示, 逢10进1位 0 1 2 3 4 5 6 7 8 9 10 二进制: 数字由0和1这 ...
- JavaSE学习笔记01注释、标识符与基本类型
1. HelloWorld 编写代码 public class Hello{ public static void main(String[] args){ System.out.println(&q ...
- Java进制转换, 数据类型, 运算符
1:进制转换 转换规则: 先把数据的每一位上的系数乘以对应基数的次幂(低位从零开始),然后相加即可 十进制到其他进制 规则:除基取余,直到商为0,最后将余数反转 十进制到二进制: 除2取余,直到商为0 ...
- 【JAVA随摘笔记一】进制转换
// 十进制转其它进制(二进制,八进制,十六进制) ; System.out.println(Integer.toBinaryString(k));// 转二进制 10001 System.out.p ...
- 【代码笔记】iOS-16进制颜色与UIColor互转
一,效果图 二,工程目录. 三,代码 RootViewController.m - (void)viewDidLoad { [super viewDidLoad]; // Do any additio ...
- 基础笔记1(进制,浮点,递归,floor,round和ceil)
1,进制默认是十进制 0开头 8进制 0x 16进制 0b 2进制 2,long 的范围是19位数字.int范围是21亿左右,short 是三万二千左右. 超过int范围的long类型 ...
- python3笔记二:进制转换与原码反码补码
一:学习内容 进制:二进制.八进制.十进制.十六进制 进制转换 原码.反码.补码 二:进制 二进制 1.二进制:只有0和1,逢2进1 2.举例:0+0=0.0+1=1.1+1=10 3.过程剖析:二进 ...
- 《c程序设计语言》读书笔记-十六位进制数转十进制
#include <stdio.h> #include <stdio.h> int htoi(char s[]); main() { char s1[] = "10& ...
- 【前端学习笔记01】JavaScript源生判断数据类型的方法
原始类型(值类型):Undefined.Null.Number.String.Boolean: 对象类型(引用类型):Object: typeof 可以识别标准类型,null外(返回Object): ...
随机推荐
- 启动elasticsearch报错的几种原因及解决方法
ERROR: [1] bootstrap checks failed [1]: max virtual memory areas vm.max_map_count [65530] is too low ...
- swift 实现iOS手势密码、指纹密码、faceID
本博客包含了如何实现iOS手势密码.指纹密码.faceID全步骤,包括了完整的代码. 先附上demo地址https://github.com/Liuyubao/LYBTouchID,支持swift3. ...
- Flask:第一个Flask项目
在上一篇文章:Flask:项目的准备工作中,我写了flask项目的准备工作,不清楚创建flask项目需要做哪些准备的朋友可以点击链接看看 1.最简单的Flask项目 代码: from flask im ...
- Docker应用部署
MySQL: #拉取mysql镜像 docker pull centos/mysql--centos7 #创建容器 #-p 端口映射 -e添加环境变量MYSQL_ROOT_PASSWORD 是root ...
- Python 图形验证码库、二维码库的使用
1. 图形验证码库 captcha # 引入图形库 from captcha.image import ImageCaptcha # 获取图像对象 image = ImageCaptcha(width ...
- Spring Boot实战之定制type Formatters
本文首发于个人网站:Spring Boot实战之定制type Formatters 前面我们有篇文章介绍了PropertyEditors,是用来将文本类型转换成指定的Java类型,不过,考虑到Prop ...
- 相关推导式-Python
列表.’字典等推导式 #利用zip()函数同时给多个变量赋值 a = [1,2,3,4,5] b = [4,5,6,7,8] c = [9,2,3,4,0] l = [[1,2],[3,4]] for ...
- [考试反思]0903NOIP模拟测试36:复始
因为多次被说颓博客时间太长于是 真香 恢复粘排行榜的传统. 大体上就是,T1A的前三,剩下的T2A的排名,再然后按照T3暴力得分排名. T1是个暴力.3个A的5个得分的.数据点极强爆零率极高. 我的思 ...
- 口胡题fr
T1五种贡献恶心的要死.$1.grand$$2.father$$3.brother$$4.son$$5.grandson$我们选择维护三个量.1.儿子和,$sx$2.孙子和,$gsx$3.自己的值,$ ...
- Docker从入门到掉坑(二):基于Docker构建SpringBoot微服务
本篇为Docker从入门到掉坑第二篇:基于Docker构建SpringBoot微服务,没有看过上一篇的最好读过 Docker 从入门到掉坑 之后,阅读本篇. 在之前的文章里面介绍了如何基于docker ...