【刷题记录】第10章 实验1:学生成绩管理系统V3.0

2023-05-16

第10章 实验1:学生成绩管理系统V3.0

某班有最多不超过30人(具体人数由键盘输入)参加某门课程的考试,参考第11周在线测验中“学生成绩管理系统V2.0”,用二维字符数组作函数参数编程实现如下菜单驱动的学生成绩管理系统:
(1)录入每个学生的学号、姓名和考试成绩;
(2)计算课程的总分和平均分;
(3)按成绩由高到低排出名次表;
(4)按成绩由低到高排出名次表;
(5)按学号由小到大排出成绩表;
(6)按姓名的字典顺序排出成绩表;
(7)按学号查询学生排名及其考试成绩;
(8)按姓名查询学生排名及其考试成绩;
(9)按优秀(90100)、良好(8089)、中等(7079)、及格(6069)、不及格(0~59)5个类别,统计每个类别的人数以及所占的百分比;
(10)输出每个学生的学号、姓名、考试成绩。
要求程序运行后先显示如下菜单,并提示用户输入选项:
1.Input record
2.Caculate total and average score of course
3.Sort in descending order by score
4.Sort in ascending order by score
5.Sort in ascending order by number
6.Sort in dictionary order by name
7.Search by number
8.Search by name
9.Statistic analysis
10.List record
0.Exit
Please enter your choice:
然后,根据用户输入的选项执行相应的操作。
请按照下面的定义及函数原型编程
#define MAX_LEN 10 /* 字符串最大长度 /
#define STU_NUM 30 /
最多的学生人数 */
int Menu(void);
void ReadScore(long num[], char name[][MAX_LEN], float score[], int n);
void AverSumofScore(float score[], int n);
void SortbyScore(long num[], char name[][MAX_LEN], float score[], int n,
int (*compare)(float a, float b));
int Ascending(float a, float b);
int Descending(float a, float b);
void SwapFloat(float *x, float *y);
void SwapLong(long *x, long *y);
void SwapChar(char x[], char y[]);
void AsSortbyNum(long num[], char name[][MAX_LEN], float score[], int n);
void SortbyName(long num[], char name[][MAX_LEN], float score[], int n);
void SearchbyNum(long num[], char name[][MAX_LEN], float score[], int n);
void SearchbyName(long num[], char name[][MAX_LEN], float score[], int n);
void StatisticAnalysis(float score[], int n);
void PrintScore(long num[], char name[][MAX_LEN], float score[], int n) ;
程序运行结果示例:
Input student number(n<30):
6↙
Management for Students’ scores
1.Input record
2.Caculate total and average score of course
3.Sort in descending order by score
4.Sort in ascending order by score
5.Sort in ascending order by number
6.Sort in dictionary order by name
7.Search by number
8.Search by name
9.Statistic analysis
10.List record
0.Exit
Please Input your choice:
1↙
Input student’s ID, name and score:
11003001↙
lisi↙
87↙
11003005↙
heli↙
98↙
11003003↙
ludi↙
75↙
11003002↙
dumo↙
48↙
11003004↙
zuma↙
65↙
11003006↙
suyu↙
100↙
Management for Students’ scores
1.Input record
2.Caculate total and average score of course
3.Sort in descending order by score
4.Sort in ascending order by score
5.Sort in ascending order by number
6.Sort in dictionary order by name
7.Search by number
8.Search by name
9.Statistic analysis
10.List record
0.Exit
Please Input your choice:
2↙
sum=473,aver=78.83
Management for Students’ scores
1.Input record
2.Caculate total and average score of course
3.Sort in descending order by score
4.Sort in ascending order by score
5.Sort in ascending order by number
6.Sort in dictionary order by name
7.Search by number
8.Search by name
9.Statistic analysis
10.List record
0.Exit
Please Input your choice:
3↙
Sort in descending order by score:
11003006 suyu 100
11003005 heli 98
11003001 lisi 87
11003003 ludi 75
11003004 zuma 65
11003002 dumo 48
Management for Students’ scores
1.Input record
2.Caculate total and average score of course
3.Sort in descending order by score
4.Sort in ascending order by score
5.Sort in ascending order by number
6.Sort in dictionary order by name
7.Search by number
8.Search by name
9.Statistic analysis
10.List record
0.Exit
Please Input your choice:
4↙
Sort in ascending order by score:
11003002 dumo 48
11003004 zuma 65
11003003 ludi 75
11003001 lisi 87
11003005 heli 98
11003006 suyu 100
Management for Students’ scores
1.Input record
2.Caculate total and average score of course
3.Sort in descending order by score
4.Sort in ascending order by score
5.Sort in ascending order by number
6.Sort in dictionary order by name
7.Search by number
8.Search by name
9.Statistic analysis
10.List record
0.Exit
Please Input your choice:
5↙
Sort in ascending order by number:
11003001 lisi 87
11003002 dumo 48
11003003 ludi 75
11003004 zuma 65
11003005 heli 98
11003006 suyu 100
Management for Students’ scores
1.Input record
2.Caculate total and average score of course
3.Sort in descending order by score
4.Sort in ascending order by score
5.Sort in ascending order by number
6.Sort in dictionary order by name
7.Search by number
8.Search by name
9.Statistic analysis
10.List record
0.Exit
Please Input your choice:
6↙
Sort in dictionary order by name:
11003002 dumo 48
11003005 heli 98
11003001 lisi 87
11003003 ludi 75
11003006 suyu 100
11003004 zuma 65
Management for Students’ scores
1.Input record
2.Caculate total and average score of course
3.Sort in descending order by score
4.Sort in ascending order by score
5.Sort in ascending order by number
6.Sort in dictionary order by name
7.Search by number
8.Search by name
9.Statistic analysis
10.List record
0.Exit
Please Input your choice:
7↙
Input the number you want to search:
11003004↙
11003004 zuma 65
Management for Students’ scores
1.Input record
2.Caculate total and average score of course
3.Sort in descending order by score
4.Sort in ascending order by score
5.Sort in ascending order by number
6.Sort in dictionary order by name
7.Search by number
8.Search by name
9.Statistic analysis
10.List record
0.Exit
Please Input your choice:
8↙
Input the name you want to search:
heli↙
11003005 heli 98
Management for Students’ scores
1.Input record
2.Caculate total and average score of course
3.Sort in descending order by score
4.Sort in ascending order by score
5.Sort in ascending order by number
6.Sort in dictionary order by name
7.Search by number
8.Search by name
9.Statistic analysis
10.List record
0.Exit
Please Input your choice:
9↙
<60 1 16.67%
60-69 1 16.67%
70-79 1 16.67%
80-89 1 16.67%
90-99 1 16.67%
100 1 16.67%
Management for Students’ scores
1.Input record
2.Caculate total and average score of course
3.Sort in descending order by score
4.Sort in ascending order by score
5.Sort in ascending order by number
6.Sort in dictionary order by name
7.Search by number
8.Search by name
9.Statistic analysis
10.List record
0.Exit
Please Input your choice:
10↙
11003002 dumo 48
11003005 heli 98
11003001 lisi 87
11003003 ludi 75
11003006 suyu 100
11003004 zuma 65
Management for Students’ scores
1.Input record
2.Caculate total and average score of course
3.Sort in descending order by score
4.Sort in ascending order by score
5.Sort in ascending order by number
6.Sort in dictionary order by name
7.Search by number
8.Search by name
9.Statistic analysis
10.List record
0.Exit
Please Input your choice:
11↙
Input error!
Management for Students’ scores
1.Input record
2.Caculate total and average score of course
3.Sort in descending order by score
4.Sort in ascending order by score
5.Sort in ascending order by number
6.Sort in dictionary order by name
7.Search by number
8.Search by name
9.Statistic analysis
10.List record
0.Exit
Please Input your choice:
0↙
End of program!

