C语言速成之05深入了解表达式与语句

Python新手入门指南:环境搭建与基础语法速成 Python作为动态类型编程语言,以其简洁语法和丰富生态成为编程入门首选。其核心优势在于解释型执行机制和自动内存管理,大幅降低了学习门槛。在工程实践中,Python广泛应用于Web开发、数据分析和自动化脚本等领域。本文聚焦Python环境配置的常见问题解决方案,详细讲解PATH设置和版本选择要点,并演示如何通过交互式解释器快速验证代码逻辑。针对零基础学习者,特别介绍了变量定义、控制流程和函数封装等基础语法要素,帮助开发者避开类型错误和缩进问题等典型陷阱。 阅读详情

深入了解C语言表达式与语句

大家好,我是程序员Feri,拥有超过12年的编程经验。我不仅参与过众多开发项目、带领过团队,还进行过创业。我擅长Java、鸿蒙、嵌入式、人工智能等多个领域的开发。在这里,我专注于和大家分享程序员成长过程中的那些事儿,希望在成长的道路上能与你相伴,一起朝着目标勇往直前!

1 表达式

表达式是由数字、算符、数字分组符号(括号)、自由变量和约束变量等按照能求得数值的有意义排列方法组合而成的。在C语言里,表达式由操作数(像变量、常量)和运算符构成,最终会产生一个值。

表达式的种类丰富多样,常见的有:

  1. 算术表达式

  2. 赋值表达式

  3. 关系表达式

  4. 逻辑表达式

  5. 位运算表达式

  6. 条件表达式

  7. 逗号表达式

1.1 算术表达式

算术表达式主要用于执行基本的数学运算。下面是一个示例代码,展示了加法、减法、乘法、除法、取模以及自增自减运算的使用:

//算术表达式
void f1(){
    int a = 5, b = 3;
    // 加法
    int add_result = a + b;
    // 减法
    int sub_result = a - b;
    // 乘法
    int mul_result = a * b;
    // 除法
    int div_result = a / b;
    // 取模
    int mod_result = a % b;

    printf("加法结果: %d\n", add_result);
    printf("减法结果: %d\n", sub_result);
    printf("乘法结果: %d\n", mul_result);
    printf("除法结果: %d\n", div_result);
    printf("取模结果: %d\n", mod_result);
    //++ 在前 先自增 后输出
    printf("自增结果: %d\n", ++a);
    //-- 在后 先输出 后自减
    printf("自减结果: %d\n", b--);
}
 

为了帮助大家更好地理解算术表达式,这里有一道思考题:

//算术表达式 常见的试题分析
void t1(){
    int a = 5;
    double b = 2.5;
    int c = 3;
    int d = 4;
    double result;

    result = (a + (int)(b * c)) / (double)(d - 1) + (a % c) * (b + d);
    //思考题 结果是多少?怎么分析得来的呢
    printf("表达式的结果是: %lf\n", result);
}  

你可以试着分析一下这个表达式的计算结果,思考其计算过程。

1.2 关系表达式

关系表达式由数值和关系操作符连接而成,在后续编程中会经常用到。每个关系表达式的结果要么为真,要么为假。在C语言里,用0表示假,非零表示真。

例如,有 int x = 16;,那么 10 < x < 30 这个表达式的结果是怎样的呢?答案是永远为真。不管 x 的值是多少,哪怕是50,该表达式的结果依旧为真。

这是因为在编译器眼中,表达式是从左往右依次执行的。先执行 10 < x,若为真则返回1,接着判断 1 < 30,结果还是真;若 10 < x 为假,则返回0,再判断 0 < 30,结果同样为真。

所以,如果要判断一个数是否在10到30之间,不能写成 10 < x < 30,而应该写成 x > 10 && x < 30,这样才能分别独立地进行两次判断,只有当两个条件都为真时,结果才为真。

下面是一个关系表达式的示例代码:

//关系表达式
void f2(){
    int a = 5, b = 3, c = 7, d = 2;
    int result;

    // 判断 a 是否大于 b 且 c 是否大于 d,或者 a 是否等于 c 且 b 是否等于 d
    result = ((a > b) && (c > d)) 
    || ((a == c) && (b == d));

    printf("结果: %d\n", result);
    printf("结果: %s\n", result==1?"true":"false");
}       

现在来做一道练习题:

float x = 3.5, y = 2.1, z = 4.2;
// 判断 x 是否大于 y 且 z 是否小于等于 x 与 y 的和
int result = (x > y) && (z <= (x + y));

你能算出 result 的最终结果吗?

其他类型的表达式这里就不再详细演示了。

2 语句

在C语言中,语句相当于给计算机下达的完整指令。从形式上看,以分号结尾的一条代码就是一条语句。

C语言中的语句可以分为以下五大类:

  1. 表达式语句:在表达式后面加上分号构成,主要用于执行表达式所代表的操作,可能会对变量的值产生修改。

  2. 复合语句(块语句):用花括号 {} 把一组语句括起来,通常用于将多个语句组合成一个逻辑单元。

  3. 控制语句:用于控制程序的执行流程,包括条件语句、循环语句和转向语句。

  4. 函数语句:用于调用函数并执行函数体。

  5. 空语句:仅由一个分号组成,不包含任何内容。

好啦,今天的内容就到这里啦。关注我,一起开启更多编程知识的学习之旅!

LangChain本地实操七日速成:从环境搭建到LangGraph状态机 LangChain作为AI应用编排层,核心价值在于可控、可调试的本地化开发体验。其原理是通过Chain、Agent、Retriever等组件协同调度大模型与工具,实现RAG问答、自然语言查数据库等智能任务。技术价值体现在规避云端黑盒延迟、暴露FAISS硬件适配问题、支持prompt全链路调试等工程优势。典型应用场景包括企业知识库构建、BI数据自然语言查询、智能客服系统开发及学生项目快速验证。本文聚焦本地实操路径,覆盖conda环境隔离、bge-m3中文嵌入、ReAct Agent编排与LangGraph状态 阅读详情

相关推荐

R语言非线性回归实战:机制建模与Puromycin案例精解

非线性回归是处理具有明确物理、化学或生物机制数据的核心技术,其本质在于参数与响应变量间的非线性关系,而非曲线形态本身。相比线性模型的‘最佳投影’,它追求‘机制还原’,能赋予参数可解释的科学含义,如酶动力学中的Vₘₐₓ和K值。该方法在药物剂量响应、材料应力-应变、种群增长等场景中不可替代,但面临初值敏感、收敛不稳定、诊断复杂等工程挑战。本文以R语言为工具,聚焦Puromycin酶动力学数据,系统拆解从散点图识别饱和特征、eyeball法设定初值、profile()验证参数非线性,到残差量化诊断与生产级压力测试

dianjiaxian1205的博客 485

C语言小白速成笔记

666

m0_73202283的博客 2万+

谭浩强C语言第五版PPT与源码包实战指南

C语言入门教学中,'语法理解'与'代码执行'之间常存在认知断层。程序内存布局、栈帧调用、输入缓冲区等底层原理,是初学者调试失败的核心根源。掌握这些机制不仅能规避scanf漏取地址符、指针未初始化等高频错误,更能提升编译警告解读、单步调试和边界条件分析能力。典型应用场景包括高校实验课快速建课、自学闭环训练及C语言基础能力诊断。本文聚焦谭浩强《C程序设计》(第五版)配套PPT与可运行源码包,通过流程图-代码交叉验证、GCC编译参数调优、UTF-8 BOM修复等工程化方法,将静态教学材料转化为本地IDE中可调试、

weixin_29214691的博客 246

C#语言基础速成Day05

C#(发音为“C Sharp”)是一种现代的、面向对象的编程语言,由微软开发,作为其 .NET 框架的一部分。面向对象编程(OOP)是一种编程范式,基于“对象”和“类”的概念,旨在提高代码的可重用性、可扩展性和可维护性。C#的面向对象是及其重要的部分,只有掌握了面向对象的思想才算掌握了精髓部分。同时,C#提供了丰富的特性和功能,使开发者能够编写高效、可维护的代码。通过理解和应用这些特性,我们可以大大提高自己的编程能力和项目的质量。

2301_79175212的博客 1095

研发流程后端开发工具,提示功能开发效率

