文章目录

  • 1,前言
  • 2,数据的表现形式及其运算
    • 2.1,常量和变量
      • 2.1.1,常量
      • 2.1.2变量
      • 2.1.3,标识符
    • 2.3,数据类型
      • 2.3.1,整数类型
      • 2.3.2,字符型数据
      • 2.3.3,实型数据(浮点数)
  • 3,运算符和表达式
    • 3.1,运算符
    • 3.2,算术运算符
    • 3.3,自增自减运算符
    • 3.4,优先级与结合体
    • 3.5,不同类型从混合运算
    • 3.6,强制类型转换
  • 4,C语句
    • 4.1,C语句的作用和分五种,我们来看看
    • 4.2,最基本的语句——赋值语句
      • 4.2.1,赋值运算符(=)
      • 4.2.2,复合运算符
      • 4.2.3,赋值表达式
      • 4.2.4,赋值过程中的类型转换
        • 1,浮点数赋值整数类型
        • 2,整数类型赋值浮点数
        • 3,双精度赋值单精度
        • 4,字符型赋给整数型
      • 4.2.5,赋值表达式与赋值语句
      • 4.2.6,变量赋初值
  • 6,数据的输入输出
    • 6.1,输出输入相关概念
    • 6.2,printf()使用
      • 一般形式
      • 格式字符
        • `%d`
        • `%c`
        • `s%`
        • `%f`
    • 6.3,`scanf()`的使用
      • 一般形式
      • 注意事项
    • 6.4,字符输出输入函数
      • `putchar()` 输出一个字符
      • `getchar()` 输入一个字符
  • 7,总结

1,前言

看到顺序二字,大家会想到什么,是不是类似1,2,3…有顺序的,不是乱序的。那么顺序程序设计,也是这么一个道理。顺序的。执行完这行语句之后就是下一行,然后是下下一行,以此类推,直到程序结束。按顺序一行一行都程序。

说到这里,是不是感觉这一章内容就结束了。No!我们现在开始。

2,数据的表现形式及其运算

2.1,常量和变量

这两个量大家都在初中,高中接触过,常量不变的量;变量变化的量。

2.1.1,常量

常量分很多种,我们一一说明。

  1. 整型常量:通常是整数。1001234、0、-22\

  2. 实型变量:有两种表现形式

    小数(十进制):3.14、1.0、-55.56等等

    指数形式:12.34e3(代表:12.34×10^3,3次方)e可以写成E,但是前面可以有数字,后面必须是整型。

  3. 字符常量:两种形式

    普通字符:‘a’、‘Z’、‘3’、’?’,不可以写成’ab’或’12’。用一对单撇号括起来,只能是一个字符。字符常量存放在计算机中并不是存入了一个字符,而是对应的ASCII码,“A’和’a’是不一样的,'A‘的ASCII码是65,而’a’的ASCII码是97。一个标点符号,也会有对应的ASCII码。可以参考一下谭浩强老师的《C程序设计》。重点关注下”A’‘Z’,‘a’'z’这两部分

    这部分内容网络上有很多。不在叙述。或者后后期补充

  4. 转义字符、

    这是一种特殊的字符变量,

    这部分内容网络上有很多。不在叙述。或者后后期补充

  5. 字符串常量:“boy”、“123”、“您好”等等。注意这里是双撇号,单撇号可以括一个字符,而双撇号可以括多个字符。

  6. 符号常量:用#define 指令,指定一个符号名称成为一个常量。

    这个考试遇到了,幸好我在考试之前遇到过,但不知道具体有什么用。说到这个了我们就看看这个有什么用叭

    #define p1 3.14
    

    这里好像不应该用定义描述,指定。指定后所有的p1都代表3.14。这样做有什么好处呢?含义清晰。可以知道p1就是圆周率,3.14嘛。好修改,这个在这好多地方都用到了p1,“一改全改”,我们看一下

2.1.2变量

这个字面意思,可以变得量

之前提过C语言是静态语言。因此在使用时需要确定他变量的数据类型。所以时刻记住一句话,先定义,后使用。怎么定义一个变量呢?[数据类型] [变量名] [变量值]由三部分或者两部分组成,因为变量值可以是从键盘输入获取。

int a=1;
float c;
char s;
int a, b, c=1;

