您的位置:首页 > 汽车 > 时评 > 网店代运营哪个好_永康网站优化公司_哪家网站优化公司好_seo学习论坛

网店代运营哪个好_永康网站优化公司_哪家网站优化公司好_seo学习论坛

2025/3/5 10:03:23 来源:https://blog.csdn.net/weixin_64968161/article/details/145942619  浏览:    关键词:网店代运营哪个好_永康网站优化公司_哪家网站优化公司好_seo学习论坛
网店代运营哪个好_永康网站优化公司_哪家网站优化公司好_seo学习论坛

一、概述

1、算法的特性:

确定性、有穷性、有效性、有0个或多个输入、有1个或多个输出。

2、三种基本结构:

顺序结构、选择结构、循环结构。 

特点:一个入口、一个出口、都有可能被执行到、不存在死循环。

3、结构化设计方法

自顶向下、逐步细化、模块化设计、结构化设计

4、数据类型

整型:short int、int、long int、long long int 、char、bool  (可被unsigned修饰成无符号 %u)

浮点型:float、double、long double

枚举:enum

指针、数组、结构体、函数类型

字节大小

名称字节数
short int2
int4
long int4
long long int8
char1
bool1
float4
double4
long double8 / 16

5、运算符号和运算优先级

6、不同类型数据间的混合运算

有范围大就先转为范围大的,char与double运算就转为double类型,与int运算就转为int类型。(自动类型转换)

7、运算符

运算符名称符号
赋值运算符=
复合赋值运算符+=

8、赋值表达式

格式:  变量    赋值运算符   表达式

顺序:求赋值运算符右侧的表达式的值,赋给运算符左侧的变量。

a=b=c=5 	表达式值为5,a,b,c值均为5
a=5+(c=6) 	表达式值为11,a值为11,c值为6
a=(b=4)+(c=6) 	表达式值为10,a值为10,b等于4,c等于6
a=(b=10)/(c=2)	表达式值为5,a等于5,b等于10,c等于2
a=(b=3*4)	表达式值为12,a,b值均为12

类型转换:

浮点型---->整型 直接舍弃小数部分
整型----->浮点型 加上小数
double---->float  变为单精度
char ---->int      字符的ASCLL赋给int变量
高字节整数-->低字节整数将高位截断,低位赋给低字节整数

赋值表达式没有分号,赋值语句有分号。

9、函数 

printf函数
输出格式:

scanf函数

  

getchar(c)

输入一个字符

putchar(c)

从计算向显示器输出一个字符。(如果是数字,则删除对应ASCLL码值的字符)

二、选择结构与程序设计

if语句 

关系运算符优先次序


(低于算数运算符、高于赋值运算符)

<   >    <=    >=  
==    !=
逻辑运算符及优先级

结果不是0就是1

名称优先级(从大到小)
!最高
&&(短路)
||(短路)
条件运算符(三目运算符)

x=(表达式1)?表达式2:表达式3;

如果表达式1为ture,则x等于表达式2的值,否则为表达式3的值。

switch语句

格式:

switch(表达式){case 常量值: 语句1;break;case 常量值: 语句2;break;case 常量值: 语句3;break;default : 语句n;   //如果最后都不匹配的话}

表达式的值应为整数类型+字符类型

三、循环控制语句

while

while(表达式){
循环体}

do while
 

 至少执行一次

do{
循环体
}while(表达式)

for

for(表达式1;表达式2;表达式3){循环体}

表达式1:设置初始条件,只执行1次

表达式2:循环条件表达式

表达式3:循环的调整(执行完循环体后才执行的)

break和continue

四、数组
 

一维数组 

格式:

数据类型 数组名[常量表达式]

 这样写不对

char c='c';
int a[c];   //c是一个变量,不能这样写

可以这样写 

int a['c'];   //这样符号c就会转为ASCLL码值

初始化

int a[10]={0,1,2,3,4,5,6,7,8,9};
int b[10]={0};  //全为0
int c[10]={0,1,2,3,4}; //只为前5个赋值

二维数组

格式:

数据类型  数组名[常量表达式1][常量表达式2];int a[3][4];   //3行4列的矩阵

初始化:

int a[3][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12}};
int a[3][4]={1,2,3,4,5,6,7,8,9,10,11,12}; //按列存储(数据在内存中存储的顺序)

