目录
1、if结构
① 语句:
if(条件)
{语句1;语句2;……}
用一组大括号来组成语句块
② if例子——跪键盘时间超过60不用跪键盘
Console.WriteLine("请输入跪键盘时间");
string strmain = Console.ReadLine();
int min = Convert.ToInt32(strmain);
bool result = min > 60;
if (result)
Console.WriteLine("不用跪键盘");
Console.ReadKey();
③ if…else例子——根据成绩判断级别
string str = "";
Console.WriteLine("请输入您的成绩");
double score = Convert.ToDouble(Console.ReadLine());
if (score < 0 || score > 100)
str = "输入成绩有误";
else if (score >= 90)
str = "A";
else if (score >= 80)
{
str = "B";
}
else if (score >= 70)
{
str = "C";
}
else if (score >= 60)
{
str = "D";
}
else
{
str = "E";
}
Console.WriteLine(str);
Console.ReadKey();
2、switch-case结构
使用switch-case结构根据成绩判断级别
string str = "";
Console.WriteLine("请输入学员的成绩");
double score = Convert.ToDouble(Console.ReadLine());
if (score < 0 || score > 100)
str = "输入的成绩有误";
else
{
int level = Convert.ToInt32(Math.Floor(score / 10));//因为switch只能根据值判断,不能根据经范围,所以把分数除10取整
switch (level)
{
case 9:
str = "A";
break;
case 8:
str = "B";
break;
case 7:
str = "C";
break;
case 6:
str = "D";
break;
default:
str = "E";
break;
}
}
Console.WriteLine(str);
onsole.ReadLine();
switch-case语句是根据值来进行判断的
3、if-else语句和switch-case语句的比较
相同点:都可以实现多分支结构
不同点:
if-else、if可以处理范围
Switch-case:一般只能用于等值比较
区别:
if有条件的执行一条语句
If-else有条件的执行一条或另一条语句
4、while循环——先判断,在执行循环体
例子:2006年时,学员一共8000人,每年增长百分之二十五,哪一年增长到20万以上
int year = 2006;
double person = 80000;
while (person < 200000)//先判断,在循环
{
person *= 1.25;
year++;
}
Console.WriteLine("到{0}年培训学员人数达到20万人", year);
Console.ReadKey();
结果是到2011年
5、do-while循环——先执行一循环,再判断
例子:如果输入数字,显示2倍。如果输入q,显示程序结束
string str = "";
int number;
do//先执行一次循环,在判断
{
Console.WriteLine("请输入一个数字");
str = Console.ReadLine();
if (str != "q")
{
number = Convert.ToInt32(str);
Console.WriteLine("这个数的2倍是{0}", number * 2);
}
} while (str != "q");
Console.WriteLine("程序结束");
Console.ReadKey();
6、For循环——知道固定的循环次数使用for循环
例子:求100-999内水仙花数
水仙花数:水仙花数也被称为超完全数字不变数、自恋数、自幂数、阿姆斯壮数或阿姆斯特朗数,水仙花数是指一个 3 位数,它的每个位上的数字的 3次幂之和等于它本身(例如:1^3 + 5^3+ 3^3 = 153)。
for (int i = 100; i <= 999; i++)
{
int a = (i / 100);//取百位
int b = ((i % 100) / 10);//取十位
int c = ((i % 100) % 10);//取个位
if (a * a * a + b * b * b + c * c * c == i)
Console.WriteLine(i);
}
Console.ReadKey();
结果:153,370,371,407
7、几个语句套用
三角形乘法表
for (int n = 1; n <= 9; n++)//第二个乘数
{
for (int i = 1; i <= 9; i++)//第一个乘数
{
if (i == n)//当第一个乘数和第二个相等时,则退出循环,写下一行
{
Console.Write("{0}*{1}={2}\n", i, n, i * n);
break;
}
else
Console.Write("{0}*{1}={2}\t", i, n, i * n);
}
}
Console.ReadLine();
结果: