C 语言_第二章.数组
第二章 数组
2.1 数组的概念
- 数组是一种数据结构;
- 可以存储多个数据;
- 每个数据的类型相同;
- 每个数据是一个变量;
- 变量存放在一块连续的内存中。
2.2 数组的定义及初始化
2.2.1 数组的定义
- 一维数组
定义格式:数据类型 数组名[数组元素个数]。
int array01[10]; // 定义了一个存放 10 个 int 类型变量的数组 array01
short array02[20]; // 同一作用域不允许出现相同数组名
array02 = 5; // 错误, 数组名是常量, 不能直接赋值
/*定义的时候, [] 内的是数组元素个数, 使用的时候, [] 内的是下标数组下标是从 0 开始计算, 如果要输出数组第五个元素的值, 只需要 printf("%d\n", a[4]);
*/
- 二维数组
定义格式:数组类型 数组名[行的个数][列的个数]
int array01[5][4]; // 定义了一个行为 5, 列为 4, 存放 int 类型变量的数组 array01
int array02[][3];
/*二维数组只是逻辑层面的二维, 在物理层面上依然是一维;二维数组在定义的时候可以不给出行数, 但必须给出列数;二维数组的大小根据初始化的行数来定。
*/
2.2.2 数组分类
- 按元素分类
字符数组,短整型数组,整形数组,长整型数组,浮点型数组,指针数组,结构体数组。
int *a[10]; // 每个元素存的是 int * 类型的变量
typedef struct stu STU; // 为 struct stu 定义一个别名 STU
STU b[10]; // 每个元素存的是 struct stu 类型的变量
- 按纬度分类
一维数组,二维数组,多维数组。
int array[4][3][5]; // 定义了一个存 int 类型变量的三维数组
2.2.3 数组初始化
- 一维数组初始化
int main()
{//int a[5] = {1, 2, 3, 4, 5};//int a[5] = {1, 2}; // 初始化部分元素, 其他元素为 0//int a[5] = {[2] = 4}; // 初始化 a[2], 其它元素为 0//int a[5] = {a[2] = 4};// 初始化 a[0] a[2] 为 4//int a[5] = {0};int a[] = {1, 2, 3}; // 数组的元素个数由{}元素个数决定//a = {3, 4, 5}; // 不可以, 这种赋值只能在初始化时使用// 在定义之后, 给数组赋值只能一个一个赋值//int a[] = {}; // 不可以, 编译器不知道几个元素for (unsigned int i = 0; i < sizeof(a) / sizeof(a[0]); i++){ // sizeof(a) / sizeof(a[0]) = 数组元素个数printf("a[%d] = %d ", i, a[i]);}printf("\n");a[2] = 5; // 赋值for (unsigned int i = 0; i < sizeof(a) / sizeof(a[0]); i++){printf("a[%d] = %d ", i, a[i]);}return 0;
}
- 二维数组初始化
int main()
{int a[2][2] = {{1, 2}, {3, 4}}; // 允许 int a[2][2] = {1, 2, 3, 4};int b[][3] = {{1, 2, 3}, {4}};int c[3][3] = {{1}, {2}};int d[2][2] = {{2, 2}, {2}};d[1][1] = 1;//d[2] = 4; // 不允许for (unsigned int i = 0; i < sizeof(a) / sizeof(a[0]); i++){ // sizeof(a) / sizeof(a[0]) = 数组行for (unsigned int j = 0; j < sizeof(a[0]) / sizeof(a[0][0]); j++){ // sizeof(a[0]) / sizeof(a[0][0]) = 数组列printf("a[%d][%d] = %d ", i, j, a[i][j]);}printf("\n");} // sizeof(a) / sizeof(a[0][0]) = 数组元素个数printf("\n");for (unsigned int i = 0; i < sizeof(b) / sizeof(b[0]); i++){for (unsigned int j = 0; j < sizeof(b[0]) / sizeof(b[0][0]); j++){printf("b[%d][%d] = %d ", i, j, b[i][j]);}printf("\n");}printf("\n");for (unsigned int i = 0; i < sizeof(c) / sizeof(c[0]); i++){for (unsigned int j = 0; j < sizeof(c[0]) / sizeof(c[0][0]); j++){printf("c[%d][%d] = %d ", i, j, c[i][j]);}printf("\n");}printf("\n");for (unsigned int i = 0; i < sizeof(d) / sizeof(d[0]); i++){for (unsigned int j = 0; j < sizeof(d[0]) / sizeof(d[0][0]); j++){printf("d[%d][%d] = %d ", i, j, d[i][j]);}printf("\n");}return 0;
}
2.2.4 数组名
数组名是一个常量,代表的是数组首元素地址,不可以更改。
- 一维数组名
int a[3];
a[0]; // 代表数组的首元素
&a[0]; // 数组首元素地址
&a; // 数组的地址, 也是数组首元素的地址
&a[0] + 1; // 跨过一个元素, 即相当于 &a[1]
a + 1; // 跨过一个元素
&a + 1; // 跨过数组 a
int main()
{int a[3];printf("%p %p %p\n", &a[0], a, &a); // 得到的地址相同, 假设为 xprintf("%p %p %p\n", &a[0] + 1, a + 1, &a + 1); // x + 4 x + 4 x + 12//a 有三个 int 型元素, 每一个元素占 4 个字节, 数组在内存中占 12 个字节//%p 将地址以十六进制的方式打印出来return 0;
}
- 二维数组名
int a[2][2];
int a[2][2];
&a[0][0]; // 数组第 0 行, 第 0 列元素的地址
a[0]; // 数组第 0 行, 也是数组第 0 行, 第 0 列元素的地址
&a[0]; // 数组第 0 行的地址
&a; // 数组的地址, 也是数组首元素的地址
&a[0][0] + 1; // 跨过一个元素
a[0] + 1; // 跨过一个元素
&a[0] + 1; // 跨过一行
a + 1; // 跨过一行
&a + 1; // 跨过数组 a
int main()
{int a[2][2];printf("%p %p %p %p %p\n", &a[0][0], a[0], &a[0], a, &a);printf("%p %p %p %p %p\n", &a[0][0] + 1, a[0] + 1, &a[0] + 1, a + 1, &a + 1);return 0;
}
2.2.5 字符数组
字符每一个元素都是字符型的数组。
- 一维字符数组
int main()
{//char a[5];//char a[5] = {1, 2, 3, 4, 5};//char a[5] = {'a', 'b', 'c', 'd', 'e'};//char a[5] = {'a'};char a[6] = {'a', 'b', 'c', 'd', 'e', '\0'};//char a[6] = "abcde"; // 在 "" 后面自动加上一个\0char b[] = "hehe"; // sizeof(b) = 5char c[128] = "Hello world"; // sizeof(c) = 128//字符数组中含有 \0 字符 这种字符数组称为字符串/*for (int i = 0; i < sizeof(a) / sizeof(a[0]); i++){printf("%c ", a[i]);}*/printf("%s\n", a); // %s 是用来打印字符串printf("[%6s]\n", b); // [ hehe] %6s 代表输出一个长度为 6 的字符串, 不足左补空格, 超过 6 则全部输出printf("[%-6s]\n", b); // [hehe ] 右补空格printf("[%12.5s]\n", c); // [ Hello] 选择 12 个字符, 从左开始截取 5 个字符, 其余位补空格printf("[%-12.5s]\n", c); // [Hello ]printf("[%6.7s]\n", c); // [Hello w]printf("[%5s]\n", c); // [Hello world]printf("%d\n", sizeof("hello")); // "hello"字符串常量存在常量区return 0;
}
- 二维字符数组
int main()
{char a[2][128] = {"hello", "world"};for (int i = 0; i < sizeof(a) / sizeof(a[0]); i++){printf("%s\n", a[i]);}return 0;
}
2.3 字符串处理函数
#include <stdio.h>
#include <string.h>int main()
{char a[16] = "[abcd]";char b[16] = "[abcde]";char c[16] = "";printf("strlen(a) = %d\n", strlen(a)); // 6printf("strcpy(c, a) = %s\n", strcpy(c, a)); // [abcd]printf("strcat(c, b) = %s\n", strcat(c, b)); // [abcd][abcde]printf("strcmp(a, b) = %d\n", strcmp(a, b)); // -1printf("strupr(c) = %s\n", strupr(c)); // [ABCD][ABCDE]printf("strlwr(c) = %s\n", strlwr(c)); // [abcd][abcdeprintf("stricmp(\"[AbCd]\", a) = %d\n", stricmp("[AbCd]", a)); // 0printf("strncmp(a, b, 5) = %d\n", strncmp(a, b, 5)); // 0printf("strrev(a) = %s\n", strrev(a)); // ]dcba[printf("strchr(a, 'o') = %s\n", strchr(a, 'o')); // dcba[printf("strstr(c, \"abc\") = %s\n", strstr(c, "abc")); // abcd][abcde]return 0;
}int main()
{char str[] = "100;86#110#150;7944;5667#101#he;lo";char *p[10] = {0};p[0] = strtok(str, "#;");int i = 0;do{i++;p[i] = strtok(NULL, "#;");}while(p[i] != NULL);for (int i = 0; p[i] != NULL; i++){printf("%s ", p[i]);}return 0;
}int main()
{int year = 2021;int month = 10;int day = 1;char buf[128] = "";char str[] = "20221001";/*%d 输出整数%nd 占 n 位%0nd 占 n 位, 不足补 0%-nd 占 n 位左对齐%*d 跳过所有数字%*nd 跳过前 n 个数字%*s 跳过所有字符%[a] 取字符 a%*[a] 跳过字符 a%[a-z] 取字符 a ~ z%*[a-z] 跳过字符 a ~ z%[0-9] 取所有数字%*[0-9] 跳过所有数字%[^x] 取不是字符 x 的字符, 遇到 x 退出%*[^x] 跳过不是字符 x 的字符*/sprintf(buf, "%4d:%02d:%02d %d %s", year, month, day, 5, "hello");/*sprintf(buf, "格式", "参数") 是把参数以某种格式写入到 buf 中*/sscanf(str, "%4d%2d%2d", &year, &month, &day);/*sscanf(buf, "格式", "参数") 是把 buf 以某种格式写入到参数中*/printf("%s\n", buf); // 2021:10:01 5 helloprintf("%d:%2d:%02d\n", year, month, day); // 2022:10:01return 0;
}/*** @header #include <string.h>* @brief 测量字符串长度, 忽略 '\0'* @param size_t: unsigned int* @param Str: 字符串* @return 返回字符串长度*/
size_t strlen(const char *Str);/*** @header #include <string.h>* @brief 将源字符串拷贝给目标字符串* @param Dest: 目标字符串* @param Source: 源字符串* @return 返回指向目标字符串的指针*/
char *strcpy(char *Dest, const char *Source);/*** @header #include <string.h>* @brief 将源字符串连接到目标字符串末尾* @param Dest: 目标字符串* @param Source: 源字符串* @return 返回指向目标字符串的指针*/
char *strcat(char *Dest, const char *Source);/*** @header #include <string.h>* @brief 将 Str1 和 Str2 的相同位按 ASCII 码值比较* @param Str1: 字符串 1* @param Str2: 字符串 2* @return Str1 > Str2, 返回 1;* Str1 = Str2, 返回 0;* Str1 < Str2, 返回 -1。*/
int strcmp(const char *Str1, const char *Str2);/*** @header #include <string.h>* @brief 将字符串所有小写字母转换成大写字母* @param Str: 目标字符串* @return 返回指向 Str 的指针。 */
char *strupr(char *Str);/*** @header #include <string.h>* @brief 将字符串所有大写字母转换成小写字母* @param Str: 目标字符串* @return 返回指向 Str 的指针。 */
char *strlwr(char *Str);/*** @header #include <string.h>* @brief 功能类似于 strcmp, 只是它无视英文字母的大小写。* @param Str1: 字符串 1* @param Str2: 字符串 2* @return Str1 > Str2, 返回 1;* Str1 = Str2, 返回 0;* Str1 < Str2, 返回 -1。*/
int stricmp(const char *Str1, const char *Str2);/*** @header #include <string.h>* @brief 类似于 strcmp, 只是它只比较前 MaxCount 位的字符串大小。* @param Str1: 字符串 1* @param Str2: 字符串 2* @param MaxCount: 字符串比较的位数* @return Str1 > Str2, 返回 1;* Str1 = Str2, 返回 0;* Str1 < Str2, 返回 -1。*/
int strncmp(const char *Str1, const char *Str2, size_t MaxCount);/*** @header #include <string.h>* @brief 将字符串逆置。* @param Str: 字符串* @return 返回指向 Str 的指针。*/
char *strrev(char *Str);/*** @header #include <string.h>* @brief 在 Str 中找到第一次匹配 Val 的字符串, 并从此处开始到结束的字符串返回。* @param Str: 源字符串* @param Val: 目标字符* @return 成功匹配, 返回指向新地址的指针, 否则返回 0。*/
char *strchr(const char *Str, int Val);/*** @header #include <string.h>* @brief 在 Str 中找到第一次匹配 SubStr 的字符串, 并从此处开始到结束的字符串返回。* @param Str: 源字符串* @param SubStr: 目标字符串* @return 成功匹配, 返回指向新地址的指针, 否则返回 0。*/
char *strstr(const char *Str, const char *SubStr);/*** @header #include <string.h>* @brief 分割 Str* @param Str: 被分割的字符串* @param Delim: 分隔符* @return 返回分割好的字符串*/
char *strtok(char *Str, const char *Delim);
2.4 字符串输入
int main()
{char str[16] = "";scanf("%s", str); // 不建议/*scanf 遇到空格不读取scanf 不会读取 '\n'scanf 不安全 */gets(str); // 不建议/*gets 不会读取 '\n'gets 不安全*/fgets(str, sizeof(str), stdin); // 推荐 stdin: 标准输入, 键盘输入return 0;
}/*** @header #include <stdio.h>* @brief 从标准输入获得一个字符串* @param Buffer: 字符串* @return 返回指向 Buffer 的指针*/
char *gets(char *Buffer);/*** @header #include <stdio.h>* @brief 从 File 获得一个长度为 MaxCount 的 Buf。* @param Buf: 字符串* @param MaxCount: 可获得的字符数* @param FILE: 一种结构体类型* @param File: 获得字符串的地址* @return 返回指向 Buf 的指针。*/
char *fgets(char *Buf, int MaxCount, FILE *File);
2.5 练习
2.5.1 求数组最大值
#include <stdio.h>int main()
{int tmp;size_t i;int arr[5] = {5, 9, 66, 7, 55};tmp = arr[0];for (i = 1; i < sizeof(arr) / sizeof(arr[0]); i++){if (tmp < arr[i]){tmp = arr[i];}}printf("The arr MaxNum is %d。\n", tmp);return 0;
}
2.5.2 数组逆置
#include <stdio.h>int main()
{int end; // 末尾int tmp;size_t i;int begin; // 开始int arr[5] = {5, 9, 66, 7, 55};begin = 0;end = sizeof(arr) / sizeof(arr[0]) - 1;while (begin < end){tmp = arr[begin];arr[begin] = arr[end];arr[end] = tmp; // 这三句语句用于交换两数的值begin++;end--;}for (i = 0; i < sizeof(arr) / sizeof(arr[0]); i++){printf("arr[%u] = %d ", i, arr[i]);}printf("\n");return 0;
}
2.5.3 数组排序
#include <stdio.h>int main()
{int tmp;size_t i;size_t j;int arr[5] = {5, 9, 66, 7, 55}; // 从小到大排序for (i = 0; i < sizeof(arr) / sizeof(arr[0]) - 1; i++){for (j = i; j < sizeof(arr) / sizeof(arr[0]); j++){if (arr[i] > arr[j]){tmp = arr[i];arr[i] = arr[j];arr[j] = tmp;}}}for (i = 0; i < sizeof(arr) / sizeof(arr[0]); i++){printf("arr[%u] = %d ", i, arr[i]);}printf("\n");return 0;
}
2.5.4 找出一维数组的最大值和次大值
/*给定一个数组, 找到这个数组的第一大值和第二大值, 并输出第一大值和第二大值以及对应的出现次数第一大值和第二大值不能相等, 如果数组所有元素相同, 则输出printf("All elements of this array are the same, MaxNum = %d, have no second largest.\n", max_fir);
*/
#include <stdio.h>int main()
{size_t i;int max_fir;int max_sec;int cnt_fir = 0;int cnt_sec = 0;int arr[10] = {14, 22, 22, 16, 18, 18, 18, 15, 12, 10};//int arr[10] = {14, 14, 13, 4, 13, 13, 15, 13, 4, 13};//int arr[10] = {2, 2, 2, 2, 20, 2, 16, 2, 16, 2};//int arr[10] = {2, 2, 2, 2, 2, 2, 2, 2, 2, 2};//int arr[10] = {1, 2, 2, 2, 2, 2, 2, 2, 2, 2};//int arr[10] = {4, 4, 2, 2, 2, 2, 2, 2, 2, 2};max_fir = arr[0];max_sec = arr[0];for (i = 1; i < sizeof(arr) / sizeof(arr[0]); i++){if (arr[i] == max_fir || arr[i] == max_sec)continue;else{if (arr[i] >= max_sec)max_sec = arr[i];else if (max_fir == max_sec)max_sec = arr[i];if (max_sec > max_fir){max_sec = max_fir ^ max_sec;max_fir = max_fir ^ max_sec;max_sec = max_fir ^ max_sec;}}}for (i = 0; i < sizeof(arr) / sizeof(arr[0]); i++){if (arr[i] == max_fir)cnt_fir++;else if (arr[i] == max_sec)cnt_sec++;}if (max_sec == max_fir)printf("All elements of this array are the same, MaxNum = %d, have no second largest.\n",max_fir);elseprintf("MaxNum = %d, MaxCnt = %d\nSecNum = %d, SecCnt = %d\n",max_fir, cnt_fir, max_sec, cnt_sec);return 0;
}
2.5.4 找出各科平均值和各科不及格人数
/*有 5 个人, 他们考试科目有: 语 数 外, 成绩如下float a[5][3] = {{80, 75, 56}, {59, 65, 71}, {59, 63, 70}, {85, 45, 90}, {76, 77, 45}};计算各科的平均分和各科不及格的人数
*/
#include <stdio.h>int main()
{size_t i;size_t j;int failcnt[3] = {0};float avg[3] = {0.0f};float a[5][3] = {{80, 75, 56}, {59, 65, 71}, {59, 63, 70}, {85, 45, 90}, {76, 77, 45}};for (i = 0; i < sizeof(a) / sizeof(a[0]); i++){for (j = 0; j < sizeof(a[0]) / sizeof(a[0][0]); j++){if (a[i][j] < 60)failcnt[j]++;avg[j] += a[i][j];}}printf("The average score for Chinese is %.2f, the number of failed students is %d\n",avg[0] / 5, failcnt[0]);printf("The average score for Math is %.2f, the number of failed students is %d\n",avg[1] / 5, failcnt[1]);printf("The average score for Foreign Languages is %.2f, the number of failed students is %d\n",avg[2] / 5, failcnt[2]);return 0;
}
2.5.5 猜数字游戏
/*#include <stdio.h>#include <time.h>#include <stdlib.h>int main(){//rand() 产生随机数, 但是每次产生的随机数一样//int t = time(NULL); // 时间戳, 现在时间 - 1970.1.1.0.. 秒srand((unsigned int)time(NULL)); // 设置随机种子int a = rand();printf("%d\n", a);printf("%d\n", rand());printf("%d\n", rand());return 0;}
*/
/*随机生成一个四位数, 与自己输入的四位数比较, 如果相等, 就打印猜测成功,如果某一位数字比生成的数字的相同位小了, 就打印某某位小了,如果大了就打印某某位大了, 否则打印某某位相等。
*/
#include <stdio.h>
#include <time.h>
#include <stdlib.h>
#include <math.h>int main()
{int rand_num[4] = {0};int input_num[4] = {0};int flag = 0;int sum = 0;srand((unsigned int)time(NULL));for (int i = 0; i < 4; i++){rand_num[i]= rand() % 10;}while (1){flag = 0;printf("Please enter a random 4-digit-number: ");scanf("%d", &sum);for (int i = 3; i >= 0; i--)input_num[i] = sum / (int)(pow(10, 3 - i)) % 10;for (int i = 0; i < 4; i++){if (input_num[i] == rand_num[i]){printf("The %dth digit is correct\n", i + 1);flag++;}else if (input_num[i] > rand_num[i])printf("The %dth digit is bigger\n", i + 1);elseprintf("The %dth digit is smaller\n", i + 1);}if (4 == flag){printf("Congratulations on your correct answer\n");break;}}return 0;
}/*** @header #include <math.h>* @brief 计算 X ^ Y 的值* @param X: 底数* @param Y: 指数* @retval 返回 X ^ Y 的值。*/
double pow(double X, double Y);
2.5.6 实现字符串处理函数
/* strlen */
size_t my_strlen(const char *str)
{size_t len = 0;while (*str++)len++;return len;
}/* strcpy */
char *my_strcpy(char *DstStr, const char *SrcStr)
{char *str = DstStr;while (*SrcStr)*DstStr++ = *SrcStr++;*DstStr++ = 0;return str;
}/* strcat */
char *my_strcat(char *DstStr, const char *SrcStr)
{char *str = DstStr;while (*DstStr)DstStr++;while (*SrcStr)*DstStr++ = *SrcStr++;*DstStr = 0;return str;
}/* strcmp */
int my_strcmp(const char *Str1, const char *Str2)
{while (*Str1){if (*Str1 > *Str2)return 1;else if (*Str1 < *Str2)return -1;Str1++;Str2++;}if (*Str2 == 0)return 0;elsereturn -1;
}/* strrev */
char *my_strrev(char *str)
{char p[16] = {0};char *sstr = str;for (unsigned int i = 0; i < my_strlen(str) / 2; i++){*p = *(str + i);*(str + i) = *(str + my_strlen(str) - i - 1);*(str + strlen (str) - i - 1) = *p;}return sstr;
}
如若内容造成侵权/违法违规/事实不符,请联系编程学习网邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
相关文章
- 字符串题目:判断字符串的两半是否相似
文章目录题目标题和出处难度题目描述要求示例数据范围解法思路和算法代码复杂度分析题目 标题和出处 标题:判断字符串的两半是否相似 出处:1704. 判断字符串的两半是否相似 难度 2 级 题目描述 要求 给你一个偶数长度的字符串 s\texttt{s}s。将其…...
2024/4/26 17:51:56 - 国税局发票查验api接口的开发
对于发票查验来说,如果有多张发票需要查验,从国税局发票查验网站一张张的输入去查,那么效率就显得太慢了,因此想办法自己写一个接口对接国税局。 1 查验请求参数分析 在国税局上进行一次发票查验,用fiddler去抓取请求…...
2024/4/24 6:34:05 - web设计网页规划与设计:企业电子网站设计——简单的电子产品公司官网模板(5页)HTML+CSS+JavaScript
HTML5期末大作业:动漫网站设计——简单的电子产品公司官网模板html(5页) HTMLCSSJavaScript 学生DW网页设计作业成品 web课程设计网页规划与设计 计算机毕设网页设计源码 常见网页设计作业题材有 个人、 美食、 公司、 学校、 旅游、 电商、 宠物、 电器、 茶叶、 家…...
2024/5/5 4:07:06 - Security 整合JWT篇09
功能 将JWT整合到项目中,具体分2个阶段 1.首次登录进行认证,认证成功就返回token 2.之后的请求携带token进行授权认证,就是说每次授权前都需要重新认证了 1 github: 源码地址 2 security08 子工程 引入jwt依赖 <?xml version"1.0…...
2024/4/20 13:29:06 - vue+element 使用案例
1.在components目录下新建一个vue模板文件 2.创建完后的文件默认内容 3.先在tmeplate标签里面写一个div标签 4.在element官网去复制组件代码 https://element.eleme.cn/#/zh-CN/component/button 每种组件都有自己的属性,有些组件还要一些事件,使用时查…...
2024/4/20 13:29:05 - uniapp h5微信授权登录
直接上代码: <view class"IconBox"><view class"tips">——第三方登录——</view><view class"IconItemBox"><view class"IconItem" click"weixinLogin"><u-icon name"w…...
2024/4/25 4:17:22 - 使用Gitee码云创建仓库,上传写好的代码,以及拷贝代码
1.登录码云官网https://gitee.com,如果没有注册,需要注册一个,之后登录码云到首页 2.进行仓库的创建,点击 号,仓库创建 3.之后进入到创建的仓库页面,点击 克隆/下载 复制链接 4.打开终端,输入…...
2024/5/5 6:24:21 - 2021年R1快开门式压力容器操作免费试题及R1快开门式压力容器操作模拟考试
题库来源:安全生产模拟考试一点通公众号小程序 安全生产模拟考试一点通:R1快开门式压力容器操作免费试题是安全生产模拟考试一点通总题库中生成的一套R1快开门式压力容器操作模拟考试,安全生产模拟考试一点通上R1快开门式压力容器操作作业手…...
2024/4/23 1:09:25 - LinuxWindows下安装RocketMQ
文章目录一、官网下载二、Windows环境安装(单机版)部署1. 确认Java环境2. 解压&配置 ROCKETMQ_HOME3. 启动 nameserver3.1 编辑 runserver.cmd 文件3.2 编辑 runbroker.cmd 文件4. 启动 broker5. 验证5.1 创建 topic5.2 查看topic三、Linux环境安装&…...
2024/4/20 13:29:01 - 【机器学习】目标函数总结
文章目录一、为什么需要目标函数?二、机器学习算法分类三、有监督学习的目标函数概述1. 分类问题2. 回归问题3. 数据生成模型四、无监督学习的目标函数1. 聚类2. 数据降维五、强化学习参考链接一、为什么需要目标函数? 几乎所有的机器学习算法最后都归结…...
2024/4/28 1:17:31 - EasyDSS点击视频广场偶尔出现“网络请求失败”的修复方案
EasyDSS视频直播/点播服务平台诞生至今,我们做了不少版本的功能更新和升级,除EasyDSS外,TSINGSEE青犀视频全线平台均有演示平台供参考,用户可以进入演示平台阅览界面,也有测试版本供大家下载测试。若大家有兴趣可以联系…...
2024/4/21 18:24:22 - 各种题材的手游游戏代码素材推荐,不容错过
前方干货满满,建议先收藏再看哦!为大家整理的手游源码素材,总有满足你需求的一款,除此之外,免费,资源质量好,一键打包下载,你还不心动吗? 爱给网 今天小编先给大家介绍爱…...
2024/4/24 13:26:13 - 单链表问题(引入虚拟头结点)
我们发现在解决单链表问题的时候发现在增加和删除的时候总是要单独考虑链表中头结点,再解决其他中间位置的结点,那我们可以引入一个虚拟的头结点,这样无论链表中有没有结点都是一样的解决方法。 画图来看一下引入虚拟头结点后链表的操作过程 …...
2024/5/5 5:55:35 - Vue如何设置环境变量
在开发的时候一般会有是三个环境:开发环境 测试环境 线上环境 vue 中有个概念就是模式,默认先vue cli 有三个模式 development 模式用于 vue-cli-service serve production 模式用于 vue-cli-service build 和 vue-cli-service test:e2e test 模式用于 …...
2024/4/24 3:29:15 - JVM 完整教程(2/3):垃圾回收
想拿高工资,想成为一名合格又优秀的java高级攻城狮,对于JVM的学习是必不可少的。 我本人找过很多课程,学过很多遍,却总是感觉学不太明白,感觉少点什么,我相信很多小伙伴会和我有一样的经历。 还好现在找到一…...
2024/4/20 11:40:18 - vue中两种路由传参的方式
在项目的开发过程中,不同的项目传参方式有的不一样,感觉总是记不住,特地研究了下query传参和params传参的区别 query传参 app.uve中 <router-link :to"{ name: User, query: { id: 123 } }">User</router-link>rout…...
2024/4/20 13:29:24 - Django学习——定义和使用视图
实例:在web页面中显示当期日期和从URL路径中获取的数据 #chapter5\chapter5\views.pyfrom django.http import HttpResponse from datetime import datedef showData(request, urlData):d date.today()print(d)s"URL路径中的数据:%s<br>当前…...
2024/4/20 13:29:23 - PD--SqlServer生成Hive建表语句
1.编辑PowerDesigner16启动脚本 1.1本机安装JDK 1.2下载SqlServer驱动到本地 https://mvnrepository.com/ 1.3编辑启动脚本并放置在PD16启动目录 startup.bat文件内容如下: Set JAVA_HOMED:\Program Files (x86)\JDK\bin Set CLASSPATH D:\docouments\drivers\s…...
2024/4/20 13:29:21 - 【AVR ASF4库函数学习笔记】一、使用Microchip Studio(原Atmel Studio 7)图形化配置工程(Atmega 128)
目录新建工程配置点灯平台:Microchip Studio (原Atmel Studio 7) 欣世纪 DMAVR-L Atmega 128A - AU 新建工程 选择所用的芯片后点击CREATE NEW PROJECT创建工程 配置 设置CPU 根据所用晶振设置频率 点灯示例: D7由PE7控制,低电平点亮。…...
2024/4/20 13:29:20 - 用ffmpeg批量转换WAV文件采样率
问题由来:有一批客服提供的配音文件,好几千个,需要用作我写的程序合成,发现其尺寸差异较大,遂检查了一遍,发现果然里面10%的文件格式有问题,和其他不一致: Option ExplicitPublic T…...
2024/4/20 13:29:19
最新文章
- OceanBase 分布式数据库【信创/国产化】- OceanBase 平台产品 - 迁移评估工具 OMA
本心、输入输出、结果 文章目录 OceanBase 分布式数据库【信创/国产化】- OceanBase 平台产品 - 迁移评估工具 OMA前言OceanBase 数据更新架构OceanBase 平台产品 - 迁移评估工具 OMA兼容性评估性能评估导出 OceanBase 数据库对象和 SQL 语句OceanBase 分布式数据库【信创/国产…...
2024/5/5 6:33:29 - 梯度消失和梯度爆炸的一些处理方法
在这里是记录一下梯度消失或梯度爆炸的一些处理技巧。全当学习总结了如有错误还请留言,在此感激不尽。 权重和梯度的更新公式如下: w w − η ⋅ ∇ w w w - \eta \cdot \nabla w ww−η⋅∇w 个人通俗的理解梯度消失就是网络模型在反向求导的时候出…...
2024/3/20 10:50:27 - ChatGPT 赚钱初学者指南(上)
原文:The Beginner’s Guide to Earning Money Online with ChatGPT 译者:飞龙 协议:CC BY-NC-SA 4.0 第一章:理解基础知识 什么是 ChatGPT? 在人工智能与人类对话相遇的数字织锦中,ChatGPT 作为一个突出…...
2024/5/3 4:17:57 - MySQL 底层数据结构 聚簇索引以及二级索引 Explain的使用
数据结构 我们知道MySQL的存储引擎Innodb默认底层是使用B树的变种来存储数据的 下面我们来复习一下B树存储 B树存储 哈希存储的区别 哈希存储,只能使用等值查询 B树与B树存储 我们知道B树实际上就是B树的变种 那么为啥使用B树而不是使用B树呢? 我们知道效率的高低主要取决于…...
2024/5/4 8:59:40 - 【外汇早评】美通胀数据走低,美元调整
原标题:【外汇早评】美通胀数据走低,美元调整昨日美国方面公布了新一期的核心PCE物价指数数据,同比增长1.6%,低于前值和预期值的1.7%,距离美联储的通胀目标2%继续走低,通胀压力较低,且此前美国一季度GDP初值中的消费部分下滑明显,因此市场对美联储后续更可能降息的政策…...
2024/5/4 23:54:56 - 【原油贵金属周评】原油多头拥挤,价格调整
原标题:【原油贵金属周评】原油多头拥挤,价格调整本周国际劳动节,我们喜迎四天假期,但是整个金融市场确实流动性充沛,大事频发,各个商品波动剧烈。美国方面,在本周四凌晨公布5月份的利率决议和新闻发布会,维持联邦基金利率在2.25%-2.50%不变,符合市场预期。同时美联储…...
2024/5/4 23:54:56 - 【外汇周评】靓丽非农不及疲软通胀影响
原标题:【外汇周评】靓丽非农不及疲软通胀影响在刚结束的周五,美国方面公布了新一期的非农就业数据,大幅好于前值和预期,新增就业重新回到20万以上。具体数据: 美国4月非农就业人口变动 26.3万人,预期 19万人,前值 19.6万人。 美国4月失业率 3.6%,预期 3.8%,前值 3…...
2024/5/4 23:54:56 - 【原油贵金属早评】库存继续增加,油价收跌
原标题:【原油贵金属早评】库存继续增加,油价收跌周三清晨公布美国当周API原油库存数据,上周原油库存增加281万桶至4.692亿桶,增幅超过预期的74.4万桶。且有消息人士称,沙特阿美据悉将于6月向亚洲炼油厂额外出售更多原油,印度炼油商预计将每日获得至多20万桶的额外原油供…...
2024/5/4 23:55:17 - 【外汇早评】日本央行会议纪要不改日元强势
原标题:【外汇早评】日本央行会议纪要不改日元强势近两日日元大幅走强与近期市场风险情绪上升,避险资金回流日元有关,也与前一段时间的美日贸易谈判给日本缓冲期,日本方面对汇率问题也避免继续贬值有关。虽然今日早间日本央行公布的利率会议纪要仍然是支持宽松政策,但这符…...
2024/5/4 23:54:56 - 【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响
原标题:【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响近日伊朗局势升温,导致市场担忧影响原油供给,油价试图反弹。此时OPEC表态稳定市场。据消息人士透露,沙特6月石油出口料将低于700万桶/日,沙特已经收到石油消费国提出的6月份扩大出口的“适度要求”,沙特将满…...
2024/5/4 23:55:05 - 【外汇早评】美欲与伊朗重谈协议
原标题:【外汇早评】美欲与伊朗重谈协议美国对伊朗的制裁遭到伊朗的抗议,昨日伊朗方面提出将部分退出伊核协议。而此行为又遭到欧洲方面对伊朗的谴责和警告,伊朗外长昨日回应称,欧洲国家履行它们的义务,伊核协议就能保证存续。据传闻伊朗的导弹已经对准了以色列和美国的航…...
2024/5/4 23:54:56 - 【原油贵金属早评】波动率飙升,市场情绪动荡
原标题:【原油贵金属早评】波动率飙升,市场情绪动荡因中美贸易谈判不安情绪影响,金融市场各资产品种出现明显的波动。随着美国与中方开启第十一轮谈判之际,美国按照既定计划向中国2000亿商品征收25%的关税,市场情绪有所平复,已经开始接受这一事实。虽然波动率-恐慌指数VI…...
2024/5/4 23:55:16 - 【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试
原标题:【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试美国和伊朗的局势继续升温,市场风险情绪上升,避险黄金有向上突破阻力的迹象。原油方面稍显平稳,近期美国和OPEC加大供给及市场需求回落的影响,伊朗局势并未推升油价走强。近期中美贸易谈判摩擦再度升级,美国对中…...
2024/5/4 23:54:56 - 【原油贵金属早评】市场情绪继续恶化,黄金上破
原标题:【原油贵金属早评】市场情绪继续恶化,黄金上破周初中国针对于美国加征关税的进行的反制措施引发市场情绪的大幅波动,人民币汇率出现大幅的贬值动能,金融市场受到非常明显的冲击。尤其是波动率起来之后,对于股市的表现尤其不安。隔夜美国股市出现明显的下行走势,这…...
2024/5/4 18:20:48 - 【外汇早评】美伊僵持,风险情绪继续升温
原标题:【外汇早评】美伊僵持,风险情绪继续升温昨日沙特两艘油轮再次发生爆炸事件,导致波斯湾局势进一步恶化,市场担忧美伊可能会出现摩擦生火,避险品种获得支撑,黄金和日元大幅走强。美指受中美贸易问题影响而在低位震荡。继5月12日,四艘商船在阿联酋领海附近的阿曼湾、…...
2024/5/4 23:54:56 - 【原油贵金属早评】贸易冲突导致需求低迷,油价弱势
原标题:【原油贵金属早评】贸易冲突导致需求低迷,油价弱势近日虽然伊朗局势升温,中东地区几起油船被袭击事件影响,但油价并未走高,而是出于调整结构中。由于市场预期局势失控的可能性较低,而中美贸易问题导致的全球经济衰退风险更大,需求会持续低迷,因此油价调整压力较…...
2024/5/4 23:55:17 - 氧生福地 玩美北湖(上)——为时光守候两千年
原标题:氧生福地 玩美北湖(上)——为时光守候两千年一次说走就走的旅行,只有一张高铁票的距离~ 所以,湖南郴州,我来了~ 从广州南站出发,一个半小时就到达郴州西站了。在动车上,同时改票的南风兄和我居然被分到了一个车厢,所以一路非常愉快地聊了过来。 挺好,最起…...
2024/5/4 23:55:06 - 氧生福地 玩美北湖(中)——永春梯田里的美与鲜
原标题:氧生福地 玩美北湖(中)——永春梯田里的美与鲜一觉醒来,因为大家太爱“美”照,在柳毅山庄去寻找龙女而错过了早餐时间。近十点,向导坏坏还是带着饥肠辘辘的我们去吃郴州最富有盛名的“鱼头粉”。说这是“十二分推荐”,到郴州必吃的美食之一。 哇塞!那个味美香甜…...
2024/5/4 23:54:56 - 氧生福地 玩美北湖(下)——奔跑吧骚年!
原标题:氧生福地 玩美北湖(下)——奔跑吧骚年!让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 啊……啊……啊 两…...
2024/5/4 23:55:06 - 扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!
原标题:扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!扒开伪装医用面膜,翻六倍价格宰客!当行业里的某一品项火爆了,就会有很多商家蹭热度,装逼忽悠,最近火爆朋友圈的医用面膜,被沾上了污点,到底怎么回事呢? “比普通面膜安全、效果好!痘痘、痘印、敏感肌都能用…...
2024/5/4 2:59:34 - 「发现」铁皮石斛仙草之神奇功效用于医用面膜
原标题:「发现」铁皮石斛仙草之神奇功效用于医用面膜丽彦妆铁皮石斛医用面膜|石斛多糖无菌修护补水贴19大优势: 1、铁皮石斛:自唐宋以来,一直被列为皇室贡品,铁皮石斛生于海拔1600米的悬崖峭壁之上,繁殖力差,产量极低,所以古代仅供皇室、贵族享用 2、铁皮石斛自古民间…...
2024/5/4 23:55:16 - 丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者
原标题:丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者【公司简介】 广州华彬企业隶属香港华彬集团有限公司,专注美业21年,其旗下品牌: 「圣茵美」私密荷尔蒙抗衰,产后修复 「圣仪轩」私密荷尔蒙抗衰,产后修复 「花茵莳」私密荷尔蒙抗衰,产后修复 「丽彦妆」专注医学护…...
2024/5/4 23:54:58 - 广州械字号面膜生产厂家OEM/ODM4项须知!
原标题:广州械字号面膜生产厂家OEM/ODM4项须知!广州械字号面膜生产厂家OEM/ODM流程及注意事项解读: 械字号医用面膜,其实在我国并没有严格的定义,通常我们说的医美面膜指的应该是一种「医用敷料」,也就是说,医用面膜其实算作「医疗器械」的一种,又称「医用冷敷贴」。 …...
2024/5/4 23:55:01 - 械字号医用眼膜缓解用眼过度到底有无作用?
原标题:械字号医用眼膜缓解用眼过度到底有无作用?医用眼膜/械字号眼膜/医用冷敷眼贴 凝胶层为亲水高分子材料,含70%以上的水分。体表皮肤温度传导到本产品的凝胶层,热量被凝胶内水分子吸收,通过水分的蒸发带走大量的热量,可迅速地降低体表皮肤局部温度,减轻局部皮肤的灼…...
2024/5/4 23:54:56 - 配置失败还原请勿关闭计算机,电脑开机屏幕上面显示,配置失败还原更改 请勿关闭计算机 开不了机 这个问题怎么办...
解析如下:1、长按电脑电源键直至关机,然后再按一次电源健重启电脑,按F8健进入安全模式2、安全模式下进入Windows系统桌面后,按住“winR”打开运行窗口,输入“services.msc”打开服务设置3、在服务界面,选中…...
2022/11/19 21:17:18 - 错误使用 reshape要执行 RESHAPE,请勿更改元素数目。
%读入6幅图像(每一幅图像的大小是564*564) f1 imread(WashingtonDC_Band1_564.tif); subplot(3,2,1),imshow(f1); f2 imread(WashingtonDC_Band2_564.tif); subplot(3,2,2),imshow(f2); f3 imread(WashingtonDC_Band3_564.tif); subplot(3,2,3),imsho…...
2022/11/19 21:17:16 - 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机...
win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”问题的解决方法在win7系统关机时如果有升级系统的或者其他需要会直接进入一个 等待界面,在等待界面中我们需要等待操作结束才能关机,虽然这比较麻烦,但是对系统进行配置和升级…...
2022/11/19 21:17:15 - 台式电脑显示配置100%请勿关闭计算机,“准备配置windows 请勿关闭计算机”的解决方法...
有不少用户在重装Win7系统或更新系统后会遇到“准备配置windows,请勿关闭计算机”的提示,要过很久才能进入系统,有的用户甚至几个小时也无法进入,下面就教大家这个问题的解决方法。第一种方法:我们首先在左下角的“开始…...
2022/11/19 21:17:14 - win7 正在配置 请勿关闭计算机,怎么办Win7开机显示正在配置Windows Update请勿关机...
置信有很多用户都跟小编一样遇到过这样的问题,电脑时发现开机屏幕显现“正在配置Windows Update,请勿关机”(如下图所示),而且还需求等大约5分钟才干进入系统。这是怎样回事呢?一切都是正常操作的,为什么开时机呈现“正…...
2022/11/19 21:17:13 - 准备配置windows 请勿关闭计算机 蓝屏,Win7开机总是出现提示“配置Windows请勿关机”...
Win7系统开机启动时总是出现“配置Windows请勿关机”的提示,没过几秒后电脑自动重启,每次开机都这样无法进入系统,此时碰到这种现象的用户就可以使用以下5种方法解决问题。方法一:开机按下F8,在出现的Windows高级启动选…...
2022/11/19 21:17:12 - 准备windows请勿关闭计算机要多久,windows10系统提示正在准备windows请勿关闭计算机怎么办...
有不少windows10系统用户反映说碰到这样一个情况,就是电脑提示正在准备windows请勿关闭计算机,碰到这样的问题该怎么解决呢,现在小编就给大家分享一下windows10系统提示正在准备windows请勿关闭计算机的具体第一种方法:1、2、依次…...
2022/11/19 21:17:11 - 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”的解决方法...
今天和大家分享一下win7系统重装了Win7旗舰版系统后,每次关机的时候桌面上都会显示一个“配置Windows Update的界面,提示请勿关闭计算机”,每次停留好几分钟才能正常关机,导致什么情况引起的呢?出现配置Windows Update…...
2022/11/19 21:17:10 - 电脑桌面一直是清理请关闭计算机,windows7一直卡在清理 请勿关闭计算机-win7清理请勿关机,win7配置更新35%不动...
只能是等着,别无他法。说是卡着如果你看硬盘灯应该在读写。如果从 Win 10 无法正常回滚,只能是考虑备份数据后重装系统了。解决来方案一:管理员运行cmd:net stop WuAuServcd %windir%ren SoftwareDistribution SDoldnet start WuA…...
2022/11/19 21:17:09 - 计算机配置更新不起,电脑提示“配置Windows Update请勿关闭计算机”怎么办?
原标题:电脑提示“配置Windows Update请勿关闭计算机”怎么办?win7系统中在开机与关闭的时候总是显示“配置windows update请勿关闭计算机”相信有不少朋友都曾遇到过一次两次还能忍但经常遇到就叫人感到心烦了遇到这种问题怎么办呢?一般的方…...
2022/11/19 21:17:08 - 计算机正在配置无法关机,关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机...
关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!关机提示 windows7 正在配…...
2022/11/19 21:17:05 - 钉钉提示请勿通过开发者调试模式_钉钉请勿通过开发者调试模式是真的吗好不好用...
钉钉请勿通过开发者调试模式是真的吗好不好用 更新时间:2020-04-20 22:24:19 浏览次数:729次 区域: 南阳 > 卧龙 列举网提醒您:为保障您的权益,请不要提前支付任何费用! 虚拟位置外设器!!轨迹模拟&虚拟位置外设神器 专业用于:钉钉,外勤365,红圈通,企业微信和…...
2022/11/19 21:17:05 - 配置失败还原请勿关闭计算机怎么办,win7系统出现“配置windows update失败 还原更改 请勿关闭计算机”,长时间没反应,无法进入系统的解决方案...
前几天班里有位学生电脑(windows 7系统)出问题了,具体表现是开机时一直停留在“配置windows update失败 还原更改 请勿关闭计算机”这个界面,长时间没反应,无法进入系统。这个问题原来帮其他同学也解决过,网上搜了不少资料&#x…...
2022/11/19 21:17:04 - 一个电脑无法关闭计算机你应该怎么办,电脑显示“清理请勿关闭计算机”怎么办?...
本文为你提供了3个有效解决电脑显示“清理请勿关闭计算机”问题的方法,并在最后教给你1种保护系统安全的好方法,一起来看看!电脑出现“清理请勿关闭计算机”在Windows 7(SP1)和Windows Server 2008 R2 SP1中,添加了1个新功能在“磁…...
2022/11/19 21:17:03 - 请勿关闭计算机还原更改要多久,电脑显示:配置windows更新失败,正在还原更改,请勿关闭计算机怎么办...
许多用户在长期不使用电脑的时候,开启电脑发现电脑显示:配置windows更新失败,正在还原更改,请勿关闭计算机。。.这要怎么办呢?下面小编就带着大家一起看看吧!如果能够正常进入系统,建议您暂时移…...
2022/11/19 21:17:02 - 还原更改请勿关闭计算机 要多久,配置windows update失败 还原更改 请勿关闭计算机,电脑开机后一直显示以...
配置windows update失败 还原更改 请勿关闭计算机,电脑开机后一直显示以以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!配置windows update失败 还原更改 请勿关闭计算机&#x…...
2022/11/19 21:17:01 - 电脑配置中请勿关闭计算机怎么办,准备配置windows请勿关闭计算机一直显示怎么办【图解】...
不知道大家有没有遇到过这样的一个问题,就是我们的win7系统在关机的时候,总是喜欢显示“准备配置windows,请勿关机”这样的一个页面,没有什么大碍,但是如果一直等着的话就要两个小时甚至更久都关不了机,非常…...
2022/11/19 21:17:00 - 正在准备配置请勿关闭计算机,正在准备配置windows请勿关闭计算机时间长了解决教程...
当电脑出现正在准备配置windows请勿关闭计算机时,一般是您正对windows进行升级,但是这个要是长时间没有反应,我们不能再傻等下去了。可能是电脑出了别的问题了,来看看教程的说法。正在准备配置windows请勿关闭计算机时间长了方法一…...
2022/11/19 21:16:59 - 配置失败还原请勿关闭计算机,配置Windows Update失败,还原更改请勿关闭计算机...
我们使用电脑的过程中有时会遇到这种情况,当我们打开电脑之后,发现一直停留在一个界面:“配置Windows Update失败,还原更改请勿关闭计算机”,等了许久还是无法进入系统。如果我们遇到此类问题应该如何解决呢࿰…...
2022/11/19 21:16:58 - 如何在iPhone上关闭“请勿打扰”
Apple’s “Do Not Disturb While Driving” is a potentially lifesaving iPhone feature, but it doesn’t always turn on automatically at the appropriate time. For example, you might be a passenger in a moving car, but your iPhone may think you’re the one dri…...
2022/11/19 21:16:57