字符数组类似

strlen()函数会不会输出包含/0的长度,sizeof()会。

字符数组的输入和输出:可以用%c单个输入输出,也可以用%s一起输入输出。

字符串函数

输出:puts(字符数组):

 将字符串输出到终端

输入:gets(str):

 将输入的字符串输入到str,包含最后一个/0字符

连接:strcat(str1,str2):


将str2连接到str1的后面,及str2放到str1的后面,所以拼接好str2后,str1的值就变为str1+str2了。

复制:strcpy(str1,str2):

将字符串str2复制到字符数组str1中。(复制的是内容,而不是地址)。

比较:strcmp(str1,str2)
比较字符串str1和字符串2,将两个字符串从左至右逐个字符相比(按ASCLL码值比较),
直到出现不同的字符或遇到'\0'为止。若st1与str2相同,则认为两个字符串相等;
若str1>str2,则函数值为1个正整数;
若str1<str2,则函数值为1个负整数
长度:strlen(str)

字符串的实际长度,不包括'\0'在内。

转换:strlwr(str)   

 将字符串str中的大写字母换成小写字母。

转换:strupr(str)
 

将字符串str中的小写字母换成大写字母。 

五、函数

 C语言中的函数必须先声明,再调用
 

 声明:在主调函数声明或者开头声明都可以。

返回类型  函数名(参数...);

函数可以嵌套调用,但不能嵌套定义。

函数的递归调用

变量存储类别

自动的(auto):
如函数中的形参和函数中定义的局部变量。存储在动态存储区中,调用该函数时,系统会给这些变量分配存储空间,函数调用结束时就自动释放这些存储空间。

在函数调用时赋值。

静态的(static):

函数中的局部变量在函数调用结束后不消失而继续保留值,占用的存储单元不释放,下次调用该函数时还是该值。

在编译时赋值。

寄存器的(register):

存储在CPU的寄存器中,能够提高性能,不过现在声明的必要性不大。

外部的(extern):

外部定义的全局变量,作用域是从定义处开始,到本程序文件的末尾。使用extern能够扩展外部变量的定义域。还可以扩展到其他文件。

加上static就只能在本文件使用。

函数存储类别

内部函数(static):

作用域只限于本文件。

外部函数(extern):

其他文件调用时不要忘记声明该函数(加上extern)。

六、指针

 定义指针变量:

类型名 *指针变量名

注意:指针变量只能存放地址。

给指针变量赋值:

int a=1;
int *p;
p=&a;
printf("%d",*p);   //打印1

七、结构体变量

 定义:

struct 结构体名{成员列表}变量名列表;

赋值和输出:
 

只能用  .  对结构体变量中的各个成员分别进行输入和输出,不能直接输出结构体变量名企图输出所有元素值。 

同类的结构体变量可以相互赋值。

八、共用体类型

定义:
 

union 共用体名{成员表列}变量表列;

 共用体和结构体的定义形式相似,但含义有点不同。

结构体变量所占的内存长度是各成员占的内存之和,每个成员分别占有其自己的内存单元
共用体变量所占的内存长度等于最长的成员的长度,几个变量共用一个内存区

共用体在一瞬间只能存放一个成员,起作用的是最后一次被赋值的成员。

九、枚举类型

定义:
 

enum 枚举名{
枚举元素列表
}变量名;

 十、typedef声明新类型名

typedef 数据类型 新数据类型名

typedef只是为特定的类型指定了一个同义字,并没有创建新的类型,是在编译阶段处理的。

十一、文件相关知识
 

 

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com