可以一次定义一个变量,也可以是一次定义多个变量。

2.1.3,标识符

什么是标识符呢,还有变量名好像也没有说清楚。说白了就是命名。为变量、数组、函数等等命名,这个命名我们就称为标识符。

命名是有规则的,我们来看看,

标识符只能用数字、字母和下划线组成,第一个字符必须是数字。大小写敏感。

不可以用C语言关键做标识符。

2.3,数据类型

变量的命名方式是什么?我们在回顾一下。

[数据类型] [变量名] [变量值]

会有人问一下数据类型是什么?好部分可能有点长,我们一起看看。

先说一下为什么C语言会提出这一概念,而仅是C语言在Java、python中这一点也可以看出来。

在计算机中,数据是存放在存储单元中的,它是具体存在的,而且,存储单元是由有限的字节构成的,每一个存储单元存放数据的范围是有限的,不可能存放“无穷的”的数,也不能存放循环小数。

这是书上的原话,还有一个例子

>>> printf("%f",1.0/3.0);
0.333333

在数学中,1/3=0.33333333333333

树上的意思是说每一个数据都有一个内存空间(我们就说他为杯子吧)数据就是水咯。哈哈哈,就说多大的杯子装多大的水。其实还有个问题,我们后面再说。

所谓类型,就是对数据分配存储单元的安排。包括;存储单元的长度(占多少字节)以及数据的存储形式,不同的类型分配不同的长度和存储形式。

这就是我要说的问题,杯子是怎么分配的,在日常生活中杯子里可以说半杯水。但是在计算机中这里是很严格的,不可以有空余,必须是刚刚好。

2.3.1,整数类型

对于我已经学完了这一章的内容,因我们用到的数据长度不一样,所以会把整数类型分有基本整型、长整型、短整型等等,不光是整数型,浮点型也是这样,因为这里我学的不是很清楚,所以我会重新整理一遍。一起看看。

  • 基本型:类型说明符为int,在内存中占2个字节。范围-32768至32767
  • 短整型:类型说明符为short int或short。所占字节和取值范围均与基本型相同。
  • 长整型:类型说明符为long int或long,在内存中占4个字节。
  • 无符号型:类型说明符为unsigned,只存储数值,不存储符号。

以下是整数类型的四种,有没有人会和我一样有同一个疑问,他们是怎么用的,我只?知道他们表示数据的范围不一样。

2.3.2,字符型数据

字符数据是按字符的形式存储吗?答案是不是,按整数形式存储。

  1. 字符与字符代码

    不是说随便一个字符或者字符代码程序就可以识别,而是按照系统的字符集的,且大多数采用ASCII码字符集。包括大小写英文字母、数字,专门符号等等。

  2. 字符变量

    类型说明符为char

    char c='?';
    

    这里看似给c赋了一个字符变量。其实是整数63,? 的ASCII是63。在上面提到过,

2.3.3,实型数据(浮点数)

  • 单精度 float 6~7为位效数字 分配4个字符
  • 双精度 double 15~16位有效数字 分配8个字符

3,运算符和表达式

看到这里我想大家可以猜到这一部分的内容吧,应该是要将加减乘除和式子的事情,毕竟只要写程序,就要有数据参与运算。是不是想跳过这一部分,然后他除了我们传统知道的运算符之外还有很多,他们的优先级也是不一样的。但是说到表达式我的个人感觉是和之前学过的式子是一样的,我们一起来看看

3.1,运算符

运算符 含义
算术运算符 (+ - * / % ++ – )
关系运算符 (> < == >= >== !=)
逻辑运算符 (! && ||)
位运算符 (<< >> ~ | ^ &)
赋值运算符 (=及其扩展赋值运算法)
条件运算符 (?:)
逗号运算符 (,)
指针运算符 (* &)
求字节数运算符 (sizeof)
强制类型转换运算符 ((类型))
成员运算符 (, - >)
下标运算符 ([])
其他 (如函数调用运算符())

3.2,算术运算符

运算符 含义 举例 结果
+ 正号运算符(单目运算符) +a a的值
- 负号运算符(单目运算符) -a a的算输负值
* 乘法运算符 a*b a和b的乘积
/ 除法运算符 a/b a除以b的商
% 取余运算符 a%b a除以b的余数
+ 加法运算符 a+b a加b的和
- 减法运算符 a-b a减b的差

