【C语言复习】分支和循环

news2024/11/23 12:10:29

【C语言复习】分支和循环

  • 1. if语句
    • 1.1 if
    • 1.2 else
    • 1.3分支中包含多条语句
    • 1.4嵌套if
    • 1.5悬空else问题
  • 2.关系操作符
  • 3. 条件操作符
  • 4.逻辑操作符:&& 、|| 、!
    • 4.1 逻辑取反运算符
    • 4.2 与运算符
    • 4.3或运算符
    • 4.4 练习:闰年的判断
    • 4.5短路
  • 5.switch 语句
    • 5.1 if语句与switch语句的对比
    • 5.3 switch语句 中的default
    • 5.4 switch语句中的case和default的顺序问题
  • 6.while循环
    • 6.2 while语句的执行流程
    • 6.3 while循环的实践
    • 6.4 练习
  • 7.for循环
    • 7.1 语法形式
  • 7.2 for循环的执行流程
    • 7.3for循环练习
    • 7.4 while循环和for循环的对比
    • 7.5练习
  • 8. do while循环
    • 8.1 语法形式
    • do while循环执行流程图
    • 8.3 do while循环实例
    • 8.4练习
  • 9. break和continue语句
    • 9.1while循环中的break和continue
      • 9.1.1 break举例
      • 9.1.2 continue举例
    • 9.2 for循环中的break和continue
      • 9.2.1 break举例
      • 9.2.2 continue举例
    • 9.3 do while循环的break和continue
  • 10.循环的嵌套
    • 10.1 练习
    • 10.2 解析
    • 10.3代码实现
  • 11. goto语句

在这里插入图片描述

在这里插入图片描述
C语言是结构化的程序设计语言,这里的结构指的是顺序结构、选择结构、循环结构,C语言是能够实现这三种结构的,其实我们如果仔细分析,我们日常所见的事情都可以拆分为这三种结构或者这三种结构的组合。我们可以使用if、switch 实现分支结构,使用for、while、 do while 实现循环结构。

1. if语句

1.1 if

if的语法形式如下:

if(expression)
      语句

表达式成立(为真), 则语句执行,表达式不成立(为假),则语句不执行

在C语言中,0为假,非零为真,也就是表达式的结果如果是0,则语句不执行,表达式的结果如果不是0,则语句执行

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

eg:输入一个整数,判断是否为奇数

在这里插入图片描述
代码执行流程图

在这里插入图片描述

1.2 else

如果一个数不是奇数,那就是偶数了,如果任意一-个整数,我们要清楚的判断是奇数还是偶数怎么表示呢?
这里就需要if… .else…语句了,语法形式如下:

if(expression)
    语句1;
else
    语句2;

eg:输入一个整数,判断是否为奇数,如果是奇数打印是奇数,否则打印数偶数。

在这里插入图片描述
eg:输入-一个年龄,>= 18岁就输出:成年,否则就输出:未成年

在这里插入图片描述
在这里插入图片描述

1.3分支中包含多条语句

在这里插入图片描述
在这里插入图片描述
默认情况下,if和else的后边只能跟一条语句
如果要跟多条语句的话,可以使用大括号
在这里插入图片描述
在这里插入图片描述
我们可以修改后得到想要的效果(在else后面加上大括号,把禁止谈恋爱包括里面)

在这里插入图片描述

1.4嵌套if

在if else 语句中,else 可以与另一个if语句连用,构成多重判断。
比如:要求输入一个整数,判断输入的整数是0,还是正数或者负数。请看如下代码:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
上述的代码也可以进行简化,代码如下图所示:
在这里插入图片描述
练习:
输入一个人的年龄
如果年龄<18岁,打印"少年"
如果年龄在18岁至44岁打印"青年"
如果年龄在45岁至59岁打印"中老年"
如果年龄在60岁 至89岁打印"老年"
如果90岁以上打印"老寿星"

在这里插入图片描述
在这里插入图片描述

1.5悬空else问题

如果有多个if和else,可以记住这样一条规则,else 总是跟最接近的if匹配。
我们首先从下面代码开始:
在这里插入图片描述

