当前位置: 首页 > news >正文

初阶c语言(循环语句习题,完结)

前言:

c语言为b站鹏哥,嗯对应视频37集

昨天做的c语言,今天在来做一遍,发现做错了

今天改了平均值的计算,

就是说最大值加上最小值,如果说这个数值非常大的话,两个值加上会超过int类型的最大值,从而导致数值的重新计算,导致结果不稳定,所以换一种计算方法

第二题,折半查找法

环境介绍,就是dev c++软件运行编译

就是说最大值减去最小值,然后中间有个差值,将他分成一半给最小值,那两个就都是平均值了

#include <stdio.h>
int main()
{int arr[] = {1,2,3,4,5,6,7,8,9,10};int left =0;int pj = sizeof(arr)/sizeof(arr[0]);  //就是那个sizeof计算字符串整型都可以用,全部元素都计算了//定义一个输入int k =6; int right=pj-1;for(left=0; left<=right; left++){int mid =left + (right-left)/2;if(arr[mid]<k){left = mid +1;}if(arr[mid] > k){right = mid - 1;}else{printf("找到了,下标为:%d\n", mid);}}return 0;
}

嗯,就是正确的下标应该是5,但是打印的下标为4,。。。

我知道了

我用的for循环,而且我每次循环,都将left加1了,导致就是计算结果不准,至于为什么等于4我就没有深究了,

所以这个还是用for循环比较好,当然我把第三个表达式删掉了,也可以得到正确的值,就这样

    for(left=0; left<=right; )

这里也是会造成死循环,因为把left++去掉了,left和right不变了

修改的代码

#include <stdio.h>
int main()
{int arr[] = {1,2,3,4,5,6,7,8,9,10};int left =0;int pj = sizeof(arr)/sizeof(arr[0]);  //就是那个sizeof计算字符串整型都可以用,全部元素都计算了//定义一个输入int k =6; int right=pj-1;while(left <= right){int mid =left + (right-left)/2;if(arr[mid]<k){left = mid +1;}if(arr[mid] > k){right = mid - 1;}else{printf("找到了,下标为:%d\n", mid);break;}}return 0;
}

为啥这个要加break,不然会造成死循环,因为这个while循环,找到了之后并不会变化里面的right和left值,所以while循环的表达式永远为真,就造成循环

第三题:编写代码,演示多个字符从两端移动,向中间汇聚

strlen函数,这个是统计  \0  之前的元素,适合用于计算字符串的长度

sizeof函数,统计所有元素,包括\0

strlen,如果需要使用这个函数,需要加上头文件,就是这个,#include <string.h>

sleep函数,需要使用#include <windows.h>,这个是头文件

systemctl函数,包含 #include <stdlib.h>,执行系统命令(dev c++好像不用包含额外头文件)

源代码

