【C语言】基础语法1:变量和数据类型

下一篇:运算符和表达式

❤️‍🔥前情提要❤️‍🔥
  欢迎来到C语言基本语法教程
  在本专栏结束后会将所有内容整理成思维导图(结束换链接)并免费提供给大家学习,希望大家纠错指正。本专栏将以基础出发,在之后的教程中将会不断学习并详细讲解C语言的基本语法及其高级用法
  C语言是一种高级编程语言,由Dennis Ritchie在20世纪70年代开发出来。C语言具有简洁高效可移植可扩展等特点,成为广泛使用的编程语言之一。
  在进入工作岗位之前,语言是你简历上应该具备的基本技能之一。
  基础知识总是枯燥无味的,万丈高楼平地起,希望和大家一起打好基础一起加油
请添加图片描述
  🍪本教程内容干货满满,跟上步伐吧~🍪


作者介绍

🎓 作者:某不知名编程爱好者📜
🗒️系列文章&专栏推荐: 🔗《华为机试题解析》 、🔗《C语言程序设计》、🔗 《MySQL数据库》
🕸️为大家推荐一款很好用的C语言刷题网站🔗点击跳转


🔖导航小助手🔖

  • 🥬 开胃小菜
    • 📑 变量
    • 📑 常量
    • 📑 数据类型
      • 🏷️ 整型
      • 🏷️ 浮点型
      • 🏷️ 字符型
      • 🏷️ 指针型
    • 📑 数据类型转换
      • 🏷️ 隐式类型转换
      • 🏷️ 显式类型转换
    • 🎀小结


🥬 开胃小菜

在本教程开始前,先来认识一下C语言最简单的程序“Hello C语言”

#include <stdio.h>

int main() {
    printf("Hello, C语言!\n");
    return 0;
}

这个程序包含了一个头文件<stdio.h>,它是C语言标准库中的一个头文件,提供了输入输出函数等功能。
int main()是程序的主函数,其中printf()函数用于输出字符串"Hello, C语言!",\n表示换行符。
return 0表示程序正常结束,返回值为0。执行这个程序后,屏幕上会输出"Hello, C语言!"

上述程序带你了解了C语言程序的结构,下面一起进入C语言的世界吧!


📑 变量

💡 概念

  • 数据类型是指变量所代表的数据类型,包括整型浮点型字符型布尔型等。不同的数据类型在存储方式占用空间取值范围等方面有所不同,因此在使用时需要根据实际情况进行选择。
  • 变量是用于存储信息的"容器"。
  • 它可以在程序执行过程中不断地改变其值
  • 在C语言中,变量需要先声明后使用,并且需要指定数据类型

💡 变量的命名规则

  • 变量名必须以字母或下划线开头,不能以数字开头。
int 3test; // 错误:变量名以数字开头
int _test; // 正确:变量名以下划线开头
  • 变量名只能由字母、数字和下划线组成,不能使用其他特殊符号。
int test#; // 错误:变量名中含有特殊符号#
int test$; // 错误:变量名中含有特殊符号$
int test_; // 正确:变量名中含有下划线
  • 变量名长度应该控制在一定范围内,一般不要超过32个字符
int this_is_a_very_long_variable_name_that_should_be_avoided; // 错误:变量名过长
int short_name; // 正确:变量名长度适中
  • 变量名应该具有一定的描述性,能够清晰地表达变量的含义
int x; // 错误:变量名不具有描述性
int age; // 正确:变量名具有描述性
  • 变量名区分大小写,例如变量x和变量X是不同的变量。
int x, X; // 正确:变量名区分大小写
  • 变量在使用前必须进行声明,声明时需要指定变量的类型
int main() {
    int x; // 声明变量x
    x = 10; // 给变量x赋值
    return 0;
}
  • 变量的值可以在声明时初始化,也可以在后面的程序中赋值
int main() {
    int x = 10; // 声明变量x并初始化为10
    x = 20; // 给变量x赋值为20
    return 0;
}
  • 变量的作用域声明位置有关,一般分为全局变量局部变量两种。
