本文目录一览:
- 1、c语言中什么是算法?有哪些描述算法的例子?
- 2、C语言中 什么是算法 算法的表示有哪几种方式
- 3、c语言运算符号的表示方法
- 4、C语言基本算法
- 5、C语言,在程序设计时常用什么来直观的表示算法?
- 6、C语言的算法作用及表示方法
c语言中什么是算法?有哪些描述算法的例子?
c语言中的算法是指:一系列解决问题的清晰指令,用系统的方法描述解决问题的策略机制。也就是说,能够对一定规范的输入,在有限时间内获得所要求的输出。通俗说就是解决问题的方法和步骤。
描述算法的例子:
问题:从上海去到北京。
其中的算法:做汽车、做飞机、或者徒步。
问题:喝茶。
其中的算法:先找到茶叶,再烧一壶开水,然后将茶叶放到杯子里,将开水倒入杯中,等茶叶泡好。
问题:开车。
其中的算法:首先要打开车门,驾驶员坐好,插上车钥匙,发动汽车。
算法的五个重要的特征:有穷性(Finiteness)、确切性(Definiteness)、输入项(Input)、输出项(Output)、可行性(Effectiveness)。
算法的时间复杂度:算法的时间复杂度是指执行算法所需要的计算工作量。一般来说,计算机算法是问题规模n 的函数f(n),算法的时间复杂度也因此记做。T(n)=Ο(f(n))因此,问题的规模n 越大,算法执行的时间的增长率与f(n) 的增长率正相关,称作渐进时间复杂度(Asymptotic Time Complexity)。
算法的空间复杂度:算法的空间复杂度是指算法需要消耗的内存空间。其计算和表示方法与时间复杂度类似,一般都用复杂度的渐近性来表示。同时间复杂度相比,空间复杂度的分析要简单得多。可以从正确性、可读性、健壮性(容错性)来分析。
C语言中 什么是算法 算法的表示有哪几种方式
算法(Algorithm)是一系列解决问题的清晰指令。
算法也可以理解为有基本运算及规定的运算顺序所构成的完整的解题步骤。或者看成按照要求设计好的有限的确切的计算序列,并且这样的步骤和序列可以解决一类问题。
一个算法应该具有以下五个重要的特征:
有穷性,确切性,输入,输出,可行性。
算法可以使用自然语言、伪代码、流程图,或者程序语言(比如C,C++)等多种不同的方法来描述。
c语言运算符号的表示方法
1 算术运算符
用于各类数值运算。包括加(+)、减(-)、乘(*)、除(/)、求余(或称模运算,%)、自增(++)、自减(--)共七种。
2.关系运算符
用于比较运算。包括大于()、小于()、等于(==)、 大于等于(=)
、小于等于(=)和不等于(!=)六种。
3.逻辑运算符
用于逻辑运算。包括与()、或(||)、非(!)三种。
4.位操作运算符
参与运算的量,按二进制位进行运算。包括位与()、位或(|)、位非(~)、位异或(^)、左移()、右移()六种。
5.赋值运算符
用于赋值运算,分为简单赋值(=)、复合算术赋值(+=,-=,*=,/=,%=)和复合位运算赋值(=,|=,^=,=,=)三类共十一种。
6.条件运算符
这是一个三目运算符,用于条件求值(?:)。
7.逗号运算符
用于把若干表达式组合成一个表达式(,)。
8.指针运算符
用于取内容(*)和取地址()二种运算。
9.求字节数运算符
用于计算数据类型所占的字节数(sizeof)。
10.特殊运算符
有括号(),下标[],成员(→,.)等几种。
优先级1级 结合方向 左结合(自左至右)
( ) 圆括号
[ ]下标运算符
- 指向结构体成员运算符
. 结构体成员运算符(请注意它是一个实心圆点)
优先级2级 结合方向 右结合(自右至左)单目运算符
! 逻辑非运算符
~ 按位取反运算符
++ 自增运算符
-- 自减运算符
-负号运算符
(类型) 类型转换运算符
* 指针运算符
地址与运算符
sizeof 长度运算符
优先级3级 结合方向 左结合 双目运算符
* 乘法运算符
/ 除法运算符
% 取余运算符
优先级4级 结合方向 左结合 双目运算符
+ 加法运算符
- 减法运算符
优先级5级 结合方向 左结合 双目运算符
左移运算符
右移运算符
优先级6级 结合方向 左结合 双目运算符
、=、、= 关系运算符
优先级7级 结合方向 左结合 双目运算符
== 等于运算符 (判断)
!= 不等于运算符(判断)
优先级8级 结合方向 左结合 双目运算符
按位与运算符
优先级9级 结合方向 左结合 双目运算符
^ 按位异或运算符
优先级10级 结合方向 左结合 双目运算符
| 按位或运算符 举例:0xfe|0xef 即为1111 1110 与1110 1111按位或运算则答案为:1111 1111 即0xff。
优先级11级 结合方向 左结合 双目运算符
逻辑与运算符
优先级12级 结合方向 左结合 双目运算符
|| 逻辑或运算符
优先级13级 结合方向 右结合 三目运算符
? : 条件运算符
优先级14级 结合方向 右结合 双目运算符
= 赋值运算符
+ = 加后赋值运算符 如s+=1表示s=s+1
- = 减后赋值运算符 如s-=1表示s=s-1
* = 乘后赋值运算符
/ = 除后赋值运算符
% = 取模后赋值运算符
= 左移后赋值运算符
=右移后赋值运算符
= 按位与后赋值运算符
^=按位异或后赋值运算符
|= 按位或后赋值运算符
优先级15级 结合方向 左结合
, 逗号运算符
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(a10)
{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.算法可以理解为有基本运算及规定的运算顺序所构成的完整的解题步骤。或者看成按照要求设计好的有限的确切的计算序列,并且这样的步骤和序列可以解决一类问题
2.流程图,计算机语言,伪代码 来表示算法
3.顺序结构 选择结构 循环结构
4.逻辑思维
5.结构化算法是由一些基本结构顺序组成的,就是把一个大的功能的实现分隔为许多个小功能的实现。
6.数据 算法
7.可行性 有穷性 输入 输出 确定性
8.数值运算 非数值运算
C语言的算法作用及表示方法
C语言的算法主要就是把人类如何解决问题的方法和思路用某种形式表示出来。表示方法有几种,比如自然语言表示、流程图表示、N-S流程图表示、伪代码表示。各有各好处,一般常用的是流程图和N-S流程图两种表示方法