C语言经典案例-菜鸟经典案例

1.输入某年某月某日,判断这一天是这一年的第几天?

//输入某年某月某日,判断这一天是这一年的第几天?
#include <stdio.h>int isLeapYear(int year) {// 闰年的判断规则:能被4整除且(不能被100整除或能被400整除)if ((year % 4 == 0 && year % 100 != 0) || (year % 400 == 0)) {return 1;}return 0;
}int main() {int year, month, day;int daysInMonth[] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};int totalDays = 0;printf("请输入年份、月份和日期(格式:年 月 日):");scanf("%d %d %d", &year, &month, &day);// 判断是否是闰年if (isLeapYear(year)) {daysInMonth[1] = 29; // 闰年2月有29天}// 计算从1月1日到输入日期的天数for (int i = 0; i < month - 1; i++) {totalDays += daysInMonth[i];}totalDays += day; // 加上当前月份的天数printf("%d年%d月%d日是该年的第%d天\n", year, month, day, totalDays);return 0;
}

2.一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少?

#include <stdio.h>
#include <math.h>
int main()
{int i,x,y;for(i=0;i<=10000;i++){x=(int)sqrt(i+100);//注意强制类型转换y=(int)sqrt(i+168);if((x*x==i+100)&&(y*y==i+168))//注意要加100,168{printf("%d是平方数",i);break;}}
} 

3.输入三个整数 x、y、z,请把这三个数由小到大输出。

#include <stdio.h>int main()
{int x,y,z,t;printf("\n请输入三个数字:\n");scanf("%d%d%d",&x,&y,&z);if ( x>y ) { /*交换x,y的值*/t=x; x=y; y=t;}if ( x>z ) { /*交换x,z的值*/t=z; z=x; x=t;}if ( y>z ) { /*交换z,y的值*/t=y; y=z; z=t;}printf("从小到大排序: %d %d %d\n",x,y,z);
}

4.输出 9*9 口诀

#include <stdio.h>int main() {int i, j, result;printf("\n");for (i = 1; i < 10; i++) {for (j = 1; j <= i; j++) {result = i * j;printf("%d*%d=%-3d", i, j, result); /* -3d表示左对齐,占3位 */}printf("\n"); /* 每一行后换行 */}return 0;
}

5.古典问题(兔子生崽):有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?(输出前40个月即可)

#include <stdio.h>int main() {// 定义变量存储每个月的兔子对数unsigned long long int first = 1, second = 1, next;// 输出第一个月和第二个月的兔子对数printf("第1个月: %llu 对兔子\n", first);printf("第2个月: %llu 对兔子\n", second);// 计算并输出第3个月到第40个月的兔子对数for (int month = 3; month <= 40; month++) {next = first + second; // 当前月的兔子对数为前两个月之和printf("第%d个月: %llu 对兔子\n", month, next);// 更新下一个月的计算值first = second;second = next;}return 0;
}

6.判断 101 到 200 之间的素数

#include <stdio.h>int main()
{int i,j;int count=0;for (i=101; i<=200; i++) {for (j=2; j<i; j++) {// 如果 j 能被 i 整除再跳出循环if (i%j==0) break;}// 判断循环是否提前跳出,如果 j<i 说明在 2~j 之间,i 有可整除的数if (j>=i) {count++;printf("%d ",i);// 换行,用 count 计数,每五个数换行if (count % 5 == 0) printf("\n");}}    return 0;
}

7.打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数 本身。例如:153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方。

#include <stdio.h>int main() {int i, x, y, z;// 遍历 100 到 999 的数字for (i = 100; i < 1000; i++) {// 计算各位数字x = i % 10;             // 个位y = (i / 10) % 10;      // 十位z = (i / 100) % 10;     // 百位// 计算立方和int sum = x * x * x + y * y * y + z * z * z;// 判断是否为水仙花数if (i == sum) {printf("%d\n", i);}}return 0;
}

8.将一个正整数分解质因数。

#include<stdio.h>
int main()
{int n,i;printf("请输入整数:");scanf("%d",&n);printf("%d=",n);for(i=2;i<=n;i++){while(n%i==0){printf("%d",i);n/=i;if(n!=1) printf("*");}}printf("\n");return 0;
}

9.利用条件运算符的嵌套来完成此题:学习成绩>=90分的同学用A表示,60-89分之间的用B表示,60分以下的用C表示。

#include<stdio.h>
int main()
{int score;char grade;printf("请输入分数: ");scanf("%d",&score);grade=(score>=90)?'A':((score>=60)?'B':'C');printf("%c\n",grade);return 0;
}

10.最大公约数和最小公倍数
(1)最小公倍数=输入的两个数之积除于它们的最大公约数,关键是求出最大公约数;

(2)求最大公约数用辗转相除法(又名欧几里德算法)

#include<stdio.h>
int main()
{int a,b,t,r,n;printf("请输入两个数字:\n");scanf("%d %d",&a,&b);if(a<b){t=b;b=a;a=t;}r=a%b;n=a*b;while(r!=0){a=b;b=r;r=a%b;}printf("这两个数的最大公约数是%d,最小公倍数是%d\n",b,n/b);return 0;
}

11.输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。

#include <stdio.h>int main() {char c;int letterCount = 0, spaceCount = 0, digitCount = 0, otherCount = 0;printf("请输入一些字符:\n");while ((c = getchar()) != '\n') {if ((c >= 'a' && c <= 'z') || (c >= 'A' && c <= 'Z')) {letterCount++;} else if (c >= '0' && c <= '9') {digitCount++;} else if (c == ' ') {spaceCount++;} else {otherCount++;}}printf("字母 = %d, 数字 = %d, 空格 = %d, 其他 = %d\n", letterCount, digitCount, spaceCount, otherCount);return 0;
}