int x = 10; // 全局变量x
int main() {
    int y = 20; // 局部变量y
    return 0;
}
  • 变量的生命周期作用域有关,一般分为静态变量动态变量两种。
int main() {
    int x = 10; // 动态变量x,生命周期为函数运行期间
    static int y = 20; // 静态变量y,生命周期为整个程序运行期间
    return 0;
}
  • 变量在使用时需要注意数据类型的匹配,不同类型的变量之间不能直接进行运算。
int x = 10;
float y = 3.14;
int z = x + y; // 错误:不同类型的变量不能直接进行运算
float w = x + y; // 正确:同类型的变量可以进行运算

💡 变量的数据类型

  • 声明变量时需要指定其数据类型,例如:
int age; //声明一个整型变量age
float salary; //声明一个浮点型变量salary
char gender; //声明一个字符型变量gender
bool isMarried; //声明一个布尔型变量isMarried
  • 在声明变量时,需要指定其数据类型,例如int表示整型float表示浮点型char表示字符型bool表示布尔型

  • 赋值时需要注意变量的数据类型,例如:

age = 20; //将整型数值20赋值给age变量
salary = 5000.0; //将浮点数值5000.0赋值给salary变量
gender = 'M'; //将字符'M'赋值给gender变量
isMarried = true; //将布尔值true赋值给isMarried变量
  • 在赋值时,需要注意变量的数据类型,例如将整型数值赋值给整型变量,将浮点数值赋值给浮点型变量,将字符赋值给字符型变量,将布尔值赋值给布尔型变量。

  • 使用变量时也要注意其数据类型,例如:

printf("My age is %d\n", age); //打印age变量的值,%d表示整型
printf("My salary is %.2f\n", salary); //打印salary变量的值,%.2f表示浮点型,保留2位小数
printf("My gender is %c\n", gender); //打印gender变量的值,%c表示字符型
printf("I am %s\n", isMarried ? "married" : "single"); //打印isMarried变量的值,%s表示字符串型
  • 在使用变量时,需要注意其数据类型,例如使用%d打印整型变量,使用%.2f打印浮点型变量,使用%c打印字符型变量,使用%s打印字符串型变量

以上就是C语言变量中的所有注意事项了!


📑 常量

💡 概念

  • C语言常量是指在程序中固定不变的值,它们在程序执行期间不会发生变化。常量可以是数字字符字符串等,常量的值在程序编译时就已经确定

  • C语言中的常量有以下几种类型:

整型常量:整型常量是指整数常量,可以是十进制八进制十六进制。例如:

int a = 10; // 十进制整型常量
int b = 012; // 八进制整型常量,等价于10
int c = 0xA; // 十六进制整型常量,等价于10

实型常量:实型常量是指浮点数常量,可以是小数指数形式。例如:

float a = 3.14; // 小数形式实型常量
float b = 3.14e-2; // 指数形式实型常量,等价于0.0314

字符常量:字符常量是指单个字符,用单引号括起来。例如:

char a = 'A'; // 字符常量

字符串常量:字符串常量是指由多个字符组成的字符串,用双引号括起来。例如:

char *str = "Hello, world!"; // 字符串常量

符号常量:符号常量是指在程序中定义的不变量,用#define指令定义。例如:

#define PI 3.1415926 // 定义符号常量PI

💡 规则

  • 常量的声明:常量在使用前需要进行声明,可以使用const关键字进行声明。例如:
const int a = 10; // 声明一个整型常量a
  • 常量的命名规则:常量的命名规则与变量相同,由字母、数字和下划线组成,以字母或下划线开头

  • 符号常量的定义:符号常量可以使用#define指令进行定义。例如:

#define PI 3.1415926 // 定义符号常量PI
  • 常量的使用:常量在程序中可以像变量一样使用,但是不能重新赋值。例如:
const int a = 10;
int b = a + 5; // 可以使用常量a进行计算
a = 20; // 不能重新赋值常量a

以上是C语言常量的概念和代码规则及其解释。常量在程序中起到了固定不变的作用,可以提高程序的可读性可维护性