运行的结果是什么呢?
在这里插入图片描述
得到的结果是什么也没输出,这是为什么呢?
这就是悬空else的问题,如果有多个if和else,可以记住这样一条规则, else 总是跟最接近
的if匹配。
上面的代码排版,让else和第-一个if语句对齐,让我们以为else是和第一-个if匹配的,当if语句不成立的时候,自然想到的就是执行else子句,打印haha,但实际上else是和第二个if进行匹配的,这样后边的if.。.else语句是嵌套在第一-个if 语句中的,如果第一-个 if语句就不成立,嵌套if和else就没机会执行了,最终啥都不打印。
如果代码改成下面这样就更加容易理解了

在这里插入图片描述

2.关系操作符

C语言用于比较的表达式,称为“关系 表达式”(relational expression),里面使用的运算符就称为“关系运算符” (relational operator) ,主要有下面6个。

●大于运算符 >
●小于运算符 <
●大于等于运算符 >=
●小于等于运算符<=
●相等运算符==
●不相等运算符 !=

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
关系表达式通常返回0或1,表示真假。
C语言中,0表示假,所有非零值表示真。比如,20>12返回1,12>20返回0。
关系表达式常用于if或while结构。

在这里插入图片描述
在这里插入图片描述
注意:相等运算符==与赋值运算符=是两个不-样的运算符,不要混淆。有时候,可能会不小心写出下面的代码,它可以运行,但很容易出现意料之外的结果。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
.上面示例中,原意是x == 5,但是不小心写成x = 5。这个式子表示对变量x赋值5,它的返
回值为5,所以if判断总是为真。
为了防止出现这种错误,有的程序员喜欢将变量写在等号的右边。\

另一个需要避免的错误是:多个关系运算符不宜连用。

在这里插入图片描述
在这里插入图片描述
那么我们如何修改能够达到想要的效果呢?
在这里插入图片描述
eg:我们输入一个年龄,如果年龄在18岁~36岁之间,我们输出青年。
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

3. 条件操作符

条件操作符也叫三目操作符,需要接受三个操作数的,形式如下:

exp1 ? exp2 : exp3;

条件操作符的计算逻辑是:如果exp1为真,exp2计算,计算的结果是整个表达式的结果;如果exp1为假,exp3 计算,计算的结果是整个表达式的结果。

在这里插入图片描述
在这里插入图片描述
上面的代码我们也可以使用条件操作符来编写
在这里插入图片描述
在这里插入图片描述
练习:使用条件操作符来比较两个数的最大值
在这里插入图片描述
在这里插入图片描述

4.逻辑操作符:&& 、|| 、!

逻辑运算符提供逻辑判断功能,用于构建更复杂的表达式,主要有下面三个运算符。.

●!:逻辑取反运算符(改变单个表达式的真假)
●&&:与运算符,就是并且的慧崽议两侧的表达式都为買"则为買,否则为假)。
●||:或运算符,就是或者的意思(两侧至少有一个表达式为真,则为真,否则为假)

注: C语言中,非0表示真,0表示假

4.1 逻辑取反运算符

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

4.2 与运算符

在这里插入图片描述
&&就是与运算符,也是并且的意思,&& 是一个双目操作符,使用的方式是a&&b , &&两边的表达式都是真的时候,整个表达式才为真,只要有一个是假,则整个表达式为假。
比如:如果我们说月份是3月到5月,是春天,那使用代码怎么体现呢?

在这里插入图片描述
在这里插入图片描述

4.3或运算符

在这里插入图片描述
||就是或运算符,也就是或者的意思,||也是一一个双目操作符,使用的方式是a | | b,||
两边的表达式只要有一个是真,整个表达式就是真,两边的表达式都为假的时候,才为假。
比如:我们说一年中月份是12月或者1月或者2月是冬天,那么我们怎么使用代码体现呢?
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

4.4 练习:闰年的判断

输入一个年份year,判断year是否是闰年

闰年判断的规则:
1.能被4整除并且不能被100整除是闰年
2.能被400整除是闰年

在这里插入图片描述
在这里插入图片描述

4.5短路