输入格式:
( 1 ) 录入学生的人数:
**要求输入数据格式为:“%d”
**提示信息为:“Input student number(n<30):\n”
( 2 )录入每个学生的学号、姓名和考试成绩:
**要求输入数据格式为:“%ld%s%f”
**提示信息为:“Input student’s ID, name and score:\n”
输出格式:
计算课程的总分和平均分:
**要求输出总分与平均分格式为:“sum=%.0f,aver=%.2f\n”
按成绩由高到低排出名次表:
**要求输出格式为:“%ld\t%s\t%.0f\n”
**提示信息为:“Sort in descending order by score:\n”
按成绩由低到高排出名次表:
**要求输出格式为:“%ld\t%s\t%.0f\n”
**提示信息为:“Sort in ascending order by score:\n”
按学号由小到大排出成绩表:
**要求输出格式为:“%ld\t%s\t%.0f\n”
**提示信息为:“Sort in ascending order by number:\n”
按姓名的字典顺序排出成绩表
**要求输出格式为:“%ld\t%s\t%.0f\n”
**提示信息为:“Sort in dictionary order by name:\n”
按学号查询学生排名及其考试成绩:
**如果未查到此学号的学生,提示信息为:“Not found!\n”;
**如果查询到该学生,要求输出格式为:“%ld\t%s\t%.0f\n”
按姓名查询学生排名及其考试成绩;
**如果未查到此学号的学生,提示信息为:“Not found!\n”;
**如果查询到该学生,要求输出格式为:“%ld\t%s\t%.0f\n”
按优秀(90100)、良好(8089)、中等(7079)、及格(6069)、不及格(0~59)5个类别,统计每个类别的人数以及所占的百分比:
**成绩<60输出提示格式为:“<60\t%d\t%.2f%%\n”;
**成绩=100输出格式为:“%d\t%d\t%.2f%%\n”;
**其他要求输出百分比格式为:“%d-%d\t%d\t%.2f%%\n”
输出每个学生的学号、姓名、考试成绩,以及课程总分和平均分
**输出格式为:“%ld\t%s\t%.0f\n”
选择退出(菜单项0)
**提示信息:“End of program!”
菜单项选择错误(不在0-10之间)
**提示信息:“Input error!\n”

