一、复习switch..case选择语句
string a= Console.ReadLine();
switch (a)
{
case "星期一":
Console.WriteLine("工作日");break;
case "星期二":
Console.WriteLine("工作日"); break;
case "星期三":
case "星期四":
Console.WriteLine("工作日"); break;
case "星期五":
Console.WriteLine("工作日"); break;
default: Console.WriteLine("放假"); break;
}
二、循环
1、while循环
while(判断条件)
{
循环体;
}
(1)例题,死循环(条件一直为真)
while (3 > 2)
{
Console.WriteLine(1);
}
(2)例题,正常循环
int i = 1
while (i > -1)
{
Console.WriteLine(1)
i--
Console.WriteLine(i)
}
(3)遍历输出1-10
int i = 1
while(i<=10)
{
Console.WriteLine(i)
i++
}
(4)break,continu之间的区别
int k = 0
while (true)
{
Console.WriteLine(k)
if (k == 100) break
k++
}
(5)题目:输入整数n,计算1到n的总和
int n = Convert.ToInt32(Console.ReadLine())
int s = 0
while (n >0)
{
s = s + n
n--
}
Console.WriteLine(s)
(6.1)输出1-100中的偶数(while循环)
int i = 1
while(i <= 100)
{
if(i % 2==0)
Console.WriteLine(i)
i++
}
(6.2)输出1-100之间的偶数(for循环)
for (int i = 1
{
if (i%2 == 0)
{
Console.WriteLine(i)
}
}
(7)3n+1问题(输出次数,比如输入3输出7,遇到奇数3n+1,遇到偶数n/2)
int n = Convert.ToInt32(Console.ReadLine())
int i=0
while (n>1)
{
if (n % 2 != 0)
{
n=3*n + 1
}
else
{
n = n / 2
}
i++
}
Console.WriteLine(i)
(8)输入学生的个数,和学生的年龄,求出学生的平均年龄,并且保留两个小数
Console.WriteLine("请输入学生的个数:")
int i = Convert.ToInt32(Console.ReadLine())
double sum = 0
double avg
for (int j = 0
{
Console.WriteLine("请输入学生年龄:")
int age = Convert.ToInt32(Console.ReadLine())
sum = sum + age
}
avg = sum/i
// Console.WriteLine(Math.Round(avg, 2))
Console.WriteLine("学生的平均年龄是"+avg.ToString("F2"))
(9)输入两个整数,计算两者间能被17整除的数的和
Console.WriteLine("请输入两个整数")
int n = Convert.ToInt32(Console.ReadLine())
int m = Convert.ToInt32(Console.ReadLine())
int c
int sum = 0
if (n > m)//进行大小数的交换
{
c = n
n = m
m = c
}
for (int i = n
{
if(i%17 == 0)
{
sum=sum+i
}
}
Console.WriteLine(sum)
2、do..while循环(不管满不满足条件,都会先执行一次)
//结构
int k = 0
do
{
Console.WriteLine(1)
k++
}while (k<10)
(1)、例题,输入一个整数a,输入一个整数n,计算a的n次方
Console.WriteLine("请输入两个正整数")
int sum = 1
int a= Convert.ToInt32(Console.ReadLine())
int n = Convert.ToInt32(Console.ReadLine())
do
{
sum = sum * a
n--
} while (n > 0)
Console.WriteLine(sum)
(2)小球落10次。每次反弹是落下的一半高度,输入初始高度,计算十次后的反弹高度和总路径
//输入小球的初始高度
/*double h = Convert.ToInt32(Console.ReadLine())
double sum = 0
for (int i = 1
{
h /= 2
sum = sum + 3 * h
}
Console.WriteLine("第10次的反弹高度"+h)
Console.WriteLine("总共经过了多少"+sum)
(3)打印所有水仙花数,水仙花数就是一个三位数的本身等于,个位数的三次方+十位数三次方+百位数三次方
for(int a = 100
{
int b = a / 100
int c = (a / 10)%10
int d = a % 10
if (a == b * b * b + c * c * c + d * d * d)
{
Console.WriteLine(a + "是水仙花数")
}
}
(4)输入n,输出n层的三角形
Console.WriteLine("请输入一个整数")
int n = Convert.ToInt32(Console.ReadLine())
for(int i = 1
{
for(int j = 1
{
Console.Write("*")
}
Console.WriteLine()
}
(5)输入n,输出n层的等腰三角形
Console.WriteLine("请输入一个整数")
int n = Convert.ToInt32(Console.ReadLine())
for (int i = 1
{
for(int a= 1
{
Console.Write(" ")
}
for ( int j=1
{
Console.Write("*")
}
Console.WriteLine()
}