📑 数据类型

💡 概念

  • C语言提供了多种数据类型,包括整型浮点型字符型指针型等。不同的数据类型占用不同的内存空间,可以存储不同数据范围精度

下面带大家逐一认识以上数据类型吧!


🏷️ 整型

💡 概念

  • 在C语言中,整型是一种基本的数据类型,用于存储整数。整型变量可以存储不同的整数值,包括正整数负整数。C语言中的整型变量可以分为以下几种:
类型解释
char用于存储字符,占用一个字节,取值范围为-128 ~ 127或0 ~ 255
int用于存储整数,占用4个字节,取值范围为-2147483648 ~ 2147483647或0 ~ 4294967295
short用于存储短整数,占用2个字节,取值范围为-32768 ~ 32767或0 ~ 65535
long用于存储长整数,占用8个字节,取值范围为-9223372036854775808 ~ 9223372036854775807或0 ~ 18446744073709551615

💡 规则

  • 整型变量在使用前必须声明,声明时需要指定变量的类型
int x; // 声明整型变量x
  • 变量的命名应该具有描述性,能够清晰地表达变量的含义。变量名只能由字母、数字和下划线组成,不能以数字开头长度应该控制在一定范围内。
int age; // 声明一个描述年龄的整型变量
int _count; // 声明一个计数器,变量名以下划线开头
  • 变量的赋值可以在声明时初始化,也可以在后面的程序中赋值
int x = 10; // 声明整型变量x并初始化为10
x = 20; // 给变量x赋值为20
  • 整型变量可以进行算术运算,包括等。
int x = 10, y = 20;
int z = x + y; // z的值为30
  • 输出整型变量时,需要使用%d格式化符号。
int x = 10;
printf("x的值为:%d\n", x); // 输出x的值为10

整型变量是C语言中常用的数据类型之一,掌握好整型变量的概念和代码规则,可以帮助我们编写出正确高效易读的程序。

🏷️ 浮点型

💡 概念

  • 在C语言中,浮点型是一种基本的数据类型,用于存储实数,即带有小数点的数值。浮点型变量可以存储不同的实数值,包括正数负数。C语言中的浮点型变量可以分为以下两种:
类型解释
float用于存储单精度浮点数,占用4个字节,取值范围为3.4E-38 ~ 3.4E+38
double用于存储双精度浮点数,占用8个字节,取值范围为1.7E-308 ~ 1.7E+308

💡 规则

  • 浮点型变量在使用前必须声明,声明时需要指定变量的类型
float x; // 声明单精度浮点型变量x
double y; // 声明双精度浮点型变量y
  • 变量的命名应该具有描述性,能够清晰地表达变量的含义。变量名只能由字母、数字和下划线组成,不能以数字开头长度应该控制在一定范围内。
float height; // 声明一个描述身高的单精度浮点型变量
double weight; // 声明一个描述体重的双精度浮点型变量
  • 变量的赋值可以在声明时初始化,也可以在后面的程序中赋值
float x = 3.14; // 声明单精度浮点型变量x并初始化为3.14
x = 2.5; // 给变量x赋值为2.5
double y = 1.23; // 声明双精度浮点型变量y并初始化为1.23
y = 4.56; // 给变量y赋值为4.56
  • 浮点型变量可以进行算术运算,包括等。
float x = 3.14, y = 2.5;
float z = x + y; // z的值为5.64
  • 输出浮点型变量时,需要使用%f%lf格式化符号,分别对应单精度浮点型双精度浮点型
float x = 3.14;
double y = 1.23;
printf("x的值为:%f\n", x); // 输出x的值为3.140000
printf("y的值为:%lf\n", y); // 输出y的值为1.230000

浮点型变量是C语言中常用的数据类型之一,掌握好浮点型变量的概念和代码规则,可以帮助我们编写出正确高效易读的程序。


🏷️ 字符型

💡 概念

  • 在C语言中,字符型是一种基本的数据类型,用于存储单个字符。字符型变量可以存储不同的字符,包括字母数字符号控制字符等。
类型解释
char占用一个字节,取值范围为-128 ~ 127或0 ~ 255

💡 规则

  • 字符型变量在使用前必须声明,声明时需要指定变量的类型
char ch; // 声明字符型变量ch
  • 变量的命名应该具有描述性,能够清晰地表达变量的含义。变量名只能由字母、数字和下划线组成,不能以数字开头长度应该控制在一定范围内。
char first_name; // 声明一个表示名字的字符型变量
char _ch; // 声明一个表示字符的变量,变量名以下划线开头
  • 变量的赋值可以在声明时初始化,也可以在后面的程序中赋值
char ch = 'A'; // 声明字符型变量ch并初始化为'A'
ch = 'B'; // 给变量ch赋值为'B'
  • 字符型变量可以进行算术运算,包括等。在计算时,实际上是将字符的ASCII码进行运算。
char ch = 'A';
ch = ch + 1; // ch的值为'B'
  • 输出字符型变量时,需要使用%c格式化符号。
char ch = 'A';
printf("ch的值为:%c\n", ch); // 输出ch的值为'A'

字符型变量是C语言中常用的数据类型之一,掌握好字符型变量的概念和代码规则,可以帮助我们编写出正确高效易读的程序。


🏷️ 指针型

💡 概念

  • C语言指针是一种变量类型,它存储另一个变量的内存地址。指针变量包含了一个内存地址,可以通过该地址访问存储在该地址上的变量的值

💡 规则

  • 指针变量的声明需要使用“*”符号来标识该变量是一个指针类型。例如:
int *p;
  • 这个声明语句表示p是一个指向int类型指针变量。它可以指向任何一个int类型的变量。

  • 指针变量赋值需要使用“&”符号来获取变量的地址。例如:

int a = 10;
int *p;
p = &a;
  • 这个代码段中,p指向了变量a的地址

  • 指针变量的解引用需要使用“*”符号来获取指针变量所指向的变量的值。例如:

int a = 10;
int *p;
p = &a;
printf("%d", *p);
  • 这个代码段中,*p表示p指向的变量的值,即输出10

  • 指针变量还可以用于动态内存分配数组操作等高级功能。

  • 在使用指针变量时,需要注意指针变量值不能为NULL,否则会导致程序崩溃。同时,指针变量的操作需要谨慎,否则可能会导致内存泄漏程序崩溃等问题。

  • 指针变量的初始化:指针变量在声明时,如果没有初始化,则默认值为NULL。可以通过将指针变量赋值为0或者NULL显式地将其初始化为NULL

int *p = NULL; // 将指针变量p初始化为NULL
  • 指针变量的赋值:可以将一个指针变量赋值给另一个指针变量,这样两个指针变量将指向同一个地址。同时,可以将指针变量赋值为NULL或者0,表示指向空地址
int a = 10;
int *p1 = &a; // 将p1指向a的地址
int *p2 = p1; // 将p2指向p1所指向的地址,即a的地址
int *p3 = NULL; // 将p3赋值为NULL,表示指向空地址
  • 指针变量的比较:可以使用关系运算符(==!=><>=<=)来比较两个指针变量的值。如果两个指针变量指向同一个地址,则它们的值相等。如果指针变量指向不同的地址,则它们的值不相等
int a = 10;
int *p1 = &a;
int *p2 = &a;
if (p1 == p2) { // 指针变量p1和p2指向同一个地址,值相等
    printf("p1 and p2 point to the same address.\n");
}
  • 指针变量的递增和递减:可以使用递增(++)递减(--)运算符来增加或减少指针变量的值。递增和递减操作会使指针变量指向下一个上一个地址
int a[5] = {1, 2, 3, 4, 5};
int *p = a; // 将指针变量p指向数组a的第一个元素
for (int i = 0; i < 5; i++) {
    printf("%d ", *p); // 输出指针变量所指向的元素的值
    p++; // 将指针变量p指向下一个元素
}
  • 指针变量的数组操作:可以将指针变量视为数组名来进行数组操作。例如,可以使用指针变量访问数组元素,也可以使用指针变量作为函数的参数来传递数组。