12.求 s=a+aa+aaa+aaaa+aa…a 的值,其中 a 是一个数字,例如 2+22+222+2222+22222 (此时共有5个数相加),几个数相加有键盘控制。

#include <stdio.h>
#include <string.h>int main() {int a, n;long long sum = 0; // 使用 long long 类型来存储较大的和// 获取用户输入printf("请输入数字 a: ");scanf("%d", &a);printf("请输入相加项的数量 n: ");scanf("%d", &n);// 初始化变量long long currentNumber = 0;// 循环生成并累加每个项for (int i = 1; i <= n; i++) {currentNumber = currentNumber * 10 + a; // 构造当前项sum += currentNumber; // 累加到总和中}// 输出结果printf("结果是: %lld\n", sum);return 0;
}

13.一个数如果恰好等于它的因子之和,这个数就称为"完数",例如 6=1+2+3 ,请编程找出 1000 以内的所有完数。

#include <stdio.h>int main() {printf("1000以内的所有完数是:\n");// 遍历从1到1000的每一个整数for (int num = 1; num <= 1000; num++) {int sum = 0;// 计算num的所有因子(不包括自身)for (int i = 1; i <= num / 2; i++) {if (num % i == 0) {sum += i;}}// 判断因子之和是否等于原数if (sum == num) {// 打印完数及其因子printf("%d: ", num);for (int i = 1; i <= num / 2; i++) {if (num % i == 0) {printf("%d ", i);}}printf("\n");}}return 0;
}

14.一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第10次落地时,共经过多少米?第10次反弹多高?

#include <stdio.h>#define INITIAL_HEIGHT 100.0
#define BOUNCE_COUNT 10int main()
{double h = INITIAL_HEIGHT;double s = INITIAL_HEIGHT;// 第一次反弹高度h /= 2;// 计算后续反弹高度和总路程for (int i = 2; i <= BOUNCE_COUNT; i++) {s += 2 * h;h /= 2;}// 输出结果,指定小数位数为2位printf("第%d次落地时,共经过%.5f米,第%d次反弹高%.5f米\n", BOUNCE_COUNT, s, BOUNCE_COUNT, h);return 0;
}

15.猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个
第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下
的一半零一个。到第10天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少。

//第10天早上:剩1个桃子。
//第9天早上:设第9天早上剩下的桃子数为 x,则第10天早上剩下的桃子数为 (x / 2) - 1 = 1。x=(1+1)×2=4
#include <stdio.h>int main() {int day = 10; // 第10天早上剩1个桃子int peaches = 1; // 第10天早上剩下的桃子数// 从第10天倒推到第1天for (int i = day; i > 1; i--) {peaches = (peaches + 1) * 2;}printf("第一天共摘了 %d 个桃子。\n", peaches);return 0;
}

16.两个乒乓球队进行比赛,各出三人,甲队为 a、b、c 三人,乙队为 x、y、z 三人。
抽签决定比赛名单,有人向队员打听比赛的名单:a 说他不和 x 比,c 说他不和 x、z 比,请编写代码找出三队赛手的名单。