C语言逻辑运算符还有一个特点,它总是先对左侧的表达式求值,再对右边的表达式求值,这个顺序是保证的。
如果左边的表达式满足逻辑运算符的条件,就不再对右边的表达式求值。这种情况称为“短路”。
如前面的代码:
在这里插入图片描述

表达式中&&的左操作数是month >= 3,右操作数是month <= 5,当左操作数month >= 3的
结果是0的时候,即使不判断month <= 5,整个表达式的结果也是0 (不是春季)

对于||操作符是怎么样呢?我们结合前面的代码:
在这里插入图片描述
如果month== 12,则不用再判断month是否等于1或者2,整个表达式的结果也是1 (是冬季)。
所以,I操作符的左 操作数的结果不为0时,就无需执行右操作数。

像这种仅仅根据左操作数的结果就能知道整个表达式的结果,不再对右操作数进行计算的运算称为短路求值

练习:阅读代码,计算得到的结果

在这里插入图片描述
在这里插入图片描述

将a改成1后,得到的结果又是什么呢?
在这里插入图片描述
在这里插入图片描述

再变换一下,看看得到的结果是什么呢?
在这里插入图片描述
在这里插入图片描述

再变换一下,计算得到的结果是什么呢?
在这里插入图片描述
在这里插入图片描述

5.switch 语句

除了if语句外,C语言还提供了switch语句来实现分支结构。
switch语句是一种特殊形式的if…else 结构,用于判断条件有多个结果的情况。它把多重的else if改成更易用、可读性更好的形式。

switch (expression) 
{
 case value1: statement
 case value2: statement
 default: statement
}

上面代码中,根据表达式expression不同的值,执行相应的case分支。如果找不到对应的值,就执行default分支。

注:

switch后的expression必须是整型表达式

case后的值,必须是整形常量表达式

5.1 if语句与switch语句的对比

练习:输入任意一个整数值,计算除3之后的余数
如果使用if语句完成,如下:
在这里插入图片描述
如果改成switch语句改写,就可以写成如下形式:
在这里插入图片描述
为什么满足switch的语法形式了得到的结果不是想要的呢?是因为每一个case语句中的代码执行完成后,需要加上break,才能跳出这个switch语句。修改后的代码如下:
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

练习:
输入一个1~7的数字,打印对应的星期几

例如:
输入: 1输出:星期一
输入: 2输出:星期二
输入: 3输出:星期三
输入: 4输出:星期四
输入: 5输出:星期五
输入:6输出:星期六
输入: 7输出:星期天

代码如下:

#include <stdio.h>
int main()
{
	int day = 0;
	scanf("%d", &day);
	switch (day)
	{
	case 1:
	{
		printf("星期一\n");
		break;
	}
	case 2:
	{
		printf("星期二\n");
		break;
	}
	case 3:
	{
		printf("星期三\n");
		break;
	}
	case 4:
	{
		printf("星期四\n");
		break;
	}
	case 5:
	{
		printf("星期五\n");
		break;
	}
	case 6:
	{
		printf("星期六\n");
		break;
	}
	case 7:
	{
		printf("星期日\n");
		break;
	}
	}
	return  0;
}

在这里插入图片描述

如果需求发生变化,变为:

1.输入1-5,输出的是“工作日”;
2.输入6-7, 输出“休息日”

在这里插入图片描述
在这里插入图片描述
. 上面的练习中,我们发现应该根据实际的情况,来在代码中觉得是否使用break,或者在哪里使用.break,才能正确完成实际的需求。

5.3 switch语句 中的default

在使用swi tch语句的时候,我们经常可能遇到一种情况,比如swi tch后的表达式中的值无法匹配代码中的case语句的时候,这时候要不就不做处理,要不就得在switch语句中加入default子句。

switch (expression) 
{
 case value1: statement
 case value2: statement
 default: statement
}

swi tch后边的expression的结果不是value1,也不是value2的时候,就会执行default子句。
就比如前面做的打印星期的练习,如果day的输入不是1~7的值,如果我们要提示:输入错误,则可以这样完成代码:

在这里插入图片描述

5.4 switch语句中的case和default的顺序问题

在switch语句中case子句和default |子句有要求顺序吗? default 只能放在最后吗?
其实,在swi tch语句中case语句和default语句是没有顺序要求的,只要你的顺序是满足实际需求的就可以。.
不过我们通常是把default子句放在最后处理的

6.while循环

C语言提供了3种循环语句,while 就是其中一种,接下来就介绍一下while语句。while语句的语法结构和if语句非常相似。

if(表达式)
 语句;

while(表达式)
 语句;//如果循环体想包含更多的语句,可以加上⼤括号

在这里插入图片描述
在这里插入图片描述
if后边条件满足,打印一次
在这里插入图片描述
while后边的条件满足,死循环打印。

从上面两段代码对比可以看出if和while的区别,while语句是可以实现循环效果的。

6.2 while语句的执行流程

在这里插入图片描述
首先.上来就是执行判断表达式,表达式的值为0,循环直接结束;表达式的值不为0,则执行循环语句,语句执行完后再继续判断,是否进行下一次判断。

6.3 while循环的实践

练习:在屏幕上打印1-10的值

在这里插入图片描述

6.4 练习

输入一个正的整数,逆序打印这个整数的每一位
例如:
输入: 1234,输出: 4 3 2 1
输入: 521,输出: 1 2 5

题目解析
1.要想得到n的最低位,可以使用n%10的运算,得到的余数就是最低位,如: 1234%10得 到4
2.要想去掉n的最低位,找出倒数第二位,则使用n=n/10操作就可以去掉最低位的,如:n=1234/10得到123,123相较于1234就去掉了最低位,123%10就得 到倒数第二位3。
3.循环1和2两个步骤,在n变成0之前,就能到所有的位。

在这里插入图片描述
在这里插入图片描述

7.for循环

7.1 语法形式

for |循环是三种循环中使用最多的,for循环的语法形式如下:

for(表达式1; 表达式2; 表达式3)
     语句;//如果循环体想包含更多的语句,可以加上⼤括号

表达式1用于循环变量的初始化
表达式2用于循环结束条件的判断
表达式3用于循环变量的调整

7.2 for循环的执行流程

在这里插入图片描述
首先执行表达式1初始化循环变量,接下来就是执行表达式2的判断部分,表达式2 |的结果如果==0,则循环结束;表达式2 的结果如果!=0则执行循环语句,循环语句执行完后,再去执行表达式3 ,调整循环变量,然后再去表达式2的地方执行判断,表达式2 的结果是否为0,决定循环是否继续。
整个循环的过程中,表达式1初始化部分只被执行1次,剩下的就是表达式2、循环语句、表达式3在循环。

7.3for循环练习

练习:在屏幕上打印 1-10的值

在这里插入图片描述

7.4 while循环和for循环的对比

在这里插入图片描述
在这里插入图片描述
for和while在实现循环的过程中都有初始化、判断、调整这三个部分,但是for循环的三个部分非常集中,便于代码的维护,而如果代码较多的时候while循环的三个部分就比较分散,所以从形式上for循环要更优一些。

7.5练习

练习:计算1-100之间3的倍数数字之和

在这里插入图片描述

我们也可以将上述代码进行优化:
在这里插入图片描述

8. do while循环

8.1 语法形式

在循环语句中do while 语句的使用最少,它的语法如下:

do
 语句;
while(表达式)

while和for这两种循环都是先判断,条件如果满足就进入循环,执行循环语句,如果不满足就跳出循环;
而do while 循环则是先直接进入循环体,执行循环语句,然后再执行whi le后的判断表达式,表达式为真,就会进行下一次,表达式为假,则不再继续循环。

do while循环执行流程图

在这里插入图片描述
在do while循环中先执行图上的“语句”,执行完语句,在去执行“判断表达式”,判断表达式的结果是!=0,则继续循环,执行循环语句;判断表达式的结果==0,则循环结束。
所以在do while 语句中循环体是至少执行一次的,这是do while 循环比较特殊的地方。

8.3 do while循环实例

在屏幕上打印1-10的值
在这里插入图片描述

8.4练习

输入一个正整数,计算这个整数是几位数?
例如:
输入: 1234输出: 4
输入:12
输出: 2

在这里插入图片描述
在这里插入图片描述
这里并非必须使用do while 语句,但是这个代码就比较适合使用do while 循环,因为n即使是0,也是1位数,要统计位数的。

9. break和continue语句

在循环执行的过程中,如果某些状况发生的时候,需要提前终止循环,这是非常常见的现象。C语言中提供了break和continue两个关键字,就是应该到循环中的。

●break的作用是用于永久的终止循环,只要break被执行,直接就会跳出循环,继续往后执行。
●conti nue的作用是跳过本次循环continue后边的代码,在for |循环和while循环中有所差异的。

9.1while循环中的break和continue

9.1.1 break举例

在这里插入图片描述
打印了1,2,3,4,5后,当i等于5的时候,循环正break的地方终止,不再打印,不再循环。
所以break的作用就是永久的终止循环,只要break被执行,break 外的第一层循环就终止了。
那以后我们在循环中,想在某种条件下终止循环,则可以使用break来完成我们想要的效果。

9.1.2 continue举例

continue是继续的意思,在循环中的作用就是跳过本次循环中conti nue后边的代码,继续进行下一次循环的判断。
上面的代码,如果把break换成continue会是什么结果呢?
在这里插入图片描述

9.2 for循环中的break和continue

9.2.1 break举例

其实和while循环中的break-样,for 循环中的break也是用于终止循环的,不管循环还需要循环多少次,只要执行到了break,循环就彻底终止,请看如下代码。
在这里插入图片描述

9.2.2 continue举例

在这里插入图片描述
所以在for循环中continue的作用是跳过本次循环中conti nue后的代码,直接去到循环的调整部分。未来当某个条件发生的时候,本次循环无需再执行后续某些操作的时候,就可以使用continue来实现。

这里也可以观察一下while循环和for循环中continue的区别:
在这里插入图片描述

9.3 do while循环的break和continue

do. while语句中的break和continue的作用和while循环中几乎一模一-样,大家下来可以自行测试并体会。

#include <stdio.h>
int main()
{
 int i = 1;
 do
 {
 if(i == 5)
 break;
 printf("%d ", i);
 i = i + 1;
 }while(i<=10);
 return 0;
}
#include <stdio.h>
int main()
{
 int i = 1;
 do
 {
 if(i == 5)
 continue;
 printf("%d ", i);
 i = i + 1;
 }while(i<=10);
 return 0;
}

10.循环的嵌套

前面介绍了三种循环while,do while,for, 这三种循环往往会嵌套在一起才 能更好的解决问题,就是我们所说的:循环嵌套,这里我们就看一个例子。

10.1 练习

找出100~200之间的素数,并打印在屏幕上。
注:素数又称质数,只能被1和本身整除的数字。

10.2 解析

1.要从100-200之间找出素数,首先得有100~200之间的数,这里可以使用循环解决。
2.假设要判断i是否为素数,需要拿2-i-1之间的数字去试除i,需要产生2~i-1之间的数字,也可以使用
循环解决。
3.如果2~i-1之间有数字能整除i,则i不是素数,如果都不能整除,则i是素数。

10.3代码实现

代码方法一:

在这里插入图片描述

代码方法二:
在这里插入图片描述
代码方法三:
在这里插入图片描述

11. goto语句

C语言提供了一种非常特别的语法,就是goto语句和跳转标号,goto 语句可以实现在同一个函数内跳转到设置好的标号处。

eg:

#include <stdio.h>
int main()
{
 printf("hehe\n");
 goto next:
 printf("haha\n");
 
next:
 printf("跳过了haha的打印\n"); 
 return 0;
}

goto语句如果使用的不当,就会导致在函数内部随意乱跳转,打乱程序的执行流程,所以我们的建议是能不用尽量不去使用;但是goto语句也不是一无是处, 在多层循环的代码中,如果想快速跳出使用goto就非常的方便了。

for(...)
{
 for(...)
 {
 for(...)
 {
 if(disaster)
 goto error;
 }
 }
}
error:
 //...

本来for循环想提前退出得使用break,一个break只能跳出一-层for循环,如果3层循环嵌套就得使用3个break才能跳出循环,所以在这种情况下我们使用goto语句就会更加的快捷。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【黑苹果】记录MacOS升级Sonoma的过程

【黑苹果】记录MacOS升级Sonoma的过程 一、硬件二、提前说明三、准备OC四、选择驱动五、选择ACPI六、下载内核扩展七、其他问题 一、硬件 设备是神舟zx6-ct5da 具体参照下图 二、提前说明 本机器已经安装过 macOS Monterey 12.6&#xff0c;这次是升级到 macOS Sonoma 14。 …

GoogLeNet,代码示例,辅助分类器,Inception

亮点&#xff1a; 引入了Inception结构&#xff08;融合不同尺度的特征信息&#xff09; 使用1x1的卷积核进行降维以及映射处理 添加两个辅助分类器帮助训练 丢弃全连接层&#xff0c;使用平均池化层&#xff08;大大减少模型 参数&#xff09; GoogLeNet的网络连接图&…

LInux学习FreeType编程

文章目录 使用freetype 显示一个文字使用 freetype 显示一行文字了解笛卡尔坐标系每个字符的大小可能不同怎么在指定位置显示一行文字freetype 的几个重要数据结构1、**FT_Library**结构体2、FT_Face结构体3、FT_GlyphSlot结构体4、FT_Glyph结构体5、FT_BBox结构体 读懂显示一行…

Linux运维_Apache更改默认网站目录

1.首先创建目录 并且在目录下新建测试文件 index.html mkdir -p /home/test/ap_web 直接wget 百度官网 wget www.baidu.com 2.编辑配置文件 /etc/apache2/sites-available/000-default.conf(找到 DocumentRoot)更改为刚刚创建的目录 接着在添加 最终文件: 3.给文件 添加属…

Nacos配置管理和Nacos集群配置

目录 Nacos作为配置中心实现配置管理 统一配置管理 如何在nocas添加配置文件 在微服务拉取nacos配置中心的配置 1&#xff09;引入nacos-config依赖 2&#xff09;添加bootstrap.yaml 3&#xff09;测试&#xff0c;读取nacos配置中心中配置文件的内容 ​编辑 总结&…

在Spring Boot中具有多个实现的接口正确注入的六种方式

​ 博客主页: 南来_北往 系列专栏&#xff1a;Spring Boot实战 在Spring Boot中&#xff0c;当一个接口具有多个实现时&#xff0c;正确地将这些实现注入到需要使用它们的地方是一个常见的需求。以下是在Spring Boot中实现这一目标的六种方式&#xff1a; 1. 使用Autowir…

maven聚合ssm

如果没有写过ssm项目请移步SSM后端框架搭建&#xff08;有图有真相&#xff09;-CSDN博客 数据库准备 create table user (id int (11),uid varchar (60),name varchar (60),age int (11),sex varchar (12) ); insert into user (id, uid, name, age, sex) values(10,202409…

小米电机与STM32——CAN通信

背景介绍&#xff1a;为了利用小米电机&#xff0c;搭建机械臂的关节&#xff0c;需要学习小米电机的使用方法。计划采用STM32驱动小米电机&#xff0c;实现指定运动&#xff0c;为此需要了解他们之间的通信方式&#xff0c;指令写入方法等。花了很多时间学习&#xff0c;但网络…

LINUX网络编程:cookie和session

目录 1.cookie 1.2.cookie原理 1.3.cookie的格式以及字段 字段介绍&#xff1a; 完整的cookie 1.4.cookie的安全问题 2.session 2.2session的原理 1.cookie 在大家在浏览b站的时候&#xff0c;都会发现一个问题&#xff0c;当我们登录过一次之后&#xff0c;下次点开b站…

2024年最新Stable Diffusion模型资源合集!附整合安装包!

&#xff08;模型资源在ComfyUI、WebUI以及ForgeUI中都通用&#xff09; 之前的Stable Diffusion笔记受到了不少小伙伴的关注&#xff0c;很感谢大家的建议和支持。有很多小伙伴私信我问我一些AI绘画的模型资源在哪来下载&#xff0c;一般来说有两个网站比较常用&#xff0c;分…

位操作解决数组的花样遍历

文章目录 题目 一、思路&#xff1a; 二、代码 总结 题目 leetcodeT289 https://leetcode.cn/problems/game-of-life/description/ 一、思路&#xff1a; 这题思路很简单&#xff0c;对每个位置按照题目所给规则进行遍历&#xff0c;判断周围网格的活细胞数即可。但是题目要求…

【LVGL快速入门】SquareLine Studio安装教程(LVGL官方工具)

一.简介与导航&#xff1a; SquareLine Studio是由LVGL官方开发的一款UI设计工具&#xff0c;采用图形化进行界面UI设计&#xff0c;轻易上手。 SquareLine Studio官方网址&#xff1a;https://squareline.io/SquareLine Studio官方文档&#xff1a;https://docs.squareline.io…

太阳能电池特性及其应用

中南民族大学-通信工程2024-大学物理下实验 目录 代码实现结果显示 &#x1f6e0;工具使用 MarsCode&#xff08;插件&#xff0c;集成在PyCharm&#xff09;&#xff1b; python编程&#xff08;豆包AI智能体&#xff09; &#x1f4bb;编程改进 此处是用「Matplotlib」来作图…

Monkey测试工具大盘点!如何选怎么用全整明白了!

什么是Monkey测试&#xff1f; 以下是官方说法&#xff1a; Monkey 测试是通过向系统发送伪随机的用户事件流&#xff08;如按键输入、触摸屏输入、手势输入等&#xff09;&#xff0c;实现对应用程序客户端的稳定性测试&#xff1b;这种随机性可以模拟真实用户的行为&#x…

理解Web3的互操作性:不同区块链的连接

随着Web3的迅速发展&#xff0c;互操作性成为区块链技术中的一个核心概念。互操作性指的是不同区块链之间能够无缝地交流和共享数据&#xff0c;从而实现更加高效和灵活的生态系统。本文将探讨Web3中互操作性的意义、面临的挑战以及未来的发展趋势。 1. 互操作性的意义 在Web…

优达学城 Generative AI 课程3:Computer Vision and Generative AI

文章目录 1 官方课程内容自述第 1 课&#xff1a;图像生成简介第 2 课&#xff1a;计算机视觉基础第 3 课&#xff1a;图像生成与生成对抗网络&#xff08;GANs&#xff09;第 4 课&#xff1a;基于 Transformer 的计算机视觉模型第 5 课&#xff1a;扩散模型第 6 课&#xff0…

利用AI大模型,增强你的DevOps!

前言 自从去年春天ChatGPT问世之后&#xff0c;互联网也掀起了拥抱AI的浪潮&#xff0c;不仅是各大头部大厂相继发布大模型产品&#xff0c;在开发者的Coding过程中也紧跟时代&#xff0c;一些热门插件也纷纷受到了开发者的青睐&#xff0c;比如GitHub Copilot的智能代码生成。…

数据结构编程实践20讲(Python版)—05二叉树

本文目录 写在前面:大“树”下好乘凉定义主要术语基本特征主要应用领域:05 二叉树Binary treeS1 说明S2 示例S3 二叉树类型(1)满二叉树(Perfect Binary Tree)(2)完全二叉树(Complete Binary Tree)(3)二叉搜索树(Binary Search Tree)(4)平衡二叉树(Balanced Bin…

Windows环境NodeJS下载配置安装运行

Windows环境NodeJS下载配置安装运行 &#xff08;1&#xff09;下载 Node.js — Run JavaScript Everywhere 安装文件。 一路傻瓜式安装。 如果安装正常&#xff0c;输入命令可显示版本号&#xff1a; &#xff08;2&#xff09;可以查询nodejs默认的后续依赖安装包位置及缓存…

稻盛和夫认为,一个领导是否值得追随,看这几点就够了

一、真正的领导者有自信&#xff0c;但不自大&#xff0c;有坚定的信念和价值观。 稻盛和夫认为&#xff0c;领导者的真正强大之处在于他们能够坚定地做正确的事情。领导者必须具备勇气和决心&#xff0c;以及坚定的信念&#xff0c;以便在面对挑战和困难时能够坚持自己的信念…