Ⅰ 求C语言常用经典算法
前面那些没意思,就好象数学里的 1+1=2一样 全是公式,还是往后学吧 ,多练练,指针 才是关键
Ⅱ C语言有哪些常用算法稍微介绍一些常用的 我知道的有 二分法,冒泡排序,选择排序,插入排序这
二分法,冒泡 这些只是基础知识
算法没有说常用不常用,算法是完成程序功能的设计思路,面对不同的功能,不同的需求,不同的程序员会有不同的算法,这个是不可言传只可意会的东西。
多写多总结,多看看成熟的程序是怎么写的,慢慢就能提升自身的能力了。
Ⅲ C语言中基本的几种算法有哪些越多越好!就像打擂台算法'冒泡排序法等等...
排序算法
冒泡排序
选择排序
快速排序
高精度运算
存储方法
加法运算
减法运算
乘法运算
扩大进制数
习题与练习
搜索算法
枚举算法
深度优先搜索
广度优先搜索
8数码问题
n皇后问题
搜索算法习题
枚举法习题
聪明的打字员
量水问题
染色问题
跳马问题
算24点
图论算法
最小生成树算法(Prim算法)
单源最短路径算法(Dijkstra算法)
任意结点最短路径算法(Floyd算法)
求有向带权图的所有环
Bellman-Ford算法
计算图的连通性
计算最佳连通分支
计算拓扑序列
图论算法习题
网络建设问题
最短变换问题
挖地雷
乌托邦城市
乌托邦交通中心
动态规划
最短路径问题
动态规划概念
骑士游历问题
最长递增子序列
合唱队形
石子合并问题
能量项链
0/1背包问题
开心的金明
金明的预算方案
加分二叉树
字串编辑距离
花瓶插花
凸多边形三角划分
快餐店
Ⅳ 编写简单的单片机c语言程序 1、指定数组找最大值 2、排序
#include<stdio.h>
#defineNR10//数组元素个数
/*从主函数开始*/
intmain(intargc,char**argv)
{
intar[NR];
inti;
fprintf(stdout,"请输入%d个整数: ",NR);
/*获取并检查用户输入*/
while(1)
{
/*循环获取NR个数据*/
for(i=0;i<NR;i++)
{
if(fscanf(stdin,"%d",&ar[i])!=1)
{
fprintf(stdout,"输入错误!请重新输入: ");
while(getchar()!=' ');//丢弃多余非法字符
break;//打破内层for循环
}
}
/*检查是否获取到NR个数据*/
if(i!=NR)
{
continue;
}
else
{
break;
}
}
/*查找最大值和最小值*/
intmax,min;
max=ar[0];//假定第一个数为最大值
min=ar[0];//同时假定也第一个数为最大值
/*从第二个数开始比较查找最值*/
for(i=1;i<NR;i++)
{
if(ar[i]>max)//最大值
{
max=ar[i];
}
if(ar[i]<min)//最小值,不能使用elseif,否则会跳过比较
{
min=ar[i];
}
}
fprintf(stdout,"最大值为:%d最小值为:%d ",max,min);
/*接下来:查找第二大值*/
intsecond;
/*先获取前两个数的第一大和第二大值*/
ar[0]>ar[1]?(max=ar[0],second=ar[1]):
(max=ar[1],second=ar[0]);
/*从第2个数开始比较查找*/
for(i=2;i<NR;i++)
{
if(ar[i]>max)//查找最大值:目的是为了比较第二大值
{
second=max;//先把最大值保存给第二大值
max=ar[i];
}
elseif(second<ar[i])//比最大值小的数再看看是否大于第二大值
{
second=ar[i];
}
}
fprintf(stdout,"第二大值为:%d ",second);
return0;
}
(4)单片机c语言常用算法扩展阅读
一、c语言程序求数组内所有数的和:
1、通过索引的方式就可以访问到数组内部的元素,索引是从0到数组长度-1。
2、数组点Lenth就是数组的长度。
二、c语言程序冒泡排序:
1、比较相邻的两个元素的大小,如果第一个比第二个大就互换一下。
2、然后每一对都做如上操作,如此一来最后一个元素肯定是最大的数了。
3、除了最后一个元素,重复以上步骤。然后倒数第二个就是次大的值了
4、一次按照这个逻辑直到没有任何数字可以比较了。
Ⅳ 单片机C语言PID自整定算法
就是一般的排序算法,与查找算法一样,这个的都不会吗floata[3],max=0;for(i=0;i<=2;i++){printf("Pleaseenterthemark:");scanf("%f",&a[i]);if(maxintsort(intnum[5]);voidmain(){intnumm[5],i,a;for(i=0;i<5;i++)scanf("%d",&numm[i]);sort(numm);//调用排序for(i=0;i<5;i++)printf("%d",numm[i]);}intsort(intnum[5]){intm,n,t;for(m=0;m<4;m++)for(n=m+1;n<5;n++)//冒泡排序{if(num[m]
Ⅵ 求C语言常用经典算法
既然是初学者,也没必要总结什么常用算法,只要把已经学到过的算法总结一下编出相应的程序就可以了,还没学到的总结了也未必知道什么意思。
Ⅶ c语言算法有哪些
这里整理c语言常用算法,主要有:
交换算法
查找最小值算法
冒泡排序
选择排序
插入排序
shell排序 (希尔排序)
归并排序
快速排序
二分查找算法
查找重复算法
Ⅷ C语言基本算法
1.输入语句:scanf("控制格式",接受值列表),其中控制格式常用的有:%d,%c,%s,%f,分别
表示整型,字符型,字符串和浮点型.
例如int
a;char
c;scanf("%d
%c",&a,&c);表示向a和c输入值
2.赋值语句:=号,如将b赋值为10,为b=10
3.条件:if(布尔表达式){程序}else{程序}(注:此结构可嵌套)
switch(离散量){case
常量:...;case
常量:...}
例:int
a;scanf("%d",&a);
if(a>10)
{printf("大于10");}
else
{printf("小于10")}
例:switch(months)
{
case
1:printf("1月有31天");break;
case
3:printf("3月有31天");break;
....
default:break;
}
4.循环:for结构,while结构,do-while结构
for(初始化;判断;变化)
{
}
while(条件)
{
}
do
{
}while(条件)
Ⅸ 单片机C语言有哪些常用函数和指令
1、if()...else...;条件语句
2、for()...;循环语句
3、while()...;循环语句
4、do...while();循环语句
5、continue;结束本次循环语句
6、break;终止执行循环语句
7、switch;多分支选择语句
8、goto;跳转语句
9、return;从函数返回语句
就这么多