#include <stdio.h>int main() {char teamA[3] = {'a', 'b', 'c'};char teamB[3] = {'x', 'y', 'z'};// 穷举所有可能的比赛组合for (int a_match = 0; a_match < 3; a_match++) {for (int b_match = 0; b_match < 3; b_match++) {for (int c_match = 0; c_match < 3; c_match++) {// 检查是否有重复的比赛对手if (a_match != b_match && b_match != c_match && a_match != c_match) {// 检查条件是否满足if (a_match != 0 && c_match != 0 && c_match != 2) { // a不和x比,c不和x、z比printf("比赛名单:\n");printf("a 对阵 %c\n", teamB[a_match]);printf("b 对阵 %c\n", teamB[b_match]);printf("c 对阵 %c\n", teamB[c_match]);printf("\n");}}}}}return 0;
}
//   *
//  ***
// *****
//*******
// *****
//  ***//  *
#include <stdio.h>
int main()
{int i,j,k;for(i=0;i<=3;i++) {for(j=0;j<=2-i;j++) {printf(" ");}for(k=0;k<=2*i;k++) {printf("*");}printf("\n");}for(i=0;i<=2;i++) {for(j=0;j<=i;j++) {printf(" ");}for(k=0;k<=4-2*i;k++) {printf("*");}printf("\n");}}

18.有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13…求出这个数列的前20项之和。

#include <stdio.h>int main()
{int i,t;float sum=0;float a=2,b=1;for(i=1;i<=20;i++){sum=sum+a/b;t=a;a=a+b;b=t;}printf("%9.6f\n",sum);  
}

19.求 1 + 2! + 3! + … + 20! 的和。

#include <stdio.h>// 计算阶乘的函数
unsigned long long factorial(int n) {unsigned long long result = 1;for(int i = 1; i <= n; i++) {result *= i;}return result;
}int main() {unsigned long long sum = 0;// 计算1 + 2! + 3! + ... + 20!for(int i = 1; i <= 20; i++) {sum += factorial(i);}// 输出结果printf("1 + 2! + 3! + ... + 20!的和是: %llu\n", sum);return 0;
}

20.利用递归函数调用方式,将所输入的5个字符,以相反顺序打印出来。

#include <stdio.h>// 递归函数声明
void print_reverse(char *chars, int index);int main() {char chars[6]; // 存储5个字符及结尾的空字符// 输入5个字符printf("请输入5个字符: ");for (int i = 0; i < 5; i++) {scanf(" %c", &chars[i]);}chars[5] = '\0'; // 确保字符串以空字符结尾// 调用递归函数print_reverse(chars, 0);return 0;
}// 递归函数定义
void print_reverse(char *chars, int index) {// 递归终止条件:到达字符串末尾if (chars[index] == '\0') {return;}// 递归调用处理下一个字符print_reverse(chars, index + 1);// 在递归返回时打印当前字符if (index < 5) { // 确保只打印实际输入的字符printf("%c", chars[index]);}
}

21.有5个人坐在一起,问第五个人多少岁?他说比第4个人大2岁。问第4个人岁数,他说比第3个人大2岁。问第三个人,又说比第2人大两岁。问第2个人,说比第一个人大两岁。最后问第一个人,他说是10岁。请问第五个人多大?

#include <stdio.h>int age(n)
int n;
{int c;if(n==1) c=10;else c=age(n-1)+2;return(c);
}
int main()
{printf("%d\n",age(5));
}

22.给一个不多于5位的正整数,要求:一、求它是几位数,二、逆序打印出各位数字。

#include <stdio.h>int main( )
{long a,b,c,d,e,x;printf("请输入 5 位数字:");scanf("%ld",&x);a=x/10000;        /*分解出万位*/b=x%10000/1000;   /*分解出千位*/c=x%1000/100;     /*分解出百位*/d=x%100/10;       /*分解出十位*/e=x%10;           /*分解出个位*/if (a!=0){printf("为 5 位数,逆序为: %ld %ld %ld %ld %ld\n",e,d,c,b,a);} else if(b!=0) {printf("为 4 位数,逆序为: %ld %ld %ld %ld\n",e,d,c,b);} else if(c!=0) {printf("为 3 位数,逆序为:%ld %ld %ld\n",e,d,c);} else if(d!=0) {printf("为 2 位数,逆序为: %ld %ld\n",e,d);} else if(e!=0) {printf("为 1 位数,逆序为:%ld\n",e);}
}

23.一个5位数,判断它是不是回文数。即12321是回文数,个位与万位相同,十位与千位相同。

