博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
常见简单算法
阅读量:5229 次
发布时间:2019-06-14

本文共 2445 字,大约阅读时间需要 8 分钟。

数组:

所有的水仙花数
所有的奇数
所有数组元素求和、求乘积
阶乘
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;}

 

数组进行排序

为该数组每一项赋值
若输入的长度不正确,则提示重新输入,否则,建立该长度的数组

转载于:https://www.cnblogs.com/newcode/p/9229956.html

你可能感兴趣的文章
Windows多线程入门のCreateThread与_beginthreadex本质区别(转)
查看>>
Nginx配置文件(nginx.conf)配置详解1
查看>>
linux php编译安装
查看>>
name phone email正则表达式
查看>>
721. Accounts Merge
查看>>
OpenCv-Python 图像处理基本操作
查看>>
「Unity」委托 将方法作为参数传递
查看>>
重置GNOME-TERMINAL
查看>>
redis哨兵集群、docker入门
查看>>
hihoCoder 1233 : Boxes(盒子)
查看>>
团队的绩效评估计划
查看>>
oracle中anyData数据类型的使用实例
查看>>
C++对vector里面的元素排序及取任意重叠区间
查看>>
软件测试——性能测试总结
查看>>
12.4站立会议
查看>>
泰勒展开,傅里叶变换,拉普拉斯变换和Z变换的物理意义
查看>>
Java Concurrentmodificationexception异常原因和解决方法
查看>>
Python 面向对象(其四)
查看>>
客户端访问浏览器的流程
查看>>
Linux——ls
查看>>