int a[5] = {1, 2, 3, 4, 5};
int *p = a; // 将指针变量p指向数组a的第一个元素
int sum = 0;
for (int i = 0; i < 5; i++) {
    sum += *(p + i); // 使用指针变量访问数组元素并求和
}
printf("sum = %d\n", sum);
  • 动态内存分配:可以使用指针变量来进行动态内存分配。可以使用malloc函数来动态分配内存,使用free函数来释放分配的内存
int *p = (int *)malloc(sizeof(int) * 5); // 动态分配5个int类型的内存空间
if (p == NULL) { // 判断内存是否分配成功
    printf("memory allocation failed.\n");
    return -1;
}
for (int i = 0; i < 5; i++) {
    *(p + i) = i + 1; // 对动态分配的内存空间进行赋值
}
for (int i = 0; i < 5; i++) {
    printf("%d ", *(p + i)); // 输出动态分配的内存空间的值
}
free(p); // 释放动态分配的内存空间

以上是一些C语言指针变量的代码规则和解释。指针变量是C语言中非常重要的概念,掌握指针变量的使用方法可以让我们更加灵活地编写程序。


📑 数据类型转换

💡 概念

  • C语言数据类型转换是指将一个数据类型转换为另一个数据类型的过程。在C语言中,数据类型转换有两种:隐式类型转换显式类型转换

🏷️ 隐式类型转换

💡 概念

  • 隐式类型转换是指在表达式中,编译器自动一种数据类型转换为另一种数据类型的过程。例如,当一个表达式中包含不同类型的操作数时,编译器会自动将其中的一种数据类型转换为另一种数据类型,以便进行运算。

💡 规则

  • 如果两个操作数中有一个是double类型,另一个操作数会被转换为double类型
  • 如果两个操作数中有一个是float类型,另一个操作数会被转换为float类型
  • 如果两个操作数中有一个是long类型,另一个操作数会被转换为long类型
  • 如果两个操作数中有一个是unsigned int类型,另一个操作数会被转换为unsigned int类型
  • 如果两个操作数中有一个是int类型,另一个操作数会被转换为int类型
    例如:
int a = 10;
float b = 3.14;
float c = a + b; // a会被自动转换为float类型,以便与b进行运算

🏷️ 显式类型转换

  • 显式类型转换是指在程序中明确地指定要将一个数据类型转换为另一个数据类型的过程。显式类型转换可以通过强制类型转换来实现,强制类型转换的语法如下:
(type)expression

其中,type表示要转换的数据类型,expression表示要转换的表达式。

💡 规则

  • 可以将一种数据类型转换为另一种数据类型
  • 可以将一个较小的数据类型转换为一个较大的数据类型,但是会导致精度损失
  • 不可以将一个较大的数据类型转换为一个较小的数据类型,否则会导致数据溢出
    例如:
int a = 10;
float b = 3.14;
int c = (int)b; // 将float类型的b转换为int类型的c

以上是C语言数据类型转换的概念和代码规则及其解释。在进行数据类型转换时,需要根据实际情况选择隐式类型转换或者显式类型转换,并且需要注意转换后可能导致的精度损失数据溢出等问题。


下一篇:运算符和表达式


🎀小结

⚡恭喜你的内功又双叒叕得到了提高!!!🔋

🔚以上就是C语言变量和数据类型的全部知识了~

🤗感谢大家的阅读~

📬后续还会继续更新💓,欢迎持续关注哟~📌

💫如果有错误❌,欢迎指正呀💫

✨如果觉得收获满满,可以点点赞👍支持一下哟~✨


在这里插入图片描述


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/12959.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

知乎版ChatGPT「知海图AI」加入国产大模型乱斗,称效果与GPT-4持平

“2023知乎发现大会”上&#xff0c;知乎创始人、董事长兼CEO周源和知乎合作人、CTO李大海共同宣布了知乎与面壁智能联合发布“知海图AI”中文大模型。 周源据介绍&#xff0c;知乎与面壁智能达成深度合作&#xff0c;共同开发中文大模型产品并推进应用落地。目前&#xff0c;知…