3.3,自增自减运算符

什么意思呢?自增:++;自减就是:–,他们的作用就是变量自身加1或者减1.

但是呢这个又会分出两种情况:i++、i–或者++i、–i;你们说他们有什么不同呢,从形式上可以看出来的是变量位置不一样,因此他们的运算顺序也不一样。

  1. i++、i–

    先运算、后自增。

    这个应该怎么理解呢,可以分成两步,a=i++ 等价于a=i (运算)i+1 (自增)

    那么顺着这个思路,i–呢?i--a=1 i=0

  2. i++、i–

    反而这个呢?先自增,后运算,刚好与上面的那个反的。

    那么a=i++ 等价于i=i+i(自增);a=i (运算),

3.4,优先级与结合体

这个是怎么意思呢,就和以前数学学过的一样,运算规律,先算乘除后加减,有括号先算括号。

然而我们也看到了C语言的运算符多了,

这部分内容这一个大表格,网上也有相关内容。这部分用的不多吧,他也经常用。如果是说有考试,那么他就会在这里出题。

3.5,不同类型从混合运算

编写程序那必然少不了数据之间的运算。如果是同类型之间的运算,那还简单,类型一样。比如1+5=61000-100=900

但是呢你说这个怎么办10+3.14=? 你会说这个很简单啊,答案是13.14。但是呢,我感觉我这个举例不好,这个呢,

100+A+3.14=? 这个怎么算呢,有整数、字符、分数。会说这个合法吗

嘿嘿,合法。

这个我的理解像是数学中的单位转换,1cm和1dm,1kg和1g这个如果做加法或者减法必须是单位统一,而在C语言中类型统一,同时类型还必须是高类型。这个之前我看过一个特别好的例子,500ML的杯子装不下1L的水,但是1L的杯子可以装下500ML的水

我们把A 转换一下就是65,式子变成`100+65+3.14=168.14,

我们看一下下面的那张图,这就是他们的转换规则。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-FtNKZ1Hm-1642045162509)(C:\Users\admin\AppData\Roaming\Typora\typora-user-images\image-20220108161347205.png)]

要是这么讲100+65+3.14=168.14,还会变成 100.000000+65.000000+3.140000=168.140000,保留两位小数168.14

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-lSMsU64U-1642045162510)(C:\Users\admin\AppData\Roaming\Typora\typora-user-images\image-20220110155352934.png)]

顺着箭头可以看到double是大哥啊

3.6,强制类型转换

  1. 一般形式(类型名)(表达式)

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-KWqYlf3Y-1642045162510)(https://cdn.jsdelivr.net/gh/yanghuanh1314/MyPicture@master/image.258n0z5x3gkg.webp)]这是两个能经常用到的叭,但是我们注意一下当浮点数转换整数时并不会四舍五入,而是直接取整数部分。

4,C语句

4.1,C语句的作用和分五种,我们来看看

  1. 条件语句

    语句 介绍
    if()…else… 条件语句
    for()… 循环语句
    while()… 循环语句
    do…while()… 循环语句
    continue 结束本次循环语句
    break 终止本次switch或者循环语句
    switch 多分支选择语句
    return 从函数返回语句
    goto 转向语句,在结构化程序中基本不用
  2. 函数调用语句

    用函数调用与分号构成。

    printf("hello world");
    
  3. 表达式语句

    一个表达式加一个分号组成。

    20/2%3;
    
  4. 复合语句

    由多条表达式构成,一组大括号{} 括住。这个也不很难理解,我们也还没有遇到。常用于循环、条件语句中。

    for(int i=0;i<2;i++){for(int j=0;j<3;j++){scanf("%d",&a[i][j]);}printf("\n");}
    

    有个大括号。

  5. 空语句

    ;

    一个分号。有什么作用呢,程序结构清晰,我一般喜欢这一部分介绍后空格,进行下一部分。

4.2,最基本的语句——赋值语句

4.2.1,赋值运算符(=)

这就是一个等于号,看着很简单,也很简单。但是在程序设计中很常用,不仅是C。

4.2.2,复合运算符

在赋值符之前加上其他运算符。类似+=-=*=

什么含义呢

a+=1 等价于a=a+1

a-=1等价于a=a+1

a*=1等价于`a=a*1

