C语言分支循环语句

最近学习了C语言的分支与循环语句,今天在这里浅谈一下我对于C语言的分支与循环的理解。

分支

首先,分支语句中最常用的是就是if语句。if语句分为单分支语句与多分支语句。

一、单分支语句

单分支语句的一般为if(表达式) {语句;},如含有交叉关系,使用并列的if语句。

例:输出两个数中最大值

二、多分支语句

多分支语句分为三种,第一种语句:if(表达式) {语句;}  else{语句;},此条语句用于双分支结构,多用于非此即彼的关系上。

例:输出两个数中最大值

当然,仅仅是双分支的话,万一等于呢,那不就没办法了吗,这就需要用到第二种语句了。

第二种语句:if(表达式) {语句;}  else if(表达式) {语句;} ……else {语句;},双份支语句不能满足使用时就要使用多分支了。

例:输出两个数中最大值

最后一种语句就没有了if,else了,取而代之的是switch(表达式) {case 常量1: 语句;……case 常量n: 语句n; default: 语句n+1}。(表达式)只能是char型或int型,case后面要跟上一个空格,常量后面要带冒号,(表达式)要与常量类型一致。最重要的是要在需要退出的时候,在语句后面加上break;

例:

没有break;语句,明明已经查询正确结果了却仍会往下继续查询。让我们加上break:语句试试。

循环

for

循环语句分为三种,for语句是用的最多的循环语句。for循环语句如下:

for(表达式1; 表达式2; 表达式3;)

{语句;}

表达式1用于循环变量的初始化。

表达式2用于进行循环条件判断。

表达式3用于循环变量的调整。

例:打印1~10的数到屏幕

while

while使用次数次于for,但也是经常使用的语句,while循环语句如下:

while(表达式)

{语句;}

与for循环不同的是while循环变量的调整是在循环体(语句)内,这有时会导致程序陷入死循环。

例:

while语句的使用要多注意循环体内的逻辑顺序,避免造成死循环。

do...while

循环语句中do..while语句使用的较少,do...while循环语句如下:

do{

语句;

} while(表达式);

例:

do...while的特点是最少执行一次循环体的内容,使用的机会较少。

  • 7
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
基于LSTM的财务因子预测选股模型LSTM (Long Short-Term Memory) 是一种特殊的循环神经网络(RNN)架构,用于处理具有长期依赖关系的序列数据。传统的RNN在处理长序列时往往会遇到梯度消失或梯度爆炸的问题,导致无法有效地捕捉长期依赖。LSTM通过引入门控机制(Gating Mechanism)和记忆元(Memory Cell)来克服这些问题。 以下是LSTM的基本结构和主要组件: 记忆元(Memory Cell):记忆元是LSTM的核心,用于存储长期信息。它像一个传送带一样,在整个链上运行,只有一些小的线性交互。信息很容易地在其上保持不变。 输入门(Input Gate):输入门决定了哪些新的信息会被加入到记忆元中。它由当前时刻的输入和上一时刻的隐藏状态共同决定。 遗忘门(Forget Gate):遗忘门决定了哪些信息会从记忆元中被丢弃或遗忘。它也由当前时刻的输入和上一时刻的隐藏状态共同决定。 输出门(Output Gate):输出门决定了哪些信息会从记忆元中输出到当前时刻的隐藏状态中。同样地,它也由当前时刻的输入和上一时刻的隐藏状态共同决定。 LSTM的计算过程可以大致描述为: 通过遗忘门决定从记忆元中丢弃哪些信息。 通过输入门决定哪些新的信息会被加入到记忆元中。 更新记忆元的状态。 通过输出门决定哪些信息会从记忆元中输出到当前时刻的隐藏状态中。 由于LSTM能够有效地处理长期依赖关系,它在许多序列建模任务中都取得了很好的效果,如语音识别、文本生成、机器翻译、时序预测等。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值