vue 报错 error:03000086:digital envelope routines::initialization error解决方案

目录 1. 引言: 2. 更换版本出现问题: 3. 出现原因: 4. 解决办法: -> 4. 1 删了 再换回16.15版本 -> 4.2 指令修改(好使) ---> 4.2.1效果如图 -> 4.3 其他指令就别试了 压根不好使 1. 引言: npm出现问题 , 卸载后 装了个新node 18.15版本 2. 更换版本…

JavaScript【三】JavaScript中的数组

文章目录 &#x1f31f;前言&#x1f31f;数组&#x1f31f;声明&#xff1a;&#x1f31f; 隐式创建&#xff1a;&#x1f31f; 实例化构造函数&#xff1a; &#x1f31f; 注意&#xff1a;一个值为数组的长度。&#x1f31f; 访问&#xff1a;&#x1f31f; 遍历&#xff1a…

SpringCloud+RabbitMQ+Docker+Redis+搜索+分布式,系统详解springcloud微服务技术栈(Eureka、Ribbon)

微服务技术栈导学 微服务技术是分布式架构&#xff08;把服务做拆分&#xff09;的一种 而springcloud仅仅是解决了拆分时的微服务治理的问题&#xff0c;其他更复杂的问题并没有给出解决方案 一个完整的微服务技术要包含的不仅仅是springcloud 微服务技术栈 包括什么 …

深度学习中的各种不变性

不变性 平移不变性&#xff08;Translation Invariance&#xff09;旋转不变性&#xff08;Ratation Invariance&#xff09;尺度不变性&#xff08;Size Invariance&#xff09;光照不变性&#xff08;Illumination Invariance&#xff09;仿射不变性&#xff08;Affine Invar…

springcloud2.1.0整合seata1.5.2+nacos2.10(附源码)

springcloud2.1.0整合seata1.5.2nacos2.10&#xff08;附源码&#xff09; 1.创建springboot2.2.2springcloud2.1.0的maven父子工程如下&#xff0c;不过多描述&#xff1a; 搭建过程中也出现很多问题&#xff0c;主要包括&#xff1a; 1.seataServer.properties配置文件的组…

第二部分——长难句——第一章——并列句

conjunction(and,but,if,when(while)) 想把两个句子&#xff08;多件事&#xff09;连在一块&#xff0c;就必须加上连词。 所以长难句到底是啥&#xff1f; 所以长难句&#xff08;直白表达&#xff0c;并不是语法表述&#xff09;就是几个简单句多家上几个连接词就齐活了&am…

【vue2】使用vue-admin-template动态添加路由的思路/addRoutes的使用

&#x1f609;博主&#xff1a;初映CY的前说(前端领域) ,&#x1f4d2;本文核心&#xff1a;用原生js实现省市区联动 【前言】在通用的后台管理项目的开发中&#xff0c;不仅仅是会涉及到对表单数据等的增删改查操作还会涉及到一些关于权限管理的问题。我们将基于一个RBAC的思维…

C++STL大全----容器篇(上)

&#xff08;一&#xff09;概念 STL&#xff0c;英文全称 standard template library&#xff0c;中文可译为标准模板库或者泛型库&#xff0c;其包含有大量的模板类和模板函数&#xff0c;是 C 提供的一个基础模板的集合&#xff0c;用于完成诸如输入/输出、数学计算等功能。…

2023-04-21 学习记录--C/C++-实现升序降序(冒泡法/沉底法)

合抱之木&#xff0c;生于毫末&#xff1b;九层之台&#xff0c;起于累土&#xff1b;千里之行&#xff0c;始于足下。&#x1f4aa;&#x1f3fb; 一、冒泡法(沉底法) —— 升序 ⭐️ &#xff08;一&#xff09;、思路 从左到右&#xff1a; 1、第一个与第二个比较&#xff0…

RK3568平台开发系列讲解(调试篇)IS_ERR函数的使用