这个经长常用到。也很容易记忆。

4.2.3,赋值表达式

之前介绍过什么是表达式,但是什么是赋值表达式呢

赋值表达式的一边形式

变量 赋值运算符 表达式

a = 3*5;

3*5 的值赋给aa=15

4.2.4,赋值过程中的类型转换

这部分好像之前我已经说了一堆,我在说一遍

1,浮点数赋值整数类型

舍取小数部分,

2,整数类型赋值浮点数

书里面写了很多,其实就是往后面加0

3,双精度赋值单精度

取6~7位小数

4,字符型赋给整数型

这个事和我我们之前提过的ASCII码有关,他返回对应的ASCII码

4.2.5,赋值表达式与赋值语句

什么是赋值表达式?变量=表达式:

什么是赋值语句,就是说表达式里面有一个或多个赋值表达式

变量=(变量=表达式)其展开形式变量=变量=.....=表达式举个栗子

a=b=c=d=10/3

4.2.6,变量赋初值

这个很简单

int i=1;

6,数据的输入输出

在我的举例中大家也看到了我经常用到的一个函数printf()这是一个输入函数,print的中文也是打印的意思。在python中输出函数直接是print() 直到现在,我也经常把printf写成print。

6.1,输出输入相关概念

  1. 从计算机输出设备输出的数据叫输出,从计算机输入设备输入的数据叫输入
  2. C语言不提供输出输入函数。那么会问这是怎么来的。是由C语言的标准函数库提供的。
  3. 在程序文件的开头使用#include 把有关头文件引入进来。在之前也说过头文件的重要性。

6.2,printf()使用

一般形式

printf(格式控制,输出数列)

会看到由两部分组成,

  1. 格式控制:一般用双撇号括起来的一个字符串。格式控制字符串。里面还包含了两部分信息

    • 格式声明,由%格式字符 组成。像之前提到过的%d%f。还有很多
    • 普通字符:普通字符在输出的时候会原样输出。、
  2. 输出数列:需要输出的数据

    printf("%d,%d\n",a,b);
    

    值得注意的是,格式声明应与输出数列的数据一一对应。在python特意提出了这是槽,槽与数据对于。

格式字符

之前提到了%d%f 那么这些是什么吗意思呢,会不会还有很多。

%d

输出一个十进制数字。可以理解为用这个输出整数。也可以在指定域宽(所占的数列)。

>>> printf("%5d",a);10 // 就是说占用了5个字符。
%c

用来输出有一个字符。也可以指定域宽。