后端开发工具

手把手教你用AD9834 DDS模块DIY一个可调信号源(附AD原理图/PCB/程序)

本文详细介绍了如何使用AD9834 DDS模块DIY一个高精度可调信号源,涵盖硬件搭建、原理图解读、PCB优化和程序烧录等关键步骤。通过STM32控制实现0-10MHz频率范围输出,特别适合电子设计与射频实验,提供完整的AD原理图、PCB设计和程序代码参考。

weixin_31854867的博客 408

c语言期末速成4——运算符和表达式

前置++(--),是先++(--),再使用。后置++(--),是先使用,再++(--)。逻辑与(&&):如果左表达式为假,那么右表达式不会计算,整个逻辑表达式的结果就是假。逻辑或(||):如果左表达式为真,那么右表达式不会计算,整个逻辑表达式的结果就是真。若表达式1的值为真,则将表达式2的值作为整个条件表达式的取值。若表达式1的值为假,则将表达式3的值作为整个条件表达式的取值。逻辑与(&&):只有所以表达式都为真,整个逻辑表达式才为真。逻辑或(||):只要有一个表达式为真,整个逻辑表达式为真。

2501_93696036的博客 347

Netty源码分析系列之writeAndFlush()下

write()只会将数据只是发送到了ChannelOutboundBuffer 缓冲区中,还没有被发送到操作系统的套接字中只有当调用了 flush()方法后,才会真正将数据发送到套接字中。那么 flush()方法的源码又是如何执行的呢?

天堂的博客 1573

15TB 历史日志不再占高端存储:Sealos 对象存储冷数据低成本归档完整指南

某制造团队的三年历史日志达到 15TB,全部放在企业级高端存储上,年费用超过 40 万元,而其中大部分数据写入后就极少被访问。用 Sealos 对象存储自建一套 S3 兼容的存储后,这类冷数据可以整体迁到自建的低成本对象存储层级,并由生命周期规则自动完成降层与清理。本文以 15TB 日志为例,讲部署、规则配置与成本测算。 ## 冷数据迁离高端存储:解决谁的问题 这一节回答:Sealos 对象存

gitblog_00327的博客 479

Linux双网卡设置IP属于同一网段的ping方法以及现象记录分析

