发布时间:2026/7/19 17:47:28
C细节补充 1负数取模的规则是计算得到的数值和除数和被除数的符号无关最后结果的符号由被除数的符号进行决定2运算符不可以比较两个字符串是否相等因为比较的是两者的地址 就算是常量字符串也不行。4,realloc进行缩容缩容过小会造成数据截断丢失数据。特殊reallocptr,0释放原来的内存返回NULL.不建议这样使用释放内存还是使用free和delete3,输出的结果为123456%5表示最少输出5个字符。不足5位通过空格进行补充。超过5位就正常输出。4如果print()有n个占位符 就有n1个参数n个占位符对应n个参数加上字符串就是n1个参数。5scanf中的占位符%s表示读取一个字符串遇到空白就停止6scanf处理数值占位符时会自动跳过空白字符包括空格制表符换行符。处理字符占位符时不会忽略空白字符空格换行符制表符占位符类型是否跳过空白字符说明数值型%d%f%lf%x等✅自动跳过忽略输入前的空格、制表符、换行符字符串%s✅自动跳过忽略前导空白读到空白字符停止字符%c❌不跳过读取当前第一个字符包括空格和换行符%d无论中间有多少个空格都会跳过应为他读取的是数字%c表示读取字符空白字符也是字符所以会读取输入的A前面是一个/n,a1读取了/n,a2读取了“A”.打印时先打印一个换行符再打印字符A补充1此处可见没有省略空白字符导致c2为空格7变长数组VLAC99之前没有变长数组在定义和初始化时数组[]中的数必须是常数但是在C99之后引了变长数组后只要变量提前已经赋一个常数值就可以在[]填入一个变量。特殊的C不支持变长数组。MSVC编译器微软的MSVC编译器至今没有完整支持C99标准中的变长数组VLA它主要支持的是C标准C标准本身不支持变长数组。变长数组(VLA)的注意事项_1,VLA不能进行初始化int n 10;int arr[n] {0} X原因数组在编译时就要进行初始化但是此时变量n不存在。变量n在运行时才存在。_2VLA不能时全局变量和静态变量原因全局变量和静态变量在程序启动前内存就分配完成了大小是一个编译期常量。而VLA是运行时变量_3当变量n过大时arr[n]可能导致栈溢出int n 1000000;int arr[n]; //栈溢出风险_4变长数组的大小一旦确定就无法进行改变。8,sizeof(acX sizeof(acYacX中的字符比acY中的字符多一个“\0,所以更大strlen(acX)和strlen(acY)无法进行比较因为strlen记录的时”\0”前的字符个数。acY中没有\0,所以strlen(acY)是一个随机值。9函数的实参不止可以是变量也可以是常数表达式函数返回值数组元素结构体成员宏定义等等。10左对齐和右对齐右对齐:例%2d 右对齐不足的补充空格 超过2位原样输出%2f同理右对齐不足两位用空格补充。%.2d 和 %02d右对齐不足的补充0超过2位原样输出%.2f精度控制为2位小数点后保留两位。左对齐%-2d 左对齐不足的用空格进行补充超过2位原样输出11,数组的逆置void reserve(int arr[],int size) { int left 0; int right size - 1; while (left right--) { int tmp arr[left]; arr[left] arr[right]; arr[right] tmp; } }12判断素数#include stdbool.h #include math.h //实现判断素数的函数 bool is_prime(int k) { //处理特殊情况--负数01都不是素数 if (k 1) { return false; } int n sqrt(k); //防止每次都计算sqrt(k) for (int i 2;i n;i) { if (k % i 0) { return false; } } return true; }13轮转数组解法一再创建一个数组回头拷贝void rotate(int* nums, int numsSize, int k) { //使用额外的数组最后拷贝回去 int arr1[numsSize]; for(int i 0;inumsSize;i) { //ki%numsSize //这个式子不仅考虑超出时循环的情况 //还考虑了不同的初始位置的影响 arr1[(ki) % numsSize] nums[i]; } //拷贝回去 for(int i 0;inumsSize;i) { nums[i] arr1[i]; } }时间复杂度和空间复杂度都为O(n)解法二翻转数组原理//交换两个元素值 void Swap(int* a,int* b) { int t *a; *a *b; *b t; } //翻转数组 void reserve(int num[],int start,int end) { while(startend)//不能在这里直接对start和end--因为后面还要使用 { Swap(num[start],num[end]); start; end--; } } void rotate(int* nums, int numsSize, int k) { //解决循环 k % numsSize; //翻转数组写法 reserve(nums,0,numsSize-1); reserve(nums,0,k-1); reserve(nums,k,numsSize-1); }14打印水仙花数//打印0~100000之间的水仙花数 //常见问题--计算之后丢失原来的值要进行提前赋值保存 int main() { for (int i 0;i 100000;i) { int c i; int tmp c; if (c 0) { printf(0 ); continue; } //记录位数 int a 0; while (c 0) { c c / 10; a; } //计算之后c丢失原始值 int count 0; int j a; while (j--) { //得到每一位--每次求最后一位 int n tmp % 10; tmp / 10; count pow(n, a); } if (count i) { printf(%d , count); } } return 0; }15不创建额外变量实现两个数的交换//交换两个变量 //方法一--使用异或操作符 void Judgement1(int* a, int* b) { //a ^ 0 a a ^ a 0 *a *a ^ *b; *b *a ^ *b; *a *a ^ *b; } //加减交换法 void Judgement2(int* a, int* b) { *a *a *b; *b *a - *b; *a *a - *b; } int main() { int a 3; int b 5; printf(%d %d\n, a, b); Judgement2(a, b); printf(%d %d, a, b); }

