标签:自增 code result 字符串 偶数 add 提示 enter 空白
5-1 输出1000以内的水仙花数
for (int i = 100; i < 1000; i++) { int a = i / 100 % 10;//百位 int b = i / 10 % 10;//十位 int c = i % 10;//个位 if (a * a * a + b * b * b + c * c * c == i) { Console.WriteLine(i); } } Console.ReadLine();
5-2 分解质因数
int number;//定义一个需要获取的变量 while (true)//做一个死循环 { Console.Write("请输入一个合数(大于1):");//输出提示 number = int.Parse(Console.ReadLine());//获取用户输入值 if (number <= 1)//当值<=1时,提示错误,因为1不是合数 { Console.Write("输入有误,输入数字必须大于1,按回车继续"); } else//或者当值质数时提示错误,否则结束循环 { bool isFind = false;//定义一个bool值,判断有没有找到质数 for (int i = 2; i < number; i++)//定义除数范围 { if (number % i == 0)//值能被i整除时,说明不是质数,是合数 { isFind = true; break; } } if (isFind)//是合数,结束循环 { break;//不能省略,需要用它结束循环 } else//是质数,提示输入错误 { Console.Write("输入有误,输入数字是质数,按回车继续"); } } Console.ReadLine();//循环内接收信息 Console.Clear();//循环内清屏 } List<int> Arr=new List<int>();//定义一个集合 int n = number;//定义一个N while (n!=1)//n为判断的最小因数,当n等于1时,循环结束 { for (int i = 2; i <=n; i++)//因数至少为2,所以从2开始,定义因数范围 { if (n%i==0)//说明是最小因数 { n = n/ i;//n替换成了商,再进行循环找最小因数,并且把商赋值给n Arr.Add(i);//循环增加集合Arr的内容 break;//找到第一个除得尽的,就是最小因数 } } } //输出结果 string result = number + "=";//先定义要输出的字符串 for (int i = 0; i < Arr.Count; i++)//循环遍历集合Arr里的内容 { result += Arr[i];//用结果自增并每次加上集合项 if (i<Arr.Count-1)//当下标号小于集合最后一位时,自增输出X { result += "x"; } } Console.Write(result);//输出结果 Console.ReadLine();//等待执行
5-3 斐波拉契数列
Console.Write("请输入数组长度");//提示用户输入长度 int len = int.Parse(Console.ReadLine());//接收用户定义的长度 int[] Arr = new int[len];//定义数组的长度 //给数组的每一项赋值 for (int i = 0; i < Arr.Length; i++)//查找范围 { if (i <= 1)//判断数组的下标号是不是0或者1 是的话,按顺序给索引号0、1赋值为1 { Arr[i] = 1; } else { //如果不是0或1,根据规则,倒数第二位的数值是它前两位之和 Arr[i] = Arr[i - 1] + Arr[i - 2]; } } for (int i = 0; i <Arr.Length; i++) { Console.Write(Arr[i]+"\t"); } Console.ReadLine();
5-4 买桃问题
int money = 100, price = 3, exchange = 3;//钞票金额 桃子单价 换一个桃子需要的桃核数量 int eated, kernel;//当前吃到的桃子总数 目前拥有的桃核数量 eated = money / price; kernel = eated; while (kernel >= exchange) { //换取桃子 int peach = kernel / exchange;//新换的 //计算剩余桃核 int left = kernel % exchange;//换剩的 //吃掉桃子 eated += peach;//现在有的加上换的新的桃子数量 //计算当前拥有的桃核 kernel = left + peach;//余剩的桃核数量和现有的桃子 } Console.WriteLine("最多可吃到" + eated + "个桃子"); Console.ReadLine();
5-5 哥德巴赫猜想
int number; while (true) { Console.Write("请输入一个大于2的偶数:"); number = int.Parse(Console.ReadLine()); if (number <= 2 || number % 2 != 0) { Console.Write("输入错误,请重新输入:请按回车继续"); Console.ReadLine(); Console.Clear(); } else { break; } } //先判断i是不是质数,如果不是,则进入下一次循环 //i=2 ——number~2 0、1都不是质数,所以从2开始,判断范围是输入值到2 int i; int j = 0; for (i = 2; i < number; i++) { j = number - i;//定义j的量,j至少等于总数减去判断i的少 bool isFind = false; for (int k = 2; k < i; k++) { if (i % k == 0) { isFind = true; break; } } if (isFind) { continue; //i不是质数 } //判断J是不是质数,如果是i和j就是要找的质数,结束循环 isFind = false; for (int k = 2; k < j; k++) { if (j % k == 0) { isFind = true; break; } } if (!isFind) { break; } } //输出结果 string result = number + "=" + i + "x" + j; Console.WriteLine(result); Console.ReadLine();
5-6 反序输出
Console.WriteLine("请输入一个字符串");
string input = Console.ReadLine();
string a="";
for (int i=input.Length-1; i>=0;i--)
{
a += input[i];
}
Console.WriteLine(a+"串符字个一入输请");
Console.ReadLine();
5-7 日历
while (true) { #region//获取正确的年份和月份 int year, month; while (true) { Console.Write("请输入年份(1900-2100):"); year = int.Parse(Console.ReadLine()); if (year > 2100 || year < 1900) { Console.WriteLine("年份输入错误,按回车键后重新输入"); Console.ReadLine(); Console.Clear(); } else { Console.Write("请输入月份(1-12):"); month = int.Parse(Console.ReadLine()); if (month > 12 || month < 1) { Console.WriteLine("月份输入错误,按回车键后重新输入"); Console.ReadLine(); Console.Clear(); } else { break; } } } #endregion #region //將空白加入到集合 List<string> dates = new List<string>(); //1.计算1900年到year-1年,经过的天数 int crossDaysOfYear = 0; for (int i = 1900; i < year; i++) { if (i % 4 == 0 && i % 100 != 0 || i % 400 == 0)//4年一闰,100年不润,400年一闰 { crossDaysOfYear += 366; } else { crossDaysOfYear += 365; } } //2.在变量year这一年,从1月到month-1月,经过的天数 int crossDaysOfMonth = 0; for (int i = 1; i < month; i++)//遍历加上所有日期到crossDaysOfMonth,范围从1月到最后一月-1 { if (i == 2)//二月 { if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0)//判断闰年 { crossDaysOfMonth += 29; } else { crossDaysOfMonth += 28; } } else if (i <= 7 && i % 2 != 0 || i > 7 && i % 2 == 0)//大月 { crossDaysOfMonth += 31; } else//小月 { crossDaysOfMonth += 30; } } int crossDays = crossDaysOfYear + crossDaysOfMonth;//经过的总天数 int dayOfWeek = crossDays % 7 + 1;//表示星期几 int space = dayOfWeek - 1;//空白的数量 for (int i = 0; i < space; i++) { dates.Add("");//向dates添加空字符串 } #endregion #region 將日期数字加入到集合 int days = 0;//用户输入的month这个月的天数 if (month == 2)//二月 { if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0)//判断闰年 { days = 29; } else { days = 28; } } else if (month <= 7 && month % 2 != 0 || month > 7 && month % 2 == 0)//大月 { days = 31; } else//小月 { days = 30; } for (int i = 1; i <= days; i++) { dates.Add(i.ToString()); } #endregion #region 输出结果 Console.WriteLine("***************************************************"); Console.Write("-\t二\t三\t四\t五\t六\t日\t"); for (int i = 0; i < dates.Count; i++) { if (i % 7 == 0) { Console.WriteLine(); } Console.Write(dates[i] + "\t"); } Console.WriteLine(); Console.WriteLine("***************************************************"); #endregion Console.Write("按回车键继续"); Console.ReadLine(); Console.Clear(); } int A = 0; Console.ReadLine();
标签:自增 code result 字符串 偶数 add 提示 enter 空白
原文地址:http://www.cnblogs.com/opacity-m/p/7788158.html