#include  <stdio.h>
#include  <stdlib.h>
#include  <string.h>
#define   MAX_LEN  10           /* 字符串最大长度 */
#define   STU_NUM 30         /* 最多的学生人数 */
int   Menu(void);
void  ReadScore(long num[], char name[][MAX_LEN], float score[], int n);
void  AverSumofScore(float score[], int n);
void  SortbyScore(long num[], char name[][MAX_LEN], float score[], int n,
                  int (*compare)(float a, float b));
int   Ascending(float a, float b);
int   Descending(float a, float b);
void  SwapFloat(float *x, float *y);
void  SwapLong(long *x, long *y);
void  SwapChar(char x[], char y[]);
void  AsSortbyNum(long num[], char name[][MAX_LEN], float score[], int n);
void  SortbyName(long num[], char name[][MAX_LEN], float score[], int n);
void  SearchbyNum(long num[], char name[][MAX_LEN], float score[], int n);
void  SearchbyName(long num[], char name[][MAX_LEN], float score[], int n);
void  StatisticAnalysis(float score[], int n);
void  PrintScore(long num[], char name[][MAX_LEN], float score[], int n) ;
int main()
{                              
    char  ch;
    int   n = 0;
    float score[STU_NUM];
    long num[STU_NUM];
    char name[STU_NUM][MAX_LEN];
    printf("Input student number(n<30):\n");
    scanf("%d", &n);
    while (1)
    {                              
        ch = Menu();            /* 显示菜单,并读取用户输入 */
        switch (ch)
        {                              
        case 1:
            ReadScore(num, name, score, n);
            break;
        case 2:
            AverSumofScore(score, n);
            break;
        case 3:
            SortbyScore(num, name, score, n, Descending);
            printf("Sort in descending order by score:\n");
            PrintScore(num, name, score, n);
            break;
        case 4:
            SortbyScore(num, name, score, n, Ascending);
            printf("Sort in ascending order by score:\n");
            PrintScore(num, name, score, n);
            break;
        case 5:
            AsSortbyNum(num, name, score, n);
            printf("Sort in ascending order by number:\n");
            PrintScore(num, name, score, n);
            break;
        case 6:
            SortbyName(num, name, score, n);
            printf("Sort in dictionary order by name:\n");
            PrintScore(num, name, score, n);
            break;
        case 7:
            SearchbyNum(num, name, score, n);
            break;
        case 8:
            SearchbyName(num, name, score, n);
            break;
        case 9:
            StatisticAnalysis(score, n);
            break;
        case 10:
            PrintScore(num, name, score, n);
            break;
        case 0:
            printf("End of program!");
            exit(0);
        default:
            printf("Input error!\n");
        }
    }
    return 0;
}                              
/*  函数功能:显示菜单并获得用户键盘输入的选项 */
int Menu(void)
{                              
    int itemSelected;
    printf("Management for Students' scores\n");
    printf("1.Input record\n");
    printf("2.Caculate total and average score of course\n");
    printf("3.Sort in descending order by score\n");
    printf("4.Sort in ascending order by score\n");
    printf("5.Sort in ascending order by number\n");
    printf("6.Sort in dictionary order by name\n");
    printf("7.Search by number\n");
    printf("8.Search by name\n");
    printf("9.Statistic analysis\n");
    printf("10.List record\n");
    printf("0.Exit\n");
    printf("Please Input your choice:\n");
    scanf("%d", &itemSelected);     /* 读入用户输入 */
    return itemSelected;
}                              
/* 函数功能:输入n个学生的某门课成绩 */
void ReadScore(long num[], char name[][MAX_LEN], float score[], int n)
{                              
    int i;
    printf("Input student's ID, name and score:\n");
    for (i = 0; i < n; i++)
    {                              
        scanf("%ld%s%f", &num[i], name[i], &score[i]);
    }
}                              
/* 函数功能:计算全班总分和平均分 */
void AverSumofScore(float score[], int n)
{                              
    int    i;
    float  sum = 0;
    for (i = 0; i < n; i++)
    {                              
        sum = sum + score[i];
    }
    printf("sum=%.0f,aver=%.2f\n", sum, n > 0 ? sum / n : 0);
}                              
/* 函数功能:按选择法将数组score的元素值排序 */
void SortbyScore(long num[], char name[][MAX_LEN], float score[], int n,
                 int (*compare)(float a, float b))
{                              
    int i, j, k;
    for (i = 0; i < n - 1; i++)
    {                              
        k = i;
        for (j = i + 1; j < n; j++)
        {                              
            if ((*compare)(score[j], score[k])) k = j;
        }
        if (k != i)
        {                              
            SwapFloat(&score[k], &score[i]); /* 交换成绩 */
            SwapLong(&num[k], &num[i]);       /* 交换学号 */
            SwapChar(name[k], name[i]);       /* 交换姓名 */
        }
    }
}                              
/* 使数据按升序排序 */
int Ascending(float a, float b)
{                              
    return a < b;     /* 这样比较决定了按升序排序,如果a<b,则交换 */
}                              
/* 使数据按降序排序 */
int Descending(float a, float b)
{                              
    return a > b;    /* 这样比较决定了按降序排序,如果a>b,则交换 */
}                              
/* 交换两个单精度浮点型数据 */
void  SwapFloat(float *x, float *y)
{                              
    float  temp;
    temp = *x;
    *x = *y;
    *y = temp;
}                              
/* 交换两个长整型数据 */
void  SwapLong(long *x, long *y)
{                              
    long   temp;
    temp = *x;
    *x = *y;
    *y = temp;
}                              
/* 交换两个字符串 */
void  SwapChar(char x[], char y[])
{                              
    char temp[MAX_LEN];
    strcpy(temp, x);
    strcpy(x, y);
    strcpy(y, temp);
}                              
/* 函数功能:按选择法将数组num的元素值按从低到高排序 */
void AsSortbyNum(long num[], char name[][MAX_LEN], float score[], int n)
{                              
    int     i, j, k;
    for (i = 0; i < n - 1; i++)
    {                              
        k = i;
        for (j = i + 1; j < n; j++)
        {                              
            if (num[j] < num[k])  k = j;
        }
        if (k != i)
        {                              
            SwapFloat(&score[k], &score[i]); /* 交换成绩 */
            SwapLong(&num[k], &num[i]);       /* 交换学号 */
            SwapChar(name[k], name[i]);       /* 交换姓名 */
        }
    }
}                              
/* 函数功能:交换法实现字符串按字典顺序排序 */
void SortbyName(long num[], char name[][MAX_LEN], float score[], int n)
{                              
    int    i, j;
    for (i = 0; i < n - 1; i++)
    {                              
        for (j = i + 1; j < n; j++)
        {                              
            if (strcmp(name[j], name[i]) < 0)
            {                              
                SwapFloat(&score[i], &score[j]); /* 交换成绩 */
                SwapLong(&num[i], &num[j]);       /* 交换学号 */
                SwapChar(name[i], name[j]);       /* 交换姓名 */
            }
        }
    }
}                              
/* 函数功能:按学号查找学生成绩并显示查找结果 */
void SearchbyNum(long num[], char name[][MAX_LEN], float score[], int n)
{                              
    long number;
    int   i;
    printf("Input the number you want to search:\n");
    scanf("%ld", &number);
    for (i = 0; i < n; i++)
    {                              
        if (num[i] == number)
        {                              
            printf("%ld\t%s\t%.0f\n", num[i], name[i], score[i]);
            return;
        }
    }
    printf("Not found!\n");
}                              
/* 函数功能:按姓名的字典顺序排出成绩表 */
void SearchbyName(long num[], char name[][MAX_LEN], float score[], int n)
{                              
    char x[MAX_LEN];
    int  i;
    printf("Input the name you want to search:\n");
    scanf("%s", x);
    for (i = 0; i < n; i++)
    {                              
        if (strcmp(name[i], x) == 0)
        {                              
            printf("%ld\t%s\t%.0f\n", num[i], name[i], score[i]);
            return;
        }
    }
    printf("Not found!\n");
}                              
/* 函数功能:统计各分数段的学生人数及所占的百分比 */
void StatisticAnalysis(float score[], int n)
{                              
    int  i, total, t[6] = {0, 0, 0, 0, 0, 0};
    for (i = 0; i < n; i++)
    {                              
        if (score[i] >= 0 && score[i] < 60)t[0]++;
        else if (score[i] < 70)            t[1]++;
        else if (score[i] < 80)            t[2]++;
        else if (score[i] < 90)            t[3]++;
        else if (score[i] < 100)           t[4]++;
        else if (score[i] == 100)        t[5]++;
    }
    for (total = 0, i = 0; i <= 5; i++)
    {                              
        total = total + t[i];
    }
    for (i = 0; i <= 5; i++)
    {                              
        if (i == 0) printf("<60\t%d\t%.2f%%\n", t[i], (float)t[i] / n * 100);
        else if (i == 5) printf("%d\t%d\t%.2f%%\n",
                                    (i + 5) * 10, t[i], (float)t[i] / n * 100);
        else    printf("%d-%d\t%d\t%.2f%%\n",
                           (i + 5) * 10, (i + 5) * 10 + 9, t[i], (float)t[i] / n * 100);
    }
}                              
/* 函数功能: 打印学生成绩 */
void PrintScore(long num[], char name[][MAX_LEN], float score[], int n)
{                              
    int i;
    for (i = 0; i < n; i++)
    {                              
        printf("%ld\t%s\t%.0f\n", num[i], name[i], score[i]);
    }
}

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【刷题记录】第10章 实验1:学生成绩管理系统V3.0 的相关文章

  • Initialization failed for ‘https://start.spring.io

    作者 一乐乐 欢迎大家来一乐乐的博客园 本文精华 xff08 没空的小伙伴 xff0c 直接看精华部分即可 xff09 1 精华1 xff1a 开发 下载项目的时候考虑系统必备的版本兼容性 2 精华2 xff1a 通过火狐浏览器访问官网的旧
  • 您的连接不是私密连接

    写在前面 xff1a 可能原因 xff1a 网站被封了 网站进行了迁移 网站是外网 xff08 需要 搭工具 xff09 试试打开普通常见的那些网站 xff0c 若是正常 xff0c 说明浏览器没有问题 xff0c 是当前你访问的该网站的问
  • Nginx 反向代理+负载均衡

    一 Nginx 的引入背景 公司产品出现瓶颈 xff1f 我们公司项目刚刚上线的时候 xff0c 并发量小 xff0c 用户使用的少 xff0c 所以在低并发的情况下 xff0c 一个jar包启动应用就够了 xff0c 然后内部tomcat
  • curl: (56) Recv failure: Connection reset by peer

    Docker 重定向问题 curl 56 Recv failure Connection reset by peer 解决思路 以下考虑情况 xff0c 针对的是docker部署springboot项目 我在springboot的配置文件
  • c#快速入门~在java基础上,知道C#和JAVA 的不同即可

    观看下文前提 xff1a 如果你的主语言是java xff0c 现在想再学一门新语言C xff0c 下文是在java基础上 xff0c 对比和java的不同 xff0c 快速上手C xff0c 当然不是说学C 的前提是需要java xff0
  • Visual Studio Code 常见的配置、常用好用插件以及【vsCode 开发相应项目推荐安装的插件】

    一 VsCode 常见的配置 1 取消更新 把插件的更新也一起取消了 2 设置编码为utf 8 xff1a 默认就是了 xff0c 不用设置了 3 设置常用的开发字体 xff1a Consolas 默认就是了 xff0c 不用设置了 字体对
  • vscode开发常用的工具栏选项,查看源码技巧以及【vscode常用的快捷键】

    一 开发常用的工具栏选项 1 当前打开的文件快速在左侧资源树中定位 xff1a 其实打开了当前的文件已经有在左侧资源树木定位了 xff0c 只是颜色比较浅 2 打开太多文件的时候 xff0c 可以关闭 3 设置查看当前类或文件的结构 OUT
  • lua变量、数据类型、if判断条件和数据结构table以及【lua 函数】

    一 lua变量 全局变量和局部变量和表中的域 Lua 变量有三种类型 xff1a 全局变量和局部变量和表中的域 全局变量 xff1a 默认情况下 xff0c Lua中所有的变量都是全局变量 局部变量 xff1a 使用local 显式声明在函
  • C++随机数

    C 43 43 随机数 C 43 43 提供了两个函数 xff0c 用于返回随机数 xff1a rand 和 srand rand 功能 xff1a 随机数发生器 用法 xff1a include lt stdlib h gt int ra
  • 进程如何判断是否在docker环境里运行

    一 判断根目录下 dockerenv 文件 docker环境下 xff1a ls alh dockerenv 非docker环境 xff0c 没有这个 dockerenv文件的 root 64 4cb54de415d4 ls alh doc
  • lua元表、元方法

    lua元表 元方法 lua官方参考手册 xff1a https www runoob com manual lua53doc manual html 2 4 一 总结 xff1a 1 普通的表 xff0c 找不到了 xff0c 或者无法进行
  • 一个less文件中引入另一个less文件

    假设有两个 less的文件1 less 和2 less 在1 less 中引入2 less文件 64 import 34 2 less 34 34 34 是一定不可以忘记的
  • Python——函数

    函数的创建和调用 xff1a 函数的创建和调用 为什么需要函数 xff1a 复用代码 隐藏实现细节 提高可维护性 提高可读性便于调试 函数的创建 def 函数名 输入参数 函数体 return xxx span class token ke
  • ubuntu18.04安装微信

    1 安装deepin wine 使用shell的方法下载各种deb包 1 具体的操作为 xff1a 在home中打开终端 xff08 terminal xff09 xff0c 运行以下语句 xff1a gedit install sh 弹出
  • 实现MySql的主从复制(两台虚拟机)详解

    实现MySql的主从复制 xff08 非单机 xff09 文章目录 实现MySql的主从复制 xff08 非单机 xff09 首先了解心跳线实现数据同步一 mysql主从复制原理是什么 xff1f 二 使用步骤1 安装Mysql2 数据库进
  • ubuntu安装完anaconda,添加快捷启动方式

    1 进入文件夹 xff0c 找到anaconda的bin文件并进入 home 用户 anaconda3 bin 2 进入后右键打开terminal 3 在terminal中输入 anaconda navigator 4 这时候就会发现ana
  • 分别用汇编语言、C语言编程实现LED流水灯

    一 C语言编程 1 先创建一个新的工程 2 文件名 3 右键Source Group创建一个 c文件 4 在 c文件中放入以下代码 APB2使能时钟寄存器 define RCC AP2ENR unsigned volatile int 0x
  • SyntaxError: invalid syntax的问题原因和解决办法

    写在这里的初衷 xff0c 一是备忘 xff0c 二是希望得到高人指点 xff0c 三是希望能遇到志同道合的朋友 目录 一 问题二 原因及解决办法 一 问题 span class token comment An highlighted b
  • Java 字符串匹配的三种方法

    文章目录 一 示例二 解释1 replace 方法2 replaceAll 方法3 replaceFirst 方法4 常用的字符列表 一 示例 如图 xff0c 都是为了替换字符串s中的 34 34 符号 xff0c 但三种匹配方法 xff
  • 【VMware+ubuntu】关闭还原虚拟机后网络断开的解决办法

    使用ifconfig和ip addr 发现对应网卡down掉了 手动执行ifcconfig ens33 up把网卡up起来 xff0c 发现网卡是起来了 xff0c 但是没有IP 重启网络服务sudo service network man

随机推荐