常见简单算法
2018-06-27 09:47:14来源:博客园 阅读 ()
数组:
所有的水仙花数
所有的奇数
所有数组元素求和、求乘积
阶乘
99乘法表
所有的质数之和(使用计数的方式判断
所有的质数(使用计数的方式判断
所有的质数(使用查找的方式判断
判断该数是不是质数
判断该数是不是质数(使用查找的方式
是否存在水仙花数
所有奇数之和
所有数字之和
循环指定的次数:
for (int i = 100; i <= 200; i++) { //判断i是不是质数,如果是就输出 int num = 0;//计数 for (int j = 1; j <= i; j++) { if (i % j == 0) { num++; //找到了一个数能整除i,计数加1 } } if (num == 2) { Console.WriteLine(i);// 说明i是质数,输出它 } }
遍历-查找问题
for (int i = 100; i <= 200; i++) { //判断i是否是质数,这是一个查找问题 bool isFind = false; for (int j = 2; j < i; j++) { if (j % i == 0) { isFind = true; break; } } if (!isFind) { Console.WriteLine(i);//没有找到,i是质数,输出它 } }
获取用户正确的输入:
int n; //用于保存用户的输入 while(true) // 用于永远无法退出这个循环,除非输入正确 { Console.Write("请输入一个大于0的奇数:"); n = int.Parse(Console.ReadLine()); if (n > 0 && n % 2 != 0) { break; //用户输入正确,结束无休止的循环 } else { Console.Write("输入有误,按回车键后重新输入"); // 提示错误信息 Console.ReadLine(); // 让程序暂停,等待用户按下回车键 Console.Clear(); // 控制台清屏 //后面已没有代码,将进入下一次循环 } } //循环结束后,变量n中一定保存的是一个大于0的奇数,否则,他根本无法退出循环 Console.Write("你的输入是:" + n); #region 描述内容 // 代码 #endregion 控制台清屏 Console.Write("Hello"); Console.Clear(); //当程序运行到这条语句时,控制台当前的内容会被清空 Console.Write("World")
修改数组对应下标的数字,若下标超出范围,要给出错误提示,并让用户重新输入
判断该数字在数组中是否存在
输出数组中最小的数
输出数组中最大的数
交换排序
for (int i = 0; i < nums.Length - 1; i++) { //在 i-(nums.Length-1) 范围内,将该范围内最小的数字提到i for (int j = i + 1; j < nums.Length; j++) { if (nums[i] > nums[j]) { //交换 int temp = nums[i]; nums[i] = nums[j]; nums[j] = temp; } } }
冒泡排序:
for (int i = nums.Length - 1; i > 0; i--) { //在 0-i 范围内,将该范围内最大的数字沉到i for (int j = 0; j < i; j++) { if (nums[j] > nums[j+1]) { //交换 int temp = nums[j]; nums[j] = nums[j+1]; nums[j+1] = temp; } } }
选择排序:
for (int i = 0; i < nums.Length - 1; i++) { //在 i-(nums.Length-1) 范围内,将该范围内最小的数字提到i //1. 首先找到 i - (nums.Length-1) 范围内的最小数所在的下标 int index = i; //先假设最小数的下标是i for (int j = i + 1; j < nums.Length; j++) { if (nums[j] < nums[index]) { //发现了更小的数 index = j;//记录下标 } } //2. 然后将nums[i]和nums[index]的值交换 int temp = nums[i]; nums[i] = nums[index]; nums[index] = temp; }
数组进行排序
为该数组每一项赋值
若输入的长度不正确,则提示重新输入,否则,建立该长度的数组
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
- DES/3DES/AES 三种对称加密算法实现 2020-06-11
- JVM常见面试题解析 2020-06-11
- Linux简单命令的学习 2020-06-10
- 因为命名被diss无数次。简单聊聊编程最头疼的事情之一:命名 2020-06-10
- 「starter推荐」简单高效Excel 导出工具 2020-06-08
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash