c语言基础笔记21

c语言基础程序——100实例 /根据公示Π/4=1-1/3+1/5-1/7+1/9-1/11+......,计算Π的近似值,当最后一项的绝对值小于0.000001为止。int f=1;//变号用//i是分母,sum是Π/4的值while (fabs(1.0/i)>=1e-6)//当绝对值小于10的-5次方认为为0//累加每项的值f*=-1;//变号i+=2;//分母+2变化printf("Π的近似值为%.5lf",sum*4); 阅读详情

本部分包含编程练习。1.统计二进制中1的个数。2.两位int(32位)整数m和n的二进制表达中,有多少个位(bite)不同。3.输出正整数A和正整数B的最小公倍数。4.输入ni hao 输出 hao ni。

代码:

#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
////1.1方法一
//int findBinary(int a)
//{
//    int count = 0;
//    while (a)
//    {
//        if (a % 2 == 1)
//        {
//            count++;
//        }
//        a = a / 2;
//    }
//    return count;
//}
////1.2方法二
//int findBinary(int a)
//{
//    int count = 0;
//    for (int i = 0;i < 32;i++)
//    {
//        if (((a >> i) & 1) == 1)
//        {
//            count++;
//        }
//    }
//    return count;
//}
//1.3方法三
int FindBinary(int a)
{
    int count = 0;
    while (a)
    {
        a &=(a-1);
        count++;
    }
    return count;
}

////2.1方法一
//int DifBinary(int m, int n)
//{
//    int dif = m ^ n;
//    int count = 0;
//    while (dif)
//    {
//        dif &= (dif - 1);
//        count++;
//    }
//    return count;
//}
//2.2方法二
int DifBinary(int m, int n)
{
    int count = 0;
    for (int i = 0;i < 32;i++)
    {
        if (((m >> i) & 1) != ((n >> i) & 1))
        {
            count++;
        }
    }
    return count;
}

//3.1
size_t commonMut(size_t A,size_t B)
{
    for (int i = 1;;i++)
    {
        if (i % A == 0 && i % B == 0)
        {
            return i;
        }
    }
}

//4.1
void reverse(char* left, char* right)
{
    char temp = 0;
    while (*left < *right)
    {
        temp = *right;
        *right = *left;
        *left = temp;

        left++;
        right--;
    }
}

int main()
{
    //编程练习
    //1.统计二进制中1的个数
    int a1 = 15;
    int binary = FindBinary(a1);
    printf("%d有%d个1\n", a1, binary);

    //2.两位int(32位)整数m和n的二进制表达中,有多少个位(bite)不同
    int m = 1999;
    int n = 2299;
    int difBinary = DifBinary(m,n);
    printf("结果为%d\n", difBinary);

    //3.输出正整数A和正整数B的最小公倍数
    int A = 5;
    int B = 7;
    int mut = commonMut(A, B);
    printf("结果为%d\n", mut);

    //4.输入ni hao 输出 hao ni
    char a4[100] = { 0 };
    get(a4);

    //三部翻转法
    //第一步.字符串整体反转
    int len = strlen(a4);
    reverse(a4, a4 + len - 1);
    //第二步,每个单词逆序
    char* start = a4;
    while (*start)
    {
        char* end = start;
        while (*end != ' ' && *end !='\0')
        {
            end++;
        }
        reverse(a4, end - 1);
        if (*end = ' ')
            start = end + 1;
        else
            start = end;
    }

    printf("%s\n",a4);
}

黑马程序员——C语言基础教程笔记 黑马程序员——C语言基础教程笔记 提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加 例如:第一章 Python 机器学习入门之pandas的使用 文章目录黑马程序员——C语言基础教程笔记前言Day-11.C语言概论1.1 什么是C语言1.1.1 C语言特点1.1.2 学习C语言的理由1.1.3 发展方向1.1.4 C语言中的关键字2.3.Day-21.引入库2.读入数据总结 前言 研三了,作为一枚菜鸡硕,为了找工作,只好重刷C语言。以下笔记是我在“黑马程序员:http://yun. 阅读详情

相关推荐

20-C语言:第21天笔记

本文总结了C语言第21天的学习笔记,重点讲解了预处理指令和文件操作相关内容。预处理部分详细介绍了条件编译的三种语法形式、文件包含机制及其使用场景,并通过案例演示了跨平台代码适配的实现方法。文件I/O部分简要提及了标准I/O操作。笔记还包含了多文件开发的实践示例,展示了如何通过头文件组织代码结构,以及使用条件编译防止头文件重复包含的技巧。这些内容为C语言程序开发中的代码组织、跨平台兼容性处理等实际问题提供了实用解决方案。

2402_84258445的博客 1208

C语言 第八章 函数

第八章 函数 8.1 函数概述 8.2 函数的定义与调用 8.2.1 无参数无返回值的函数 函数的定义 void 函数名(void) { 变量声明部分 执行部分 } 函数的用途 函数的原型声明 void 函数名(void); 或 void 函数名(); 4. 函数的调用 函数名(); ( )中不能有void 5. 函数的返回 可以利用return return(表达式) //有返回值; return 表达式 //有返回值; return //无返回值; 8.2.2 无参数有返回值的函数

suiuko 优快云 1275

【嵌入式八股21】C语言基础知识

volatile 关键字用于指出变量的值是随时可能发生变化的,因此在每次使用该变量时,编译器都会强制从变量的内存地址中重新读取数据,而不是使用保存在寄存器中的缓存值。表示一个指向常量对象的常量指针,即既不可以改变指针本身的值,也不可以改变指针指向的对象的值。是一个包含 10 个元素的数组,每个元素都是一个指向函数的指针,这些函数的返回值为。函数中提供了简单的测试示例,包括链表的建立、插入、查找和删除操作的调用及结果展示。表示指向常量的指针,该指针不能用于改变其所指向的对象的值。

sagima_sdu的博客 1066

【C++】函数的嵌套调用和递归调用

背景:最近一直在学习C++,从中学习到了很多以前没有听过的内容,现在来总结一下。       嵌套调用:       所谓嵌套调用就是在一个函数中调用其他函数的过程叫做函数的嵌套。C++中函数的定义是平行的,除了main()以外,都可以互相调用。函数不可以嵌套定义,但可以嵌套调用。比如函数1调用了函数2,函数2调用了函数3,这便形成了函数的嵌套调用。     例子:求三个数中最大数和最小数的

致力于成为顶尖的架构师 1万+

C语言学习 / 简易21点

游戏规则:玩家电脑各发2张牌,玩家两张牌均为明牌,电脑一明一暗;玩家根据点数大小选择是否继续要牌,当玩家点数为21点时玩家直接获胜,超过21点电脑获胜;当玩家选择不要牌,开始电脑回合,电脑点数大于21点玩家获胜,电脑点数大于等于玩家,电脑获胜。

qq_58086685的博客 6694

21天掌握C语言基础与编程技能

在 C 语言中,类型转换可以分为隐式转换和显式转换。隐式类型转换:编译器自动进行的转换,通常发生在不同类型的表达式中,以及函数参数类型不匹配时。int i = 10;// 这里发生了隐式类型转换,整型 i 被转换为浮点型,然后与 f 相加。显式类型转换:程序员明确指出类型转换的方式,也称为类型铸造(type casting)。它允许程序员强制进行类型转换。// 显式类型转换,将 pi 转换为整数,小数部分被舍去。

weixin_35756373的博客 803

C语言实现基2DIF-FFT算法(桑德·图基快速傅立叶变换)