#include <stdio.h>int main( )
{long ge,shi,qian,wan,x;printf("请输入 5 位数字:");scanf("%ld",&x);wan=x/10000;        /*分解出万位*/qian=x%10000/1000;  /*分解出千位*/shi=x%100/10;       /*分解出十位*/ge=x%10;            /*分解出个位*/if (ge==wan&&shi==qian) { /*个位等于万位并且十位等于千位*/printf("这是回文数\n");} else {printf("这不是回文数\n");}
}

24.请输入星期几的第一个字母来判断一下是星期几,如果第一个字母一样,则继续判断第二个字母。

#include<stdio.h>int main()
{char i,j;printf("请输入第一个字母:\n");scanf("%c",&i);getchar();//scanf("%c",&j);的问题,第二次是读入的一个换行符,而不是输入的字符,因此需要加一个getchar() 吃掉换行符switch(i){case 'm':printf("monday\n");break;case 'w':printf("wednesday\n");break;case 'f':printf("friday\n");break;case 't':printf("请输入下一个字母\n");scanf("%c",&j);if (j=='u') {printf("tuesday\n");break;}if (j=='h') {printf("thursday\n");break;}case 's':printf("请输入下一个字母\n");scanf("%c",&j);if (j=='a') {printf("saturday\n");break;}if (j=='u') {printf("sunday\n"); break;}default :printf("error\n"); break;}return 0;
}

25.删除一个字符串中的指定字母,如:字符串 “aca”,删除其中的 a 字母。

#include <stdio.h>
#include <string.h>// 函数声明
void remove_char(char *str, char ch);int main() {char str[100]; // 假设最大长度为100char ch;// 输入字符串和要删除的字符printf("请输入一个字符串: ");scanf("%s", str);printf("请输入要删除的字符: ");scanf(" %c", &ch); // 注意前面有一个空格以忽略前一个输入的换行符// 调用函数删除指定字符remove_char(str, ch);// 输出结果printf("删除后的字符串: %s\n", str);return 0;
}// 删除字符串中的指定字符
void remove_char(char *str, char ch) {int i, j = 0;int len = strlen(str);// 遍历字符串并构建新字符串for (i = 0; i < len; i++) {if (str[i] != ch) {str[j++] = str[i];}}// 添加字符串结束符str[j] = '\0';
}

26.判断一个数字是否为质数。

#include <stdio.h>
#include <math.h>// 函数声明
int is_prime(int num);int main() {int num;// 输入要检查的数字printf("请输入一个数字: ");scanf("%d", &num);// 判断并输出结果if (is_prime(num)) {printf("%d 是质数。\n", num);} else {printf("%d 不是质数。\n", num);}return 0;
}// 判断一个数字是否为质数的函数
int is_prime(int num) {// 小于2的数字不是质数if (num < 2) {return 0;}// 检查从2到sqrt(num)的所有整数for (int i = 2; i <= sqrt(num); i++) {if (num % i == 0) {return 0; // 找到因子,不是质数}}return 1; // 没有找到因子,是质数
}

27.对10个数进行排序(选择)。

#include <stdio.h>#define N 10void selectionSort(int arr[], int n) {int i, j, minIndex, temp;for (i = 0; i < n - 1; i++) {minIndex = i;for (j = i + 1; j < n; j++) {if (arr[j] < arr[minIndex]) {minIndex = j;}}if (minIndex != i) {// Swap the elementstemp = arr[i];arr[i] = arr[minIndex];arr[minIndex] = temp;}}
}int main() {int arr[N];printf("请输入 %d 个数字:\n", N);for (int i = 0; i < N; i++) {scanf("%d", &arr[i]);}selectionSort(arr, N);printf("排序结果是:\n");for (int i = 0; i < N; i++) {printf("%d ", arr[i]);}printf("\n");return 0;
}

28.对10个数进行排序(冒泡)

