复习
- 复习算术运算符 + - * /
- 自增自减练习
一、字符串类型
1. @符号在字符串中的另一使用(显示多行字符串)
正常情况下双引号只能显示单行字符串,如果要显示多行字符串可以使用@符号
string a=@"dflkddfd
fdfdf"
2.字符串拼接
使用+号进行拼接
二、类型转换
二、在控制台输入
1. Read和ReadLine区别
- console.Read()每次只读取一个字符,获取控制台输入的字符,返回值是该字符对应的十进制数,也就是说返回值是一个整数类型
- console.ReadLine()每次读取一个字符串,获取控制台输入的字符串,返回值是一个字符串,如果输入的是数字则需要用Convert.ToInt32()转成整数
2.练习题
定义三种水果变量的价格,用户提示输入,分别请输入购买水果的斤数,输入购买香蕉的斤数,输入购买橙子的斤数,最后计算出水果的总价
三、交换两个变量的值
1.交换值的前提是类型要一致
2.通过中间变量来做值的交换
四、字符串格式化输出
五、练习
结合算术运算符和输入,格式化输出,实现一个算法可以把任意一个两位数的个位数和十位数分离出来 比如73 分离出来十位数是7,个位数是3
六、关系运算符
七、赋值运算符
八、逻辑运算符
九、运算符优先级
十、练习题
- 练习题一
- 练习题二
十一、条件分支
1.双分支
2.多分支
十二、练习题
十三、switch分支语句
十四、代码部分
using System;
namespace demo0923
{
class Programe
{
static void Main(string[] args)
{
// 除号
int a = 3;
int b = 2;
Console.WriteLine(a / b); //结果是一个整数
double c = 3.0;
Console.WriteLine(a / c); //如果除以一个小数,除非整除结果就是整数,否则就是小数
char d = 'd'; // 能够转成对应的十进制整数
// @符号有什么作用 取消转义 可以正常显示反斜杠
// 字符串正常情况下只能单行显示 如果要多行显示 可以使用到@符号
string str1 = @"dfjkdjflk
dfddfdf\t\n";
Console.WriteLine(str1);
//字符串拼接 +
Console.WriteLine("13" + "+" + "14" + "=" + "27");
// 变量 声明 初始化才能正常使用 命名规则 (由数字字母下划线组成 首个字符不能是数字)
//c#中的输入
//int get1=Console.Read(); //获取控制台输入的一个字符,返回值是一个整型类型 换行符是可以读取到的
//Console.WriteLine(get1+2); // 2这个字符对应的十进制数是50 所以结果是52
//string str2=Console.ReadLine(); //获取控制台输入的一个字符串 返回值是一个字符串
//类型转换 Convert.ToInt32()
//举例 ReadLine得到的是一个字符串但是我输入的是一个数字,就想要得到这个数字怎么办,类型转换
//int num1 = Convert.ToInt32(str2);
//变量的命名规则 大驼峰命名 所有单词的首字母都大写 如 ToInt32
//小驼峰命名 第一单词首个字母小写,第二个单词首字母大写 myName
/*Console.WriteLine(num1+10);
int AppleUnitPrice = 1;
int BananaUnitPrice = 2;
int OrangeUnitPrice = 3;
Console.Write("请输入苹果购买的斤数:");
int AppleWeight = Convert.ToInt32(Console.ReadLine());
Console.Write("请输入香蕉购买的斤数:");
int BananaWeight = Convert.ToInt32(Console.ReadLine());
Console.Write("请输入橙子购买的斤数:");
int OrangeWeight = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("总价为:" + (AppleUnitPrice * AppleWeight + BananaUnitPrice * BananaWeight + OrangeUnitPrice * OrangeWeight));*/
//python交换值的写法 a,b=b,a
//c#交换值的写法 需要用到一个中间变量来存其中一个变量的值
int num2 = 23, num3 = 12;
int temp = num2;
num2 = num3;
num3 = temp;
// “果的总价为:变量” 原来的方法用+拼接 如果变量多的时候要拼很多个
//可以用到格式化输出
//Console.WriteLine("水果的总价为:{0},其中苹果的价格为{0}",temp,num2);
//大括号是用来占位 括号里面表示后面变量的编号 比如0表示后面变量的第一个
/*int num4 = Convert.ToInt32(Console.ReadLine());
int num5 = num4 / 10; //23
int num6 = num4 % 10;
Console.WriteLine("十位数是:{0},个位数是:{1}",num5,num6);*/
//布尔 bool
bool check1 = 4 > 5; //关系式得到的结果是一个布尔值 这里得到的结果是 false
//关系运算符 >大于 <小于 >=大于等于 <=小于等于 !=不等于 ==等于
bool check2 = 4 != 5;
bool check3 = 4 == 5;
bool check4 = false;
Console.WriteLine(check3);
//赋值运算符 = += -= *= /= %=
// 比如 a+=b 相当于 a=a+b
int num7 = 3;
int num8 = 4;
num7 += 4;
Console.WriteLine(num7);
//逻辑运算符 与&& 或|| 非!取反的操作
// a&&b 并且的意思,表示说a和b的结果必须都为真,式子的结果才为真 只要有一个假结果就是假
// a||b 或的意思,表示说a和b的结果只要有一个真 结果就是真,都为假结果就是假
Console.WriteLine(3 > 4 && 4 > 3); //结果就是假 false
Console.WriteLine(3 > 4 || 4 > 3); //结果就是真 true
Console.WriteLine(!(4 > 3)); //结果就是false 总结:要进行逻辑判断两边的式子必须都是布尔类型
//条件分支
//单分支 判断一个东西,只有两种情况 比如说输(分少)和赢(分多) 这里分少和分多就是判断条件
int num9 = 3;
int num10 = 5;
if (num10 > num9) //括号中就表示要判断的条件 如果条件为真就会执行语句1中的代码,为假就执行else中的代码
{
//执行语句1
Console.WriteLine("num10大于num9");
}
else
{
//执行语句2
Console.WriteLine("num10小于num9");
}
//多分支 有很多种情况 比如动物园门票 60岁以上免费 14到59全票 小于14半票
/*Console.Write("请输入你的年龄");
int year = Convert.ToInt32(Console.ReadLine());
if (year>=60)
{
Console.WriteLine("您是60岁以上人员,免费");
}else if (14<year && year<59)
{
Console.WriteLine("您要全票购买才能进去");
}else
{
Console.WriteLine("您是半票");
}*/
/*int Cj = Convert.ToInt32(Console.ReadLine());
if(Cj>=90 && Cj<=100)
{
Console.WriteLine("A");
}
else if(Cj>=70 && Cj<=89)
{
Console.WriteLine("B");
}
else if(Cj>=60 && Cj<=69)
{
Console.WriteLine("C");
}
else if(Cj<60)
{
Console.WriteLine("D");
}*/
//坐标系
/* Console.WriteLine("请输入x");
int x = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("请输入y");
int y = Convert.ToInt32(Console.ReadLine());
if (x > 0 && y > 0)
{
Console.WriteLine("第一象限");
}
else if(x > 0 && y < 0)
{
Console.WriteLine("第二象限");
}
else if (x < 0 && y > 0)
{
Console.WriteLine("第三象限");
}
else
{
Console.WriteLine("第四象限");
}*/
//三角形
/* int a1 = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("请输入边a1");
int b1 = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("请输入边b1");
int c1 = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("请输入边c1");
if (a + b > c && a + c > b && b + c > a)
{
Console.WriteLine("上述输入的三条边满足需求");
}
else
{
Console.WriteLine("上述输入的三条边不满足需求");
}*/
//闰年的条件 能被400整除 或者 能被4整除但是不能被100整除
//(year%400==0 ||(year%4==0 && year%100!=0))
//转绝对值
/* Console.Write("请输入一个非零整数:");
int num = Convert.ToInt32(Console.ReadLine());
if (num < 0)
{
Console.Write("这是一个负数。");
Console.Write("绝对值为:{0}", -num);
}
else if (num > 0)
{
Console.Write("这是一个正数。");
Console.Write("绝对值为:{0}", num);
}
else
{
Console.Write("该数为0");
}*/
/* Console.Write("请输入一个整数:");
int num1 = Convert.ToInt32(Console.ReadLine());
Console.Write("请输入一个整数:");
int num20 = Convert.ToInt32(Console.ReadLine());
Console.Write("请输入一个整数:");
int num21 = Convert.ToInt32(Console.ReadLine());
if(num1>num2&&num1>num3)
{
Console.WriteLine(num1*num1);
}
else if (num20 > num1 && num20 > num21)
{
Console.WriteLine(num20*num20);
}
else if (num21 > num1 && num21> num20)
{
Console.WriteLine(num21*num21);
}*/
//switch 分支语句
int num = Convert.ToInt32(Console.ReadLine());
//switch和if一样都表示条件分支 不是函数
switch (num) //会传一个参数 用于和下面case中的值进行比对 然后这里不用调用的程序到这里会执行
{
case 1:
case 2: //如果case之间没有其他语句表示说只要满足这两个case的其中一个都会执行case2中的代码
Console.WriteLine(2);
break;
case 3:
Console.WriteLine(3);
break;
default: //默认分支,如果以上的case都比对不成功,那么就会执行defalut中的代码
Console.WriteLine("默认");
break;
}
}
}
}