傅立叶变换能将时域信号转换为由sin函数为基底的频域信号,从而我们可以从信号中提取出频率信息或截断频谱简化信号压缩信息。计算机难以处理连续信号。DFT是一种适用于计算机处理的有限信号时频转换方法。DFT用一句话概括,就是将连续信号(频域也是连续函数)经过时域采样(这样会使信号的频域发生周期延拓,得到周期连续的函数,计算机无法处理),再经过频域采样(这样会使时域信号发生周期延拓,时域周期延拓这一步可...

gebzh 9953

21天精通C语言:基础到实战

本文还有配套的精品资源,点击获取 简介:《21天学通C语言》是一本专为初学者设计的教程,以PDG格式电子版呈现,便于随时查阅。本书深入介绍了C语言的基础知识和核心概念,包括语法结构、指针、内存管理、文件操作等,旨在让读者在短时间内掌握C语言编程,并理解其在系统编程和应用开发中的应用。书中还包含了C语言标准库的使用和调试技巧,为编写高质量代码提供指导。 1. C语言...

weixin_35920379的博客 1398

频域抽取FFT(DIF-FFT)的C语言实现

此处以基2频域抽取FFT为例,讲述频域抽取FFT的原理。假设FFT的长度为N2m,我们将序列xXkn0∑N/2−1​xnWNnk​nN/2∑N−1​xnWNnk​nnN/2Xkn0∑N/2−1​xnWNnk​n0∑N/2−1​xnN/2WNknN/2​由于WNknN/2​WNkn​⋅WNN/2​−WNnk​Xk。

qq_40268672的博客 2504

DIF变换C编程的方法和小结

DIF变换和C编程

【 史上最全】测绘、遥感RS、地信GIS国家级比赛竞赛整理

目录Esri Esri

weixin_43910227的博客 9153

C语言求两个正整数的最小公倍数(简单明了)

正整数A和正整数B的最小公倍数是指能被A和B整除的最小的正整数值,废话少说直接上代码。 方法一:

weixin_45729947的博客 7173

MATLAB演示元胞自动机算法

一、元胞自动机理论 元胞自动机与格子理论是一个非常好的模型,许多复杂的问题都可以通过它来建立模型,下面就简要介绍一下。 元胞自动机 实质上是定义在一个具有离散、有限状态的元胞组成的元胞空间上,并按照一定的局部规则,在离散的时间维度上演化的动力学系统。 元胞 元胞又可称为单元、细胞,是元胞自动机的最基本的组成部分。 元胞具有以下特点: 元胞自动机最基本的单元。 元胞有记忆贮存状态的功...

frange zone 2万+

C语言基础学习笔记

此博文是整理本人初入编程世界学习C语言的经历,零基础想学习C语言的可参考本文的学习方式,内容包含视频+笔记+思维导图总结,根据视频资源编写自己见解的学习笔记,再从笔记中提炼总结思维导图。笔记看得云里雾里是正常的,一是需要配合视频,二是因为写笔记时是想到哪里记到哪里,每个人侧重点不同,笔记仅供参考。

weixin_45068267的博客 2129

ESP32驱动GC9A01圆形屏实战:Arduino平台LVGL移植与图像显示优化

本文详细介绍了在Arduino平台上使用ESP32驱动GC9A01圆形屏的实战指南,包括硬件连接、LVGL移植与图像显示优化。通过SPI配置、LVGL库安装和双缓冲机制等技巧,帮助开发者快速实现高效显示效果,适用于智能家居控制面板等应用场景。

weixin_29182481的博客 735

英飞凌TC377的Flash管理、UCB配置与HSM安全机制解析

本文深入解析了英飞凌TC377微控制器的Flash存储结构、UCB配置机制与HSM安全模块。详细阐述了带Cache与不带Cache的PFlash地址访问差异、利用SOTA与AB Swap实现无感OTA更新的原理,以及如何通过UCB安全配置启动流程与写保护。重点剖析了HSM硬件安全模块在密钥管理、安全启动与安全OTA中的核心作用,为开发高可靠性嵌入式系统提供实战指南。

weixin_29170327的博客 523

C语言基础笔记(全)

printf函数可以输出各种类型的数据,包括整型、浮点型、字符型、字符串型等,实际原理是printf函数将这些类型的数据格式化为字符串后,放入标准缓冲区,然后将结果显示到屏幕上printf函数根据format给出的格式打印输出到stdout(标准输出)和其他参数中代码格式%c字符%d带符号整数%f浮点数%s一串字符%u无符号整数%x无符号十六进制数,用小写字母%X无符号十六进制数,用大写字母%p一个指针%%一个'%'符号。

señoritaw的博客 1万+

dify离线部署

以bge-m3为例,本地部署bge-m3首先在一台能连网的linux服务器上(部署有ollama)创建想要保存模型的文件夹编辑ollama.service,配置ollama模型的保存路径添加模型存储地址将models目录设置属主,必须做,否则ollama无法启动重新加载配置文件并重启ollama测试ollama 运行是否正常最后拉取 bge-m3可在/opt/LLMModels/bge_m3/models目录下看到拉取得模型使用tar命令压缩文件夹。

weixin_42538734的博客 3069

C语言基础100例子

C语言基础实例

Cherry的博客 1万+

已解决“TimeouEror [WinEror 10060由于连接方在一段时间后没有正确答复 或连接的主机没有反应,连接尝试失败“,亲测有效!!!

已解决"TimeouEror [WinEror 10060由于连接方在一段时间后没有正确答复 或连接的主机没有反应,连接尝试失败",亲测有效!!!

wbajsjhhhhh的博客 1万+

【软件测试】- 公有云、私有云、混合云简介以及如何在公有云与私有云上分别搭建测试环境

公有云、私有云以及混合云是目前云计算领域的三种主要模式。它们之间的区别主要在于部署方式、数据访问和管理控制的不同。在阿里云或腾讯云上使用 Kubernetes 和 Docker 搭建测试环境可以提供高度的可伸缩性和灵活性。这样的环境非常适合于需要在多种配置和条件下进行测试的复杂应用。通过云服务提供的工具和服务,可以轻松管理和监控整个测试过程。在云服务上搭建测试环境涉及选择合适的云提供商、配置云资源、安装和设置所需软件等步骤。### 1. 选择云服务提供商。

weixin_46453070的博客 2342

C语言基础篇

一级目录 二级目录 三级目录

写写随便! 3092

基于瑞芯微RK3562 四核 ARM Cortex-A53 + 单核 ARM Cortex-M0——Linux应用开发手册

本文主要介绍TL3562-MiniEVM评估板的AMP(Asymmetric Multi-processing)开发案例,介绍基于Linux + RT-Thread(RTOS)、Baremetal的AMP案例的开发环境搭建。

创龙,嵌入式一体化解决方案商 411

C语言基础:第02天笔记

自动类型转换是编译器根据上下文自动进行的类型转换,遵循一定的规则。强制类型转换需要程序员明确指定目标类型,使用(type)语法进行转换。使用强制类型转换时需要谨慎,以避免数据丢失和精度损失。理解并正确使用这两种类型转换是编写健壮C语言程序的基础。

bsbsjsns的博客 1058

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

OV9734 DATASHEET,完整规格书

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

oracle 21c新特性简析

21c简介 因为20年疫情的影响,20c并未发布线下版本,只在云上发布了版本;21年线下发布了21c, Oracle 21c 其实就相当于 Oracle 20c,因为 20c从未进入公众可用的版本发布。在官方的版本计划中,20c 已经被移出;且官方指出,23c将是长期稳定的版本,即23c可以取代19c,作为下一个稳定版本使用。而21c和22c只是过渡版本,学习了解其新特性即可。 安装了oracle 21c的单机版,以下是我对21c简单测试之后的发现: 1、软件安装方式 跟19c的安装一样,将

Du.的博客 1万+

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

Shell 脚本一键安装,Oracle 21C 单机版抢先体验

Shell 脚本一键安装,Oracle 21C Single 抢先体验!!!

LuciferLiu_DBA 6315

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

上一篇: c语言基础笔记20
下一篇: C语言进阶学习01
Ohrkaninchen
博客等级 码龄5年 18粉丝 47原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Ohrkaninchen

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值