一、总纲
1.1、变量
存储变量的语法:
变量类型 变量名;
变量名=值;
"="号:在这并不表示等于的意思,而是赋值的意思,表示把等号右边的值赋值给等号左边的变量。
声明并且给变量赋值的简写形式:
变量类型 变量名=值;
1.2、数据类型
1)、整数类型:int 只能存储整数,不能存储小数。
2)、小数类型:double 既能存储整数,也能存储小数,小数点后面的位数 15~16位。
3)、金钱类型:decimal:用来村粗金钱,值后面需要加上一个m.
4)、字符串类型:string,用来存储多个文本,也可以存储空,字符串类型的值需要被 双引号引来,
这个双引号必须是英文半角状态下的双引号
5)、字符类型:char,用来存储单个字符,最多、最少只能有一个字符,不能存储空。
字符类型的值需要用 单引号因起来。英文半角状态下的单引号。
1.3、波浪线
1)、如果你的代码中出现了红色的波浪线,意味着你的代码中出现了
语法错误。
2)、如果你的代码中出现了绿色的波浪线,说明你的代码语法并没有错误,
只不过提示你有可能会出现错误,但是不一定会出现错误。警告线
1.4、变量的使用规则
如果你要是用变量的话,应该要先声明再赋值再使用。
1.5、命名规则
****首先要保证的就是这个变量的名字要有意义。
1 现阶段给变量起名字的时候都以字母开头
2 后面可以跟任意“字母”、数字、下划线.
注意:
1)你起的变量名不要与c#系统中的关键字重复.
2)在c#中,大小写是敏感的. HTML
3) 同一个变量名不允许重复定义(先这么认为,不严谨)
给变量起名字的时候要满足两个命名规范:
1、Camel 骆驼命名规范。要求变量名首单词的首字母要小写,其余每个单词的首字母要大写。
多用于给变量命名。
2、Pascal 命名规范:要求每个单词的首字母都要大写,其余字母小写。多用于给类或者方法命名。
HighSchoolStudent
highSchoolStudent
1.6、赋值运算符
=:表示赋值的意思,表示把等号右边的值,赋值给等号左边的变量。
由等号连接的表达式称之为赋值表达式。
注意:每个表达式我们都可以求解除一个定值,对于赋值表达式而言,等号左边的变量的值,
就是整个赋值表达式的值。
int number=10;
1.7、+号的作用
1)、连接:当+号两边有一边是字符串的时候,+号就起到连接的作用。
2)、相加:两边是数字的时候
1.8、占位符
使用方法:先挖个坑,再填个坑。
使用占位符需要注意的地方:
1、你挖了几个坑,就应该填几个坑,如果你多填了,没效果。
如果你少填了,抛异常。
2、输出顺序:按照挖坑的顺序输出。
1.9、异常
异常是指:语法上并没有任何错误,只不过在程序运行的期间,由于某些原因出现了问题,
使程序不能再正常的运行。
1.10、转义符
转义符指的就是一个'\'+一个特殊的字符,组成了一个具有特殊意义的字符。
\n:表示换行
\":表示一个英文半角的双引号
\t:表示一个tab键的空格
\b:表示一个退格键,放到字符串的两边没有效果。
\r\n:windows操作系统不认识\n,只认识\r\n
\\:表示一个\
@符号
1、取消\在字符串中的转义作用,使其单纯的表示为一个'\'
2、将字符串按照编辑的原格式输出
1.11、类型转换
隐式类型转换:
我们要求等号两遍参与运算的操作数的类型必须一致,如果不一致,满足下列条件会发生自动类型转换,或者称之为隐式类型转换。
两种类型兼容
例如:int 和 double 兼容(都是数字类型)
目标类型大于源类型
例如:double > int 小的转大的
显示类型转换:
1、两种类型相兼容 int--double
2、大的转成小的 double----int
语法:
(待转换的类型)要转换的值;
例如:
自动类型转换:int---->double
显示类型转换:double--->int
二、 注释符的使用(选中后按Ctrl+k,Ctrl+c)
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace _01注释符的使用
{
class Program
{
static void Main(string[] args)
{
//这行代码的作用是将Hello World打印到控制台当中
// Console.WriteLine("Hello World");
//这行代码的作用是暂停当前这个程序
// Console.ReadKey();
/*
Console.WriteLine("Hello World");
Console.WriteLine("Hello World");
Console.WriteLine("Hello World");
Console.WriteLine("Hello World");
Console.WriteLine("Hello World");
Console.WriteLine("Hello World");
Console.WriteLine("Hello World");
Console.WriteLine("Hello World");*/
}
/// <summary>
/// 这个方法的作用就是求两个整数之间的最大值
/// </summary>
/// <param name="n1">第一个整数</param>
/// <param name="n2">第二个整数</param>
/// <returns>返回比较大的那个数字</returns>
public static int GetMax(int n1, int n2)
{
return n1 > n2 ? n1 : n2;
}
}
/// <summary>
/// 这个类用来描述一个人的信息 从 姓名 性别 年龄描述
/// </summary>
public class Person
{
public string Name
{
get;
set;
}
public int Age
{
get;
set;
}
public char Gender
{
get;
set;
}
}
}
三、变量
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace _03_变量
{
class Program
{
static void Main(string[] args)
{
//变量类型 变量名;
// 变量名 = 值;
//100
官方语言:声明或者定义了一个int类型的变量
//int number;//在内存中开辟了一块能够存储整数的空间
官方语言:给这个变量进行赋值
//number = 100;//表示把100存储到了这块空间内
//int n = 3.14;
//double d = 3;
//张三 李四 王五 赵六 abcdefg
//string zsName = "张三";
//string s="";//字符串可以存储 空
字符串 字符 羊肉串和羊肉
//char gender = '男女';
// char c='';
//decimal money = 5000m;
double d = 36.6;
Console.WriteLine(d);
Console.ReadKey();
}
}
}
四、幅值运算符
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace _06赋值运算符
{
class Program
{
static void Main(string[] args)
{
int n = 10;
n = 50;//重新赋值,一旦给一个变量重新赋值,那么老值就不存在了,取而代之的新值。
Console.WriteLine(n);
Console.ReadKey();
}
}
}
五、实例练习
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace _练习
{
class Program
{
static void Main(string[] args)
{
//有个叫卡卡西的人在旅店登记的时候前台让他填一张表,
//这张表的里的内容要存到电脑上,
//有姓名、年龄、邮箱、家庭住址,工资.
//之后把这些信息显示出来
//string name = "卡卡西";
//int age = 30;
//string email = "kakaxi@qq.com";
//string address = "火影村";
//decimal salary = 5000m;
//Console.WriteLine("我叫{0},我今年{1}岁了,我住在{2},我的邮箱是{3},我的工资是{4}", name, age, address, email, salary);
//Console.WriteLine("我叫" + name + ",我住在" + address + ",我今年" + age + "岁了" + ",我的邮箱是" + email + ",我的工资是" + salary);
//Console.ReadKey();
//int age = 18;
//age = 81;
//Console.WriteLine("原来你都" + age + "岁了呀");
//Console.ReadKey();
//3.定义四个变量,分别存储一个人的姓名、性别(Gender)、年龄、电话
//(TelephoneNumber)。然后打印在屏幕上 (我叫X,我今年 X岁了,我是X生,
//我的电话是XX)(电话号用什么类型,如:010-12345)
string name = "张三";
char gender = '男';
int age = 18;
string tel = "12345678900";
Console.WriteLine("我叫{0},我今年{1}岁了,我是{2}生,我的电话是{3}", name, age, gender, tel);
Console.ReadKey();
}
}
}
六、占位符
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace _10占位符
{
class Program
{
static void Main(string[] args)
{
int n1 = 10;
int n2 = 20;
int n3 = 30;
Console.WriteLine("第一个数字是{1},第二个数字是{0},第三个数字是{2}", n1, n2,n3);
Console.WriteLine("第一个数字是:" + n1 + ",第二个数字是:" + n2 + ",第三个数字是:" + n3);
Console.ReadKey();
}
}
}
七、变量交换
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace _11交换变量
{
class Program
{
static void Main(string[] args)
{
//int n1 = 10;
//int n2 = 20;
//int temp = n1;
//n1 = n2;
//n2 = temp;
//Console.WriteLine("交换后,n1的值是{0},n2的值是{1}", n1, n2);
//Console.ReadKey();
//请交换两个int类型的变量,要求:不使用第三方的变量
int n1 = 50;
int n2 = 30;
//n1=20 n2=10;
n1 = n1 - n2;//n1=-10 n2=20
n2 = n1 + n2;//n1=-10 n2=10
n1 = n2 - n1;
Console.WriteLine("交换后,n1的值是{0},n2的值是{1}", n1, n2);
Console.ReadKey();
}
}
}
八、接收用户输入
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace _12接收用户的输入
{
class Program
{
static void Main(string[] args)
{
//Console.WriteLine("请输入你的姓名");
我们还想要接收你输入的姓名
接收用户在控制台的输入 11 3.14 男 张三
//string name = Console.ReadLine();
//Console.WriteLine("您的姓名是{0}", name);
//Console.ReadKey();
//1.练习:问用户喜欢吃什么水果(fruits),假如用户输入”苹果”,则显示”哈哈,这么巧,我也喜欢吃苹果”
//Console.WriteLine("美女,你喜欢吃啥子水果哟~~~~");
//string fruit = Console.ReadLine();
//Console.WriteLine("这么巧呀,我也喜欢吃{0}", fruit);
//Console.ReadKey();
//2.练习:请用户输入姓名性别年龄,当用户按下某个键子后在屏幕上显示:您好:XX您的年龄是XX是个X生
//Console.WriteLine("请输入您的姓名");
//string name = Console.ReadLine();
//Console.WriteLine("请输入您的年龄");
//string age = Console.ReadLine();
//Console.WriteLine("请输入您的性别");
//string gender = Console.ReadLine();
//Console.WriteLine("{0}你的年龄是{1}是个{2}生",name,age,gender);
//Console.ReadKey();
}
}
}
九、转义符
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace _13_转移符
{
class Program
{
static void Main(string[] args)
{
// Console.WriteLine("今天天气好晴\n朗处处好风光");
//Console.WriteLine("我想在这句话中输出一\"\"个英文半角的双引号");
//string name1 = "张三";
//string name2 = "李思思";
//string name3 = "王小五";
//string name4 = "李狗蛋";
//Console.WriteLine("{0}\t{1}", name1, name2);
//Console.WriteLine("{0}\t{1}", name3, name4);
//Console.WriteLine("学习编\b程有用\b么?学了不一定会,会了不一定能找到工作,找到工作 不应能买的起房子,买的起房子不一定娶得起老婆,娶得起老婆不一定生的了孩子,生的了孩子不一定是你的\b");
//Console.ReadKey();
//string str = "今天天气好晴\r\n朗处处好风光";
//System.IO.File.WriteAllText(@"C:\Users\SpringRain\Desktop\1111.txt", str);
//Console.WriteLine("写入成功!!!");
//Console.ReadKey();
//char c = '\b';//\ 在里面起到了一个转义的作用
//char cc='bb';
//string path=@"F:\老赵生活\music\a\b\c\d\e\小泽玛利亚.avi";
//Console.WriteLine(path);
//Console.ReadKey();
Console.WriteLine(@"今天天气好晴朗处处好风光");
Console.ReadKey();
}
}
}
十、算术运算符
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace _14_算数运算符
{
class Program
{
static void Main(string[] args)
{
//int n1 = 10;
//int n2 = 3;
//int result = n1 / n2;
Console.WriteLine(result);
Console.ReadKey();
演示:某学生三门课成绩为,语文:90 数学:80 英语:67,编程求总分和平均分.
//int chinese = 90;
//int math = 80;
//int english = 67;
//Console.WriteLine("总成绩是{0},平均成绩是{1}", chinese + math + english, (chinese + math + english) / 3);
//Console.ReadKey();
//练习2:计算半径为5的圆的面积和周长并打印出来.(pi为3.14)面积:pi*r*r; Perimeter(周长)
//=号两遍的数据类型必须一样
//int r = 5;
//double area = 3.14 * r * r;
//double perimeter = 2 * 3.14 * r;
//Console.WriteLine("圆的面积是{0},周长是{1}", area, perimeter);
//Console.ReadKey();
//练习3:某商店T恤(T-shirt)的价格为35元/件,
//裤子(trousers)的价格为120元/条.小明在该店买了3件T恤和2条裤子,
//请计算并显示小明应该付多少钱?
//int T_shirt = 35;
//int trousers = 120;
//int totalMoney = 3 * T_shirt + 2 * trousers;
//Console.WriteLine(totalMoney);
//double realMoney = totalMoney * 0.88;
//Console.WriteLine(realMoney);
//Console.ReadKey();
打8.8折后呢?
//int number = 10;
//int---double
//double d = number;//自动类型转换 隐式类型转换 int--double
//double d = 303.6;
语法:
(待转换的类型)要转换的值;
double----int//强制类型转换 显示类型转换
//int n = (int)d;
//Console.WriteLine(n);
//Console.ReadKey();
}
}
}
十一、类型转换
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace _15_类型转换
{
class Program
{
static void Main(string[] args)
{
int n1 = 10;
int n2 = 3;
double d = n1*1.0 / n2;
Console.WriteLine("{0:0.0000}",d);
Console.ReadKey();
int n1 = 5;
//double n1 = 5;
//int n2 = 2;
//double d = n1 / n2;
//Console.WriteLine(d);
//Console.ReadKey();
}
}
}
十二、题目
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace _02_两道作业题
{
class Program
{
static void Main(string[] args)
{
//练习,编程实现计算几天(如46天)是几周零几 天. 6周零4天
//int days = 46;
//int weeks = days / 7;
//int day = days % 7;
//Console.WriteLine("{0}天是{1}周零{2}天",days,weeks,day);
//Console.ReadKey();
//编程实现107653秒是几天几小时几分钟几秒?
// 60*60 3600 *24=86400 86400
int seconds = 107653;
int days = seconds / 86400;//求得天数
int secs = seconds % 86400;//求得求完天数后剩余的秒数
int hours = secs / 3600;//求得小时数
secs = secs % 3600;//求得小时数后剩余的秒数
int mins = secs / 60;//求得分钟数
secs = secs % 60;
Console.WriteLine("{0}秒是{1}天{2}小时{3}分钟{4}秒", seconds, days, hours, mins, secs);
Console.ReadKey();
}
}
}
十三、类型转换
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace _03类型转换
{
class Program
{
static void Main(string[] args)
{
//显示类型转换、自动类型转换
//int--double double ----int
//string s = "123abc";
将字符串转换成int或者double类型
//double d = Convert.ToDouble(s);
//int n = Convert.ToInt32(s);
//Console.WriteLine(n);
//Console.WriteLine(d);
//Console.ReadKey();
//让用户输入姓名 语文 数学 英语 三门课的成绩,
//然后给用户显示:XX,你的总成绩为XX分,平均成绩为XX分。
Console.WriteLine("请输入你的姓名");
string name = Console.ReadLine();
Console.WriteLine("请输入你的语文成绩");
string strChinese = Console.ReadLine();
Console.WriteLine("请输入你的数学成绩");
string strMath = Console.ReadLine();
Console.WriteLine("请输入你的英语成绩");
string strEnglish = Console.ReadLine();
double chinese = Convert.ToDouble(strChinese);
double math = Convert.ToDouble(strMath);
double english = Convert.ToDouble(strEnglish);
double sumScore = chinese + math + english;
double avg = (int)sumScore*1.0 / 3;
Console.WriteLine("{0}你的总成绩是{1}平均成绩是{2:0.00}", name, sumScore, avg);
Console.ReadKey();
//55 77 88 557788
//由于字符串去相加的话,最终会变成相连接,如果要拿字符串类型的变量参与计算
//需要将字符串转换成int或者double类型
//int chinese = Convert.ToInt32(strChinese);
//int math = Convert.ToInt32(strMath);
//int english = Convert.ToInt32(strEnglish);
//Console.WriteLine("{0}你的总成绩是{1},平均成绩是{2}", name, chinese + math + english, (chinese + math + english) / 3);
//Console.ReadKey();
}
}
}