相关新闻

2026/7/19 17:47:28

SH9认知几何学视角下人类推理过程的测地线理论建模

世毫九认知几何学视角下人类推理过程的测地线理论建模 作者:方见华 单位:世毫九实验室 核心摘要 在世毫九(SH9)认知几何学的理论框架下,人类逻辑推理的本质,是认知主体的认知状态在高维黎曼认知流形上沿测地…

2026/7/19 17:47:28

physx-rs实战案例:用Rust实现弹跳球物理模拟的完整指南

physx-rs实战案例:用Rust实现弹跳球物理模拟的完整指南 【免费下载链接】physx-rs 🎳 Rust binding for NVIDIA PhysX 🦀 项目地址: https://gitcode.com/gh_mirrors/ph/physx-rs physx-rs是NVIDIA PhysX物理引擎的Rust绑定库&#xf…

2026/7/19 17:47:28

3分钟搭建AI数据标注平台:Label Studio全流程实战指南

3分钟搭建AI数据标注平台:Label Studio全流程实战指南 【免费下载链接】label-studio Label Studio is a multi-type data labeling and annotation tool with standardized output format 项目地址: https://gitcode.com/GitHub_Trending/la/label-studio 当…

2026/7/20 0:18:52

互联网大厂常见Java面试题及答案汇总(2026持续更新)

金九银十即将来袭,又是一个跳槽的好季节,准备跳槽的同学都摩拳擦掌准备大面好几场,今天为大家准备了互联网面试必备的 1 到 5 年 Java 面试者都需要掌握的面试题,分别 JVM,并发编程,MySQL,Tomca…

2026/7/20 0:13:52

python数据可视化技巧的100个练习 -- 31. 类别数据的点图

重要性★★★☆☆ 难度★★☆☆☆ 你是一家零售公司的数据分析师。你的经理要求你可视化最近产品发布的客户满意度评级分布。评级是分类的,范围从“非常不满意”到“非常满意”。创建一个点图以显示每个评级类别的频率。使用 Python 进行数据处理和可视化。在代码中生成输入…

2026/7/20 0:13:52

智能体走进物理世界,千里科技携舱驾协同成果亮相WAIC 2026

在2026世界人工智能大会(WAIC 2026)举办期间,千里科技董事长、阶跃星辰董事长印奇作为特邀嘉宾出席大会开幕式并在大会主论坛(上午场)发表主题演讲《当智能体进入物理世界》。在印奇看来,"智能体"…

2026/7/20 0:13:52

ngx_output_chain_get_buf

1 定义 ngx_output_chain_get_buf 函数 定义在 src/core/ngx_output_chain.cstatic ngx_int_t ngx_output_chain_get_buf(ngx_output_chain_ctx_t *ctx, off_t bsize) {size_t size;ngx_buf_t *b, *in;ngx_uint_t recycled;in ctx->in->buf;size ctx->buf…

2026/7/19 0:00:15

Unity与Python本地通信:基于Flask的跨语言数据交换实战

1. 项目概述:为什么我们需要一个本地通信服务器?在游戏开发、数字孪生、仿真训练等众多领域,Unity作为强大的实时3D内容创作平台,其核心逻辑通常由C#驱动。然而,当我们需要进行复杂的数据分析、机器学习推理、科学计算…

2026/7/20 0:03:51

基于大数据爬虫+Hadoop+Spark的茶叶销售数据分析与可视化系统开题报告

一、课题研究背景与意义 茶叶作为我国特色农产品与核心经济作物,线上电商销售规模持续逐年扩增,各大电商平台、社交交易渠道积累了海量茶叶商品数据、交易订单数据、用户消费行为与评价数据。传统茶叶销售行业多采用小型数据库存储数据、人工统计分析的运…

2026/7/20 0:03:51

STM32H7 QSPI Flash下载算法制作指南

1. STM32H7 QSPI Flash下载算法制作概述在STM32H7系列微控制器的开发过程中,外部QSPI Flash存储器常被用于扩展存储空间。然而,MDK开发环境默认并不支持所有型号的QSPI Flash编程,这就需要我们自行制作下载算法。本文将详细介绍如何为STM32H7…

2026/7/20 0:03:51

深入解析TI PRU-ICSS:硬实时子系统架构与工业应用实践

1. 项目概述:深入理解PRU-ICSS的架构价值在嵌入式系统,尤其是工业自动化、电机驱动和实时网络通信领域,我们常常会遇到一个核心矛盾:主处理器(如Arm Cortex-A系列)需要处理复杂的操作系统、网络协议栈和用户…

2026/7/19 16:59:11

3个高效策略:快速掌握Axure中文界面配置

3个高效策略:快速掌握Axure中文界面配置 【免费下载链接】axure-cn Chinese language file for Axure RP. Axure RP 简体中文语言包。支持 Axure 11、10、9。不定期更新。 项目地址: https://gitcode.com/gh_mirrors/ax/axure-cn 还在为Axure RP的英文界面感…