#include <stdio.h>// 函数声明
void bubble_sort(int arr[], int n);int main() {int arr[] = {64, 34, 25, 12, 22, 11, 90};int n = sizeof(arr) / sizeof(arr[0]);printf("原始数组: \n");for (int i = 0; i < n; i++) {printf("%d ", arr[i]);}printf("\n");// 调用冒泡排序函数bubble_sort(arr, n);printf("排序后的数组: \n");for (int i = 0; i < n; i++) {printf("%d ", arr[i]);}printf("\n");return 0;
}// 冒泡排序函数定义
void bubble_sort(int arr[], int n) {int i, j;int swapped;for (i = 0; i < n - 1; i++) {swapped = 0;// 每次遍历内层循环都会把当前最大的未排序元素移动到正确位置for (j = 0; j < n - i - 1; j++) {if (arr[j] > arr[j + 1]) {// 交换元素int temp = arr[j];arr[j] = arr[j + 1];arr[j + 1] = temp;swapped = 1;}}// 如果在某一轮遍历中没有发生任何交换,说明数组已经有序if (!swapped) {break;}}
}

29.逆序输出字符串

#include <stdio.h>
#include <string.h>void reverse_print(const char *str) {int length = strlen(str);for (int i = length - 1; i >= 0; i--) {printf("%c", str[i]);}printf("\n");
}int main() {char str[100];// 输入字符串printf("请输入一个字符串: ");scanf("%99s", str); // 注意防止缓冲区溢出// 调用函数逆序输出字符串reverse_print(str);return 0;
}

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

用Deepseek写一个五子棋微信小程序

在当今快节奏的生活中&#xff0c;休闲小游戏成为了许多人放松心情的好选择。五子棋作为一款经典的策略游戏&#xff0c;不仅规则简单&#xff0c;还能锻炼思维。最近&#xff0c;我借助 DeepSeek 的帮助&#xff0c;开发了一款五子棋微信小程序。在这篇文章中&#xff0c;我将…

Qwen2.5-7B-Instruct进行自我认知微调

使用镜像&#xff1a; modelscope/ms-swift/swift_lora_qwen2:v1 数据集和模型下载&#xff1a; 数据集内容&#xff1a; 启动命令&#xff1a; CUDA_VISIBLE_DEVICES0 \ swift sft \ --model Qwen/Qwen2.5-7B-Instruct \ --train_type lora \ --dataset AI-Mod…

百问网提供的烧写工具将各镜像文件烧写到eMMC存储器的各脚本的解析

重要说明:本文的烧写目标存储器是eMMC存储器 百问网提供的烧写工具不仅可以把各镜像文件烧写到eMMC存储器&#xff0c;还可以烧写到NADN&#xff0c;SD卡等存储设备&#xff0c;如下图所示&#xff1a; 但是本文的烧写目标存储器是eMMC存储器&#xff0c;这点是前提&#xff…

android studio开发文档

android基本样式 1.文本 2.设置文本大小 3.字体颜色 背景 资源文件 xml’引用资源文件 4.视图宽高 5.间距 6.对齐方式 常用布局 1.linearLayout线性布局 2.相对布局 RelativeLayout 3.网格布局GridLayout 4.scrollview滚动视图 Button 点击事件与长按事件 长按 按钮禁用与…

Unity Dots

文章目录 什么是DotsDOTS的优势ECS&#xff08;实体组件系统&#xff09;Job System作业系统Burst编译器最后 什么是Dots DOTS&#xff08;Data-Oriented Technology Stack&#xff09;是Unity推出的一种用于开发高性能游戏和应用的数据导向技术栈&#xff0c;包含三大核心组件…

Flink-DataStreamAPI-执行模式

一、概览 DataStream API支持不同的运行时执行模式&#xff0c;我们可以根据用例的要求和作业的特征进行选择。 STREAMING执行模式&#xff1a;被称为“经典”执行模式为&#xff0c;主要用于需要持续增量处理并且预计无限期保持在线的无界作业BATCH执行模式&#xff1a;类似…

DeepSeek DeepEP学习(三)normal dispatch

上节介绍了normal kernel执行过程中会分成两部分&#xff0c;第一步通过notify_dispatch计算meta信息&#xff0c;然后本节介绍数据dispatch的过程。 notify_dispatch过程中会计算其他所有rank发送给当前rank多少token&#xff0c;写入到host的moe_recv_counter_mapped&#x…

mysql创建数据库和表

登录 MySQL 并选择数据库 登录 MySQL 命令行&#xff1a;mysql -u root -p 查看所有数据库&#xff1a;SHOW DATABASES; 创建数据库&#xff1a;CREATE DATABASE my_database; 查看数据库是否创建成功&#xff1a;SHOW DATABASES; 选择数据库&#xff1a;USE 你的数据库名…

Python 实现图片提取文字

文章目录 一、效果图 二、库安装 三、使用示例 四、完整代码 一、效果图 使用的图片&#xff1a; 返回文字&#xff1a; 二、库安装 pip install easyocr opencv-python numpy 三、使用示例 ocr EasyOCRProcessor() results ocr.extract_text("test.png",&…

根目录下的两个包相互没有import成功