文章目录前言ping以及MAC地址总结 前言 写在前面:经常遇到客户将板卡上的两个网络设备的IP地址设置为同一网段的情况,比如eth0:192.168.0.232,eth1:192.168.0.30. 我的解释是,不能设置为同一网段,或者使用其中一个时候下线另外一个网卡。但是我不知道这个说法到底是根据什么,查了很多资料也没找到明确的说法,但是下面这个实验能够说明一些现象的原因。 ping以及MAC地址 首先查看网卡的信息 ifconfig 因为两个网卡都在同一个网段,所以如果这个时候直接和我们的主机(I

“逛丢一只鞋”的博客 1万+

3U 与 SV630A 伺服实现 CANLINK 通讯

SD410这组参数特别重要,这个32位特别重要,是防止数值乱码的关键。

weixin_42714122的博客 2697

如何安全运行 Claude:claude-code.el 沙箱模式与权限管理完整指南

你是否想过,让 AI 替你改代码时,如何防止它"越权操作"?[claude-code.el](https://link.gitcode.com/i/2fe6276d10d7071a289c3e47190641b1) 是 Emacs 与 Claude Code CLI 的集成包,让你无需离开 Emacs 就能启动、管理和监督 Claude 编码会话。它内置了 **sandbox 沙箱启动模式**、*

gitblog_00790的博客 233

(九)DFI接口时序

文章目录一、DFI Interface 一、DFI Interface   DFI接口是连接DDR Controller与DDR_PHY之间的通用接口,其信号组如下表:       

Mr.翟的博客 1万+

Learn X in Y Minutes:Nix 表达式语言完整语法指南(基于 learnxinyminutes-docs 瑞典语教程)

> 本指南以 learnxinyminutes-docs 仓库中的 [sv/nix.md](https://link.gitcode.com/i/b66397a7f83af190c8e4424994d7e670)(及其英文原版 [nix.md](https://link.gitcode.com/i/a5ad93ea5becac7761ba1dc5ea787ecc))为骨架,系统讲解 Nix 表达式

gitblog_00085的博客 618

Transformer在BEV感知中的统治地位

Transformer在BEV感知中的统治地位 ,人工智能,计算机视觉,大模型,AI,本文围绕 Transformer 在 BEV 感知中的统治地位展开,介绍了 Transformer 的基础原理,如自注意力、多头注意力机制等,以及 BEV 感知的概念、任务与挑战。阐述了 Transformer 在 BEV 感知中的技术优势,包括全局建模、灵活特征融合和长距离依赖捕捉能力,还介绍了典型架构、代码示例及在自动驾驶目标检测等领域的应用案例。同时,评估了其性能,提及优化方法,并展望了与其他技术融合、端到端系统等…

不踩坑,不知道坑有多深;不总结,踩过的坑白踩。 20万+

【蓝桥杯单片机组第八届省赛】— 基于单片机的电子钟程序设计与调试

1、初赛试题 1.1 基本要求 (1)使用 CT107D 单片机竞赛板, 完成“电子钟” 功能的程序设计与调试; (2)设计与调试过程中,可参考组委会提供的“资源数据包”; (3)Keil 工程文件以准考证号命名, 完成设计后, 提交完整、 可编译的 Keil工程文件到服务器。 1.2 硬件框图 1.3功能描述 1.3.1 初始化 (1)关闭蜂鸣器、继电器等无关外...

Fanjufei的博客 3661

2026嵌入式入行强度全解析:从C语言到Linux驱动,掌握真实技能栈

嵌入式系统是软件与硬件深度协同的交叉领域,其开发能力不仅要求扎实的C语言功底与单片机控制基础,更需理解中断、定时器、DMA等底层机制,并逐步过渡到RTOS与嵌入式Linux的驱动开发。从环境监控到汽车电子,从FFT频谱分析到固件安全升级,嵌入式技术的价值体现在对系统资源的精细管理和工程化交付的可靠性上。在AIoT和边缘计算快速普及的今天,掌握STM32、串口通信、设备树和交叉编译等核心技能,已成为进入该领域的关键门槛。本文结合真实行业需求,拆解2026年嵌入式岗位的技术栈、项目标准和面试要求,帮助学习者避开

weixin_33768481的博客 319

Vue3 - 详细实现移动端H5网页调用摄像头拍照功能,微信公众号网页h5页面打开本地摄像头并点击按钮照相,vue3获取摄像头画面执行拍照保存,调整摄像头前置后置抓拍图片给用户展示或保存手机上传服务器

vue3,H5网页,手机移动端,vue3摄像头拍照,前端h5调用手机摄像头,移动端网页调用摄像头,H5实现手机拍照和选择上传,调用本地摄像头实现拍照,vue3调用摄像头拍照,手机浏览器开启摄像头并进行拍照,H5移动端网页中调用手机摄像头,H5实现web调用摄像头在线照相,vue3h5调用摄像头,微信公众号网页如何调用摄像头拍照,公众号H5页面实现打开摄像头照相,怎么生成临时图片,vue3项目调用摄像头实现拍照功能,摄像头打不开没反应,浏览器不兼容怎么办,摄像头权限不弹出,只能在本地运行,拒绝权限后怎么办,

🏆 前端领域优质创作者 1万+

黑客/网络安全30天速成计划,零基础必看

网络安全产业就像一个江湖,各色人等聚集。相对于欧美国家基础扎实(懂加密、会防护、能挖洞、擅工程)的众多名门正派,我国的人才更多的属于旁门左道(很多白帽子可能会不服气),因此在未来的人才培养和建设上,需要调整结构,鼓励更多的人去做“正向”的、结合“业务”与“数据”、“自动化”的“体系、建设”,才能解人才之渴,真正的为社会全面互联网化提供安全保障。

shandongjiushen的博客 840

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

数学建模竞赛Python速成:NumPy、Pandas、Matplotlib核心实战指南

在数据科学和工程计算领域,高效的数据处理与可视化是核心能力。其原理在于通过向量化计算和高级数据结构,替代传统循环,实现性能的指数级提升。这一技术价值在于,它能将复杂的数学思想快速转化为可执行代码,是连接理论与应用的关键桥梁。在数学建模、数据分析、机器学习等应用场景中,掌握核心工具库是快速解决问题的前提。本文聚焦于数学建模的实战需求,深入讲解NumPy的数值计算、Pandas的数据处理以及Matplotlib的可视化技术,通过任务驱动的方式,帮助读者快速构建解决实际问题的代码能力框架,并涵盖数据清洗、模型构建

weixin_33709364的博客 613

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

Claude Code 资源导航与实战速成:官方资料索引、30 分钟精通清单与新功能图谱

这是一份面向 Claude Code 开发者的资源导航与实战速成指南。文章以仓库 [vi/resources.md](https://link.gitcode.com/i/257d91d302899d6dd4acdb4b65c3125c) 为骨架,系统整理 Claude Code 官方文档入口、Anthropic 工程博客精选、30 分钟快速上手的完整技巧清单,以及针对新仓库与存量仓库的两套推荐工

gitblog_00705的博客 660

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

java零宽断言_零宽断言 java

正则表达式的先行断言(lookahead)和后行断言(lookbehind)正则表达式的先行断言和后行断言一共有4种形式:(?=pattern) 零宽正向先行断言(zero-width positive lookahead assertion)(?!pattern) 零宽负向先行断言(zero-width negative lookahead assertion)...文章技术小甜2017-11-...

weixin_31034309的博客 310

Matlab数据预处理七步法:数学建模实战速成指南

数据预处理是数学建模成败的关键环节,其本质是构建可复现、可追溯、可批量的数据质量保障体系。从原始数据导入到特征工程就绪,核心在于掌握向量化运算、结构化数据管理(如table与datetime)和鲁棒性脚本编写能力。Matlab凭借原生函数支持、高效数值计算与强类型控制,在缺失值处理、异常值识别、标准化/归一化选择等高频场景中显著优于Excel。尤其在国赛、美赛、亚太杯等竞赛中,基于detectImportOptions、fillmissing、isoutlier、normalize等函数的标准化流水线,能将

weixin_30443747的博客 399

learnxinyminutes-docs 日语版 R 语言快速入门:从零基础数据操作到统计建模与绘图

本文以 learnxinyminutes-docs 仓库中的 [日语版 R 教程](https://link.gitcode.com/i/2f04d0dbdb80703cb59ac4dd15a55358)(对应英文原版 [r.md](https://link.gitcode.com/i/fe5cb32454fbd331806f5cbf3ea0cd93))为核心,系统讲解 R 作为统计计算语言的核心

gitblog_00909的博客 206

陈强《计量经济学》与Stata应用:核心学习资源与实操指南

计量经济学是运用统计方法分析经济数据、检验经济理论的核心学科,其核心原理在于通过建立数学模型来量化经济变量之间的关系,并利用样本数据对模型参数进行估计和推断。掌握计量经济学对于进行严谨的实证研究、评估政策效果具有重要价值,广泛应用于金融分析、宏观经济预测、产业研究等领域。在实践层面,Stata作为主流的计量分析软件,其命令操作是连接理论与实证的关键桥梁。本文聚焦于如何高效学习陈强教授的经典教材《计量经济学》及其Stata应用,通过整合**核心知识点梳理**与**Stata命令实操**,提供一套从理论到实践的

weixin_33804582的博客 375

Octop 部署到飞牛 NAS:装一个 .fpk 包,5 分钟到第一次对话

Octop 是腾讯开源的多用户、多智能体自托管 AI 助手,把它的 .fpk 安装包装进飞牛(fnOS)NAS,走完登录和模型密钥两步,就有一套数据全留在本地硬盘的 Web 聊天助手。全程用飞牛图形界面完成,不碰命令行,约 5 分钟。 ## 选包对比:三款 .fpk 怎么选 | 包名 | 体积 | 端口 | 适用架构 | 依赖 | |------|------|------|---------

gitblog_00310的博客 884
上一篇: C语言速成之04运算符:从基础运算到硬件操控的全维度解析
下一篇: C语言速成之06条件语句深度解析:从if基础到工程实践
编程百晓君
博客等级 码龄2年 469粉丝 46原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值