你说如果字符变量是一个整数呢,会输出什么。规定如果整数在1~127范围之间,系统会识别成ASCII码,输出对应的字符

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-MEK2MLc2-1642045162512)(https://cdn.jsdelivr.net/gh/yanghuanh1314/MyPicture@master/image.4t9m1mle5l60.webp)]

s%

输出一个字符串。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-85lvGOOW-1642045162512)(https://cdn.jsdelivr.net/gh/yanghuanh1314/MyPicture@master/image.cw9v15wh8hs.webp)]

%f

用来输出实数,可以说单精度。双精度、长双精度。

基本型用%f。但是如果不指定长度,则整数部分全部输出,小数部分输出6位。

小数部分不够6位用0补充,够6位了根据第7位四舍五入。和上面提到的不一样。

如果说保留两位小数呢?可以用到%m.nf 什么意思呢

7.2%f 这个数占7列,保留两位小数。因此可知m 表域宽n表小数位数

类似这样,我们多半不用域宽写成%.2f 即可。

数据左对齐,%-m.nf 可以说加个杠。

目前经常用到的应该就是%d%f 格式字符还有很多,我在这不一一说明了。

6.3,scanf()的使用

可以从输入设备输入数据

一般形式

scanf(格式控制,列表地址)

scanf("%d",&a);

格式控制是和printf()中的格式控制一致。出现了一个新的名词,列表地址。

列表地址是由多个地址组成,可以是变量地址,也可以是字符串首地址。

注意事项
  1. 上面说过格式控制,当我们需要输入什么类型的数据,就用什么。常用的有三个%d输入整数数据、%f输入浮点数数据、%c 输入字符数据。

  2. 介绍一个符号& 取地址符,什么是取地址符呢。我也不是很清楚。这个我们在指针部分继续研究

  3. 如果是输入多个变量呢,可以这样。

    scanf("%d%f%c",&a,&f,&c)
    
    scanf("%d%f%c",&a,&f,&c)
    

    一次性可以输入多个数据,但是要注意地址列表里的数据应与格式控制里的内容一一对应。

    其次是输入数据也是有规律的,。

    scanf("%d%d%d",&a,&b,&c);
    

    可以输入成1 2 3 注意用空格隔开

    scanf("%d%f%c",&a,&f,&c)
    

    可以输入成1,2,3 注意用,隔开

    所以看格式控制中是怎么指示的,数据就怎么输入。

6.4,字符输出输入函数

putchar() 输出一个字符

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-FCj5ghy1-1642045162513)(https://cdn.jsdelivr.net/gh/yanghuanh1314/MyPicture@master/image.dz9kc212s3c.webp)]

如果定义3个整型变量呢?

之前也是提到过这个问题,输出对应的ASCII码。

getchar() 输入一个字符

是需要连续输入三个字符,用输入getchar()输入进去,之后在用putchar()打印出来。

如果不是连续输入三个字符。输入一个字符,我就enter回车。系统会这样处理 。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Wflkzelc-1642045162514)(https://cdn.jsdelivr.net/gh/yanghuanh1314/MyPicture@master/image.34n24sejhv20.webp)]

开始我以为是我我的问题。我们看看是怎么回事。、

我发现了一个事,连续输入三个字符输出时没有换行,而我输入一个字符后回车输入,而输出时换行了。

其实我们还是输入了三个字符。转义字符也是字符的一种。好我就直接说了。

我们输入b后回车看着输入了一个字符,其实是两个字符,把b赋值给了a,紧接着回车就是换行符赋值给了b,输入o再回车,我们规定了只能输输入三个字符,所以就,是不是有点乱。可以说我们输入了三个字符b \n o 所以就。

也说明了一件事:在输入信息时,不是说一个回车就可以把数据送计算机中。而是先暂存在缓冲区,之后按下enter后将这些字符全部送到计算机中个字符。转义字符也是字符的一种。好我就直接说了。

我们输入b后回车看着输入了一个字符,其实是两个字符,把b赋值给了a,紧接着回车就是换行符赋值给了b,输入o再回车,我们规定了只能输输入三个字符,所以就,是不是有点乱。可以说我们输入了三个字符b \n o 所以就。

也说明了一件事:在输入信息时,不是说一个回车就可以把数据送计算机中。而是先暂存在缓冲区,之后按下enter后将这些字符全部送到计算机中

7,总结

这部分内容比较多,到这里也就结束了。

文中比较难以理解的就是字节了。我现在还是不清楚4个字节,8个字节是什么意思。

刚刚由搜了一下。说是内存条出来数据是二进制,一个二进制数是由八位数构成(0和1)。内存的最小单位是位(bit),存储容量的基本单位是字节(byte,简称b)。现在是这样的,1B=8Bit。但是感觉我还是说不清楚。

这部分内容看起来比较多,很难学,但是在我们编写程序的过程中一般就喜欢用int float char 其对应整数、实数、字符。咱就说小程序。编写软件的话我不知道。初学者。

好了,到这里就结束了。如果有错误的地方请指正,因为我也是正在学习,如果我帮到了您,是我的荣幸。

谢谢大家。

C语言之顺序程序设计学习笔记相关推荐

  1. c语言用户自己建立数据类型,C语言程序设计学习笔记--用户建立数据类型

    C语言程序设计学习笔记--用户建立数据类型. 9.1定义和使用结构体变量 1.定义:C语言允许用户自己建立不同类型数据组合成的组合型数据类型就是结构体 2.形式: struct 结构体名 { 成员表列 ...

  2. C语言程序设计学习笔记:P3-判断

    本系列博客用于记录学习浙江大学翁恺老师的C语言程序设计,系列笔记链接如下: C语言程序设计学习笔记:P1-程序设计与C语言 C语言程序设计学习笔记:P2-计算 C语言程序设计学习笔记:P3-判断 C语 ...

  3. C语言程序设计学习笔记:P1-程序设计与C语言

    本系列博客用于记录学习浙江大学翁恺老师的C语言程序设计,系列笔记链接如下: C语言程序设计学习笔记:P1-程序设计与C语言 C语言程序设计学习笔记:P2-计算 C语言程序设计学习笔记:P3-判断 C语 ...

  4. C语言程序设计学习笔记:P5-循环控制

    本系列文章为浙江大学翁恺C语言程序设计学习笔记,前面的系列文章链接如下: C语言程序设计学习笔记:P1-程序设计与C语言 C语言程序设计学习笔记:P2-计算 C语言程序设计学习笔记:P3-判断 C语言 ...

  5. JavaScript高级程序设计学习笔记(三)

    分享一下第五章(引用类型)的笔记,内容比较多,我拆成了两部分,今天这部分是关于Object.Array.Date和RegExp类型的. 以下的笔记是书上一些我以前学习的时候,没有太重视的js基础知识, ...

  6. c语言/c++转Java学习笔记---基础问题

    c语言/c++转Java学习笔记---基础问题 1.java注释 2.数组的定义和使用 定义 使用 3.类 4.this 的使用 5.继承 6.super的使用 7.包 8.修饰符 成员的访问控制符( ...

  7. 面向对象程序设计·学习笔记(1/2)

    面向对象程序设计·学习笔记(1/2) 前言 第1章 类与对象 1.1 用类制造对象 1.2 定义类 1.3 成员变量和成员函数 1.4 对象初始化 第2章 对象交互 2.1 对象交互 2.2 访问属性 ...

  8. 条件分歧 java_FORTRAN-95程序设计学习笔记-资源下载人人文库网

    <FORTRAN-95程序设计>学习笔记 FORTRAN 95程序设计学习笔记66RPG gg 目录 FORTRAN 95程序设计学习笔记1基础知识(基础.字符串.FORMAT.隐式.TY ...

  9. c语言编程实例解析精粹,C语言实例解析精粹学习笔记——35(报数游戏)

    实例35: 设由n个人站成一圈,分别被编号1,2,3,4,--,n.第一个人从1开始报数,每报数位m的人被从圈中推测,其后的人再次从1开始报数,重复上述过程,直至所有人都从圈中退出. 实例解析: 用链 ...

最新文章

  1. 操作系统各大公司笔试题汇总
  2. 大三时候实现的,关于大整数(超过long范围)加减乘除操作的头文件,并包含了实现RSA加解密的函数...
  3. 想上云,请评估与思考上云目的
  4. 计算机组成结构IR,计算机组成与体系结构试题
  5. 小小智慧树机器人_国网营业厅“AI新势力”,科沃斯商用机器人解锁智慧服务新模式!...
  6. android studio课程管理系统,8 个最优秀的 Android Studio 插件
  7. java 当前日期 所在周_关于Java的小工具(计算当前日期所在周的区间)
  8. (转)Spring对注解(Annotation)处理源码分析1——扫描和读取Bean定义
  9. python循环捕捉异常_python – 如何在for循环迭代器中捕获异常
  10. 【Android】Gallery实现选中图片变大,两侧没选中图片变小
  11. 19c(19.3) 单机数据库静默安装
  12. 4399小游戏怎样下载到本地玩
  13. 惠普笔记本重装系统按哪个键
  14. OpenWRT-Wifidog之利用Luci认证
  15. acm总结——多源BFS
  16. CODING 研发管理系统上线全球加速,助力企业跨区域协作
  17. 遗传算法的特性以及在具体算法应用中的应用
  18. 【计算广告】移动设备 效果类广告 归因方式
  19. 抖音里王者荣耀游戏视频搞怪的配音怎么做
  20. 程序员最容易吃的亏,就是不会说话!

热门文章

  1. 漏洞分析丨HEVD-11.DoubleFetch[win7x86]
  2. QQ远程协助连不上解决办法
  3. 微信公众号会替代手机APP吗?
  4. VSTO PPT图表对象的操作(2)
  5. 采用TWH9248/9249的微波探测自动照明灯a
  6. WARN com.atomikos.datasource.xa.XATransactionalResource - Error in recovery
  7. 图像质量评价方法PSNR+SSIM评估指标SROCC,PLCC
  8. 电影天堂影片下载地址获取
  9. 从“弃儿”到大神,神经网络之父Hiton说人类就是非常精美的机器 | AI英雄
  10. mysql分布式主键_技术分享 | 优化 InnoDB 的主键