🚀返回专栏总目录 文章目录 一、IS_ERR函数用法二、IS_ERR函数三、内核错误码沉淀、分享、成长,让自己和他人都能有所收获!😄 📢本篇将介绍 IS_ERR 函数的使用。 一、IS_ERR函数用法 先看下用法: 二、IS_ERR函数 对于任何一个指针来说,必然存在三种情况: 一种是合…

微信小程序开发(学习记录1.0)

首先&#xff0c;把遇到的问题贴出来&#xff0c;主要是这个解决问题的思路&#xff0c;供大家参考。 现在的问题是将下面的导航栏做出来&#xff0c;但是在自己做的时候 遇到的问题 在app.json文件中输入tarBar&#xff0c;就会生成模板代码&#xff0c;默认会生成一个list的模…

树莓派 QT项目开机自启动

我自己用qt设置了一个界面&#xff0c;如何让他开机自启动呢&#xff1f; 目录 1.生成qt项目的可执行文件 2. 编写一个自启动脚本 3.重启树莓派 1.生成qt项目的可执行文件 QT项目的可执行文件就是.exe文件。首先在qt中打开&#xff0c;点击红色方框图标&#xff0c;选择Re…

Oracle函数记录

一、各个函数介绍 1.OVER(PARTITION BY… ORDER BY…)--开窗函数 1.开窗函数用于为行定义一个窗口&#xff08;这里的窗口是指运算将要操作的行的集合&#xff09;&#xff0c;它对一组 值进行操作&#xff0c;不需要使用GROUP BY子句对数据进行分组&#xff0c;能够在同一…

软件测试?月薪20k+?不会自动化测试的我真的很难....

做自动化测试后悔吗&#xff1f; 后悔&#xff0c;真的后悔&#xff01; 后悔没有早点学..... 虽然现在网上到处都在散播35的焦虑&#xff0c;姑且信之&#xff0c;那么反问你&#xff0c;如果你30岁了&#xff0c;那么给你5年&#xff0c;能够在某个领域成为专家呢&#xf…

《花雕学AI》ChatGPT跟人类的思考方式有什么不同?

一、ChatGPT是一个基于GPT-3.5的对话语言模型&#xff0c;它可以根据用户的输入生成多轮对话&#xff0c;也可以生成文本、代码、音乐等内容。ChatGPT的思考方式是利用大量的数据和强大的算力来学习语言的联合概率分布&#xff0c;从而能够根据上下文和目标生成合理和有趣的回复…

python文本自动伪原创-ai一键伪原创

chatgpt批量伪原创的优势 ChatGPT是一个由OpenAI开发的强大的自然语言处理模型&#xff0c;它具有批量伪原创的优势&#xff0c;以下是这些优势&#xff1a; 模型能够处理大量的数据&#xff1a;ChatGPT通过训练大规模的语言模型来生成伪原创文本。这个模型拥有一个庞大的语料…

GaussDB工作级开发者认证—第二章GaussDB数据库应用程序开发指引

一. 驱动概述 GaussDB客户端接入认证&#xff0c;GaussDB支持以下三种认证方式&#xff1a;基于主机的认证口令认证SSL加密 二. JDBC接口介绍 1. JDBC概述 Java数据库连接&#xff08;JDBC&#xff09;是Java标准&#xff0c;它提供了从Java连接到关系数 据库的接口&#x…

数据挖掘:心脏病预测(测评指标;EDA)

目录 一、前期准备 二、实战演练 2.1分类指标评价计算示例 2.2数据探索性分析&#xff08;EDA&#xff09; 2.2.1 导入函数工具箱 2.2.2 查看数据信息等相关数据 判断数据缺失和异常 数字特征相互之间的关系可视化 类别特征分析&#xff08;箱图&#xff0c;小提琴图&am…

5.2 中心极限定理

学习目标&#xff1a; 要学习中心极限定理&#xff0c;我会采取以下几个步骤&#xff1a; 学习基本概念&#xff1a;了解什么是随机变量、样本、总体、概率密度函数等基本概念&#xff0c;为学习中心极限定理打下基础&#xff1b;学习正态分布&#xff1a;中心极限定理的核心…