//编写代码,演示多个字符从两端移动,向中间汇聚//welcome to bit!!!!
//##################
//we##############!!
//...........
//welcome to bit!!!!int main()
{char arr1[] = "welcome to bit!!!!";char arr2[] = "##################";int right = strlen(arr2) - 1;  //strlen比较好算字符串的长度,因为不计算/0在里面,字符串数组里默认有\0. int left =0;while(left < right){arr2[left] = arr1[left];arr2[right] = arr1[right];left ++;right --;Sleep(1000); system("cls");printf("%s\n", arr2);}}

编写代码实现,模拟用户登录情景,并且只能登录三次。
如果密码正确则提示登录成功,(只允许输入三次密码如果三次均输入错误,则退出程序。)

字符串比较不能直接这样写

    if(password == "abcdef")

嗯.....别问,问就是会报错,然后就是要利用函数

strcmp函数,用于对比字符串是否一致,一致返回0

代码

int main()
{int i = 0;char password[100] = {0}; //这里需要指派空间大一点while(i < 3){printf("请输入密码:");scanf("%s", password);	if (strcmp(password, "abcdef") == 0){printf("登录成功\n");break;}else{printf("登录失败,请重试\n");}i++;} return 0;} 

数组那里的空间需要给大一点,嗯,不指名空间大小的话,就只能存一次

然后我有问题的是

为啥需要将输入函数放到循环里面,放到循环外面就不起作用了,也就是程序不能正常运行

相关文章:

初阶c语言(循环语句习题,完结)

前言&#xff1a; c语言为b站鹏哥&#xff0c;嗯对应视频37集 昨天做的c语言&#xff0c;今天在来做一遍&#xff0c;发现做错了 今天改了平均值的计算&#xff0c; 就是说最大值加上最小值&#xff0c;如果说这个数值非常大的话&#xff0c;两个值加上会超过int类型的最大…...

本地Deepseek-r1:7b模型集成到Google网页中对话

本地Deepseek-r1:7b网页对话 基于上一篇本地部署的Deepseek-r1:7b&#xff0c;使用黑窗口对话不方便&#xff0c;现在将本地模型通过插件集成到Google浏览器中 安装Google插件 在Chrome应用商店中搜索page assis 直接添加至Chrome 修改一下语言 RAG设置本地运行的模型&#…...

SSM课设-学生选课系统

【课设者】SSM课设-学生选课系统 分为 管理员 和 老师 和 学生端 技术栈 前端: HtmlCssJavaScriptAjax 后端: Spring、Spring MVC、MyBatis、MySQL、JSP 学生端 --选课 选课 搜索 --查看选课结果 --退选 --查看已修课程 --管理个人信息 老师端 --添加教学课程 添加 …...

Windows中使用Docker安装Anythingllm,基于deepseek构建自己的本地知识库问答大模型,可局域网内多用户访问、离线运行

文章目录 Windows中使用Docker安装Anythingllm&#xff0c;基于deepseek构建自己的知识库问答大模型1. 安装 Docker Desktop2. 使用Docker拉取Anythingllm镜像2. 设置 STORAGE_LOCATION 路径3. 创建存储目录和 .env 文件.env 文件的作用关键配置项 4. 运行 Docker 命令docker r…...

AI前端开发技能提升与ScriptEcho:拥抱AI时代的前端开发新范式

随着人工智能技术的飞速发展&#xff0c;AI前端开发岗位对技能的要求也水涨船高。越来越多的企业需要具备AI相关知识和高级前端开发能力的工程师&#xff0c;这使得传统的前端开发模式面临着巨大的挑战。如何提升开发效率&#xff0c;降低人力成本&#xff0c;成为了摆在所有前…...

【Redis存在线程安全问题吗?】

Redis存在线程安全问题吗? Redis的线程安全性概述Redis线程安全性的挑战Redis线程安全性的示例示例1:客户端并发访问导致的问题示例2:分布式环境下的问题解决Redis线程安全问题的建议总结Redis的线程安全性概述 Redis本身是一个单线程的键值存储数据库,它使用单线程模型来…...

碎碎念,再聊HyperRAM(CrosslinkNX FPGA+HyperRAM)

作者&#xff1a;Hello&#xff0c;Panda HyperRAM其实熊猫君很久以前在用了&#xff0c;几年前也分享了一篇实现HyperRAM控制器的博文&#xff08;博文《Lattice CrossLinkNx LIFCL-40应用连载7-使用HyperRAM存储器》。近期在后台收到好几位朋友咨询一些关于HyperRAM的问题&a…...

左移架构 -- 从攒批,湖仓到使用数据流的实时数据产品

编辑导读: 这篇文章翻译自 Kai Waehner的 《The Shift Left Architecture – From Batch and Lakehouse to Real-Time Data Products with Data Streaming》。文章通过数据产品的概念引出了如何创建可重复使用的数据产品使企业能够从当前和未来的数据中获得价值。基于构建数据产…...

多模态识别和自然语言处理有什么区别

在科技飞速发展的当下&#xff0c;人工智能&#xff08;AI&#xff09;已经渗透到我们生活的方方面面。不知道大家有没有这样的经历&#xff1a;早上醒来&#xff0c;对着智能音箱说 “播放今天的新闻”&#xff0c;音箱不仅能识别你的语音&#xff0c;还能在播放新闻的同时&am…...

进阶——第十六蓝桥杯嵌入式熟练度练习(串口的小BUG补充-字符接受不完整和字符接受错误)

1.解决接受不完整问题 假如没接受完成&#xff0c;执行函数&#xff0c;就可能会把count直接清零&#xff0c;就会重新接受\ while (1){if(rx_count!0){uint8_t temprx_count;HAL_Delay(1);if(temprx_count)uart_proc(); }key_proc();rxclear_proc();/* USER CODE END WHILE…...

数据结构-链式二叉树

文章目录 一、链式二叉树1.1 链式二叉树的创建1.2 根、左子树、右子树1.3 二叉树的前中后序遍历1.3.1前(先)序遍历1.3.2中序遍历1.3.3后序遍历 1.4 二叉树的节点个数1.5 二叉树的叶子结点个数1.6 第K层节点个数1.7 二叉树的高度1.8 查找指定的值(val)1.9 二叉树的销毁 二、层序…...

【git-hub项目:YOLOs-CPP】本地实现01:项目构建

目录 写在前面 项目介绍 最新发布说明 Segmentation示例 功能特点 依赖项 安装 克隆代码仓库 配置 构建项目 写在前面 前面刚刚实现的系列文章: 【Windows/C++/yolo开发部署01】 【Windows/C++/yolo开发部署02】 【Windows/C++/yolo开发部署03】 【Windows/C++/yolo…...

250213-RHEL8.8-外接SSD固态硬盘

It seems that the exfat-utils package is still unavailable, even after enabling the RPM Fusion repository. This could happen if the repository metadata hasn’t been updated or if the package isn’t directly available in the RPM Fusion repository for RHEL 8…...

如何本地部署DeepSeek?

DeepSeek&#xff1a;智能时代的得力助手 在人工智能技术飞速发展的今天&#xff0c;DeepSeek 作为一款由国内顶尖团队研发的 AI 工具&#xff0c;凭借其卓越的性能和丰富的功能&#xff0c;逐渐在众多同类产品中脱颖而出&#xff0c;成为众多用户在工作和学习中的得力助手。 …...

leetcode:627. 变更性别(SQL解法)

难度&#xff1a;简单 SQL Schema > Pandas Schema > Salary 表&#xff1a; ----------------------- | Column Name | Type | ----------------------- | id | int | | name | varchar | | sex | ENUM | | salary | int …...

51单片机(国信长天)矩阵键盘的基本操作

在CT107D单片机综合训练平台上&#xff0c;首先将J5处的跳帽接到1~2引脚&#xff0c;使按键S4~S19按键组成4X4的矩阵键盘。在扫描按键的过程中&#xff0c;发现有按键触发信号后(不做去抖动)&#xff0c;待按键松开后&#xff0c;在数码管的第一位显示相应的数字:从左至右&…...

封装一个sqlite3动态库

作者&#xff1a;小蜗牛向前冲 名言&#xff1a;我可以接受失败&#xff0c;但我不能接受放弃 如果觉的博主的文章还不错的话&#xff0c;还请点赞&#xff0c;收藏&#xff0c;关注&#x1f440;支持博主。如果发现有问题的地方欢迎❀大家在评论区指正 目录 一、项目案例 二…...

Transformer以及BERT阅读参考博文

Transformer以及BERT阅读参考博文 Transformer学习&#xff1a; 已有博主的讲解特别好了&#xff1a; 李沐&#xff1a;Transformer论文逐段精读【论文精读】_哔哩哔哩_bilibili知乎&#xff1a;Transformer模型详解&#xff08;图解最完整版&#xff09; - 知乎 个人杂想&…...

AI学习记录 - 最简单的专家模型 MOE

代码 import torch import torch.nn as nn import torch.nn.functional as F from typing import Tupleclass BasicExpert(nn.Module):# 一个 Expert 可以是一个最简单的&#xff0c; linear 层即可# 也可以是 MLP 层# 也可以是 更复杂的 MLP 层&#xff08;active function 设…...

急停信号的含义

前言&#xff1a; 大家好&#xff0c;我是上位机马工&#xff0c;硕士毕业4年年入40万&#xff0c;目前在一家自动化公司担任软件经理&#xff0c;从事C#上位机软件开发8年以上&#xff01;我们在开发C#的运动控制程序的时候&#xff0c;一个必要的步骤就是确认设备按钮的急停…...

2026年AGI突围:自主智能体驱动,数字生命从架构落地到自我迭代全解析

2026年&#xff0c;AI行业正式告别“生成式狂欢”&#xff0c;迈入“自主智能体&#xff08;AI Agent&#xff09;规模化落地元年”。Gartner将自主智能体列为年度十大战略技术趋势之首&#xff0c;各大科技厂商纷纷布局&#xff0c;从实验室概念到产业应用&#xff0c;自主智能…...

ANSYS Workbench网格进阶:巧用‘Face Meshing’与‘Sweep’扫掠,让你的轴承座仿真既快又准

ANSYS Workbench网格进阶&#xff1a;巧用‘Face Meshing’与‘Sweep’扫掠提升轴承座仿真效率 轴承座作为机械传动系统中的关键部件&#xff0c;其应力分布与变形分析的准确性直接影响设备可靠性评估。传统四面体网格虽能快速生成&#xff0c;但在应力集中区域往往需要极高密度…...

5分钟快速部署WebRTC Camera到Home Assistant:终极低延迟监控方案

5分钟快速部署WebRTC Camera到Home Assistant&#xff1a;终极低延迟监控方案 【免费下载链接】WebRTC Home Assistant custom component for real-time viewing of almost any camera stream using WebRTC and other technologies. 项目地址: https://gitcode.com/gh_mirror…...

潜变量模型完全指南:从高斯混合模型到变分自编码器

潜变量模型完全指南&#xff1a;从高斯混合模型到变分自编码器 【免费下载链接】bayesian-machine-learning Notebooks about Bayesian methods for machine learning 项目地址: https://gitcode.com/gh_mirrors/ba/bayesian-machine-learning 潜变量模型是机器学习领域…...

AI技能学习路径全解析:从数学基础到RAG实战与项目构建

1. 项目概述与核心价值最近在GitHub上看到一个挺有意思的项目&#xff0c;叫“HieuNghi-AI-Skills”。光看这个名字&#xff0c;你可能会有点摸不着头脑&#xff0c;这到底是做什么的&#xff1f;是教AI新技能&#xff0c;还是整理AI工具的使用技巧&#xff1f;点进去之后&…...

PyTorch分类网络实战:从VGG16、MobileNetV2到ResNet50的架构解析与代码实现

1. 分类网络入门&#xff1a;为什么选择PyTorch&#xff1f; 刚接触深度学习时&#xff0c;我也曾被TensorFlow和PyTorch的选择困扰过。直到第一次用PyTorch实现了一个简单的图像分类器&#xff0c;才真正体会到它的魅力。PyTorch就像乐高积木&#xff0c;用动态计算图的方式让…...

Linux桌面美化:pixie-cursors鼠标指针主题安装与定制指南

1. 项目概述&#xff1a;一个为Linux桌面注入灵魂的鼠标指针主题如果你和我一样&#xff0c;是一个长期在Linux桌面环境下工作的开发者或爱好者&#xff0c;那么对于系统美化的追求&#xff0c;可能从未停止过。从窗口管理器到终端配色&#xff0c;从图标包到壁纸&#xff0c;每…...

SINAMICS V90伺服驱动器故障代码大全

SINAMICS V90伺服驱动器在运行过程中可能出现故障&#xff0c;导致设备停机。用户可通过BOP面板或调试软件查看故障代码&#xff0c;并根据以下信息判断故障原因及处理方法。序号报警号信息故障信息可能原因处理方法1F1000内部软件错误出现了一个内部软件错误。分析故障缓冲器为…...

SpringCloud微服务里,用Zuul网关聚合Swagger文档的完整配置流程(含踩坑记录)

SpringCloud微服务架构下Zuul网关聚合Swagger文档的实战指南 在微服务架构中&#xff0c;API文档的管理一直是个令人头疼的问题。想象一下&#xff0c;当你的系统由十几个甚至几十个微服务组成时&#xff0c;开发人员要记住每个服务的接口地址和文档路径几乎是不可能的任务。更…...

基于DGX OpenClaw Stack构建本地AI智能体:从硬件调优到生产部署

1. 项目概述&#xff1a;一站式本地AI智能体栈如果你和我一样&#xff0c;对把大语言模型&#xff08;LLM&#xff09;真正“养”在自己的硬件上&#xff0c;构建一个功能完整、数据私有的智能助手有执念&#xff0c;那么你很可能已经踩过不少坑了。从选模型、搭服务、配工具链…...