问题1&#xff1a; import models 或者import models.Models不成功 问题2&#xff1a;在项目名称后面出现unnamed的提示 查阅资料&#xff0c;说错误可能是&#xff1a;.idea 文件夹配置缺失或损坏 PyCharm 的项目配置信息&#xff08;包括名称&#xff09;存储在 .idea 目录中…

什么样的物联网框架适合开展共享自助KTV唱歌项目?

现在物联网的广泛应用&#xff0c;也让更多用户们看到了它的实力&#xff0c;也使得共享经济遍地开花。其中共享自助唱歌设备也备受欢迎&#xff0c;那么适合开展共享自助KTV唱歌项目的物联网框架都应具备哪些特点呢&#xff1f; 智能化与自动化管理 物联网技术在共享KTV中的应…

《白帽子讲 Web 安全》之深入同源策略(万字详解)

目录 引言 一、同源策略基础认知 &#xff08;一&#xff09;定义 &#xff08;二&#xff09;作用 &#xff08;三&#xff09;作用机制详解 二、同源策略的分类 &#xff08;一&#xff09;域名同源策略 &#xff08;二&#xff09;协议同源策略 &#xff08;三&…

【Linux篇】调试器-gdb/cgdb使用

&#x1f4cc; 个人主页&#xff1a; 孙同学_ &#x1f527; 文章专栏&#xff1a;Liunx &#x1f4a1; 关注我&#xff0c;分享经验&#xff0c;助你少走弯路&#xff01; 文章目录 1. 前言2.关于gdb2.1 快速认识gdb2.2 安装cgdb2.3 gdb命令2.4 调试 & 断点 3.常见技巧3.…

推荐一些免费开源支持Vue3甘特图组件

文章目录 前言一、dhtmlxGantt二、frappe-gantt三、vue-ganttastic四、gantt-elastic五、v-gantt六、vue-gantt-schedule-timeline-calendar七、vue-gantt八、总结 前言 在现代项目管理和任务调度中&#xff0c;甘特图是一种非常实用的工具。它能够直观地展示任务的时间安排、…

十大数据科学Python库

十大数据科学Python库 1、NumPy&#xff1a;脊髓2、Pandas&#xff1a;数据操纵专家3、Matplotlib&#xff1a;艺术之魂4、Scikit-Learn&#xff1a;瑞士军刀5、TensorFlow&#xff1a;聪明的家伙6、PyTorch&#xff1a;叛逆者7、Selenium&#xff1a;操纵大师8、NLTK&#xff…

【C++初阶】类与对象(下)

目录 再探构造函数&#xff1a;初始化列表 使用方法&#xff1a; 特点&#xff1a; &#xff11;、初始化列表是每个成员变量定义初始化的地方 &#xff12;、每一成员变量在初始化列表只出现一次 3、必须在初始化列表中出初始化的成员变量 4、成员变量给缺省值 5、在构…

Android设备是如何进入休眠的呢?

首先我们手机灭屏后&#xff0c;一般需要等一段时间CPU才真正进入休眠。即Android设备屏幕暗下来的时候&#xff0c;并不是立即就进入了休眠模式&#xff1b;当所有唤醒源都处于de-avtive状态后&#xff0c;系统才会进入休眠。在手机功耗中从灭屏开始到CPU进入休眠时间越短&…

多线程知识概述

目录 1. 基本知识概述 2. 多线程概述 2.1 优点 2.2 使用场景 3. 创建线程 3.1 继承 Thread 类 3.2 实现 Runnable 接口 3.3 比较 3.4 创建 Callable 接口 3.5 使用线程池 4. Thread 类常用方法 5. 线程生命周期 6. 线程安全机制 6.1 同步代码块 6.2 同步方法 6.3 …

elasticsearch是哪家的

Elasticsearch&#xff1a;数据搜索与分析的领航者 在当今这个信息爆炸的时代&#xff0c;快速且准确地处理海量数据成为了众多企业和组织追求的目标。而Elasticsearch正是在这个背景下脱颖而出的一款强大的开源搜索引擎。它是由位于美国加利福尼亚州的Elastic公司所开发和维护…

Spring学习笔记:工厂模式与反射机制实现解耦

1.什么是Spring? spring是一个开源轻量级的java开发应用框架&#xff0c;可以简化企业级应用开发 轻量级 1.轻量级(对于运行环境没有额外要求) 2.代码移植性高(不需要实现额外接口) JavaEE的解决方案 Spring更像是一种解决方案&#xff0c;对于控制层&#xff0c;它有Spring…