C语言之练习题合集
💗 💗 博客:小怡同学
💗 💗 个人简介:编程小萌新
💗 💗 如果博客对大家有用的话,请点赞关注再收藏 🌞
文章目录
- leetcode 题号:728. 自除数
- leetcode 题号:238. 除自身以外数组的乘积
- leetcode 题号:448. 找到所有数组中消失的数字
- leetcode 题号:485. 最大连续 1 的个数
- 牛客网题号: HJ37 统计每个月兔子的总数
- 牛客网题号: ZJ16 数列的和
- 牛客网题号: HJ56 完全数计算
- 牛客网题号: HJ11 数字颠倒
- 牛客网题号: HJ31 单词倒排
- 牛客网题号: NC61 两数之和
- 牛客网题号: KS33 寻找奇数
- 牛客网题号: HJ46 截取字符串
leetcode 题号:728. 自除数
自除数 是指可以被它包含的每一位数整除的数。
例如,128 是一个 自除数 ,因为 128 % 1 == 0,128 % 2 == 0,128 % 8 == 0。
自除数 不允许包含 0 。
给定两个整数 left 和 right ,返回一个列表,列表的元素是范围 [left, right] 内所有的 自除数
int* selfDividingNumbers(int left, int right, int* returnSize){
int* ret = (int*)malloc(sizeof(int) * 1000);
*returnSize = 0;
for(int i = left ; i <= right ; i++)
{int num =i;while(num){int reminder = num % 10;//if(reminder == 0 || (i % reminder) != 0)//自除数不可以为0,且除以自己的每一位数等于0break;//个人理解 使用break这种跳出循环的语句,可以判断是遍历一遍,还是突然跳出num /= 10;}if(num == 0)ret[(*returnSize)++] = i ;
}
return ret;
}
leetcode 题号:238. 除自身以外数组的乘积
给你一个整数数组 nums,返回 数组 answer ,其中 answer[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积 。
题目数据 保证 数组 nums之中任意元素的全部前缀元素和后缀的乘积都在 32 位 整数范围内
int* productExceptSelf(int* nums, int numsSize, int* returnSize){
int* ret =(int*)malloc(sizeof(int) * numsSize);
*returnSize = numsSize;
int left =1;
int right =1;
for(int i = 0; i< numsSize ;i++)
{ret[i] = left;// ret[i]储存 i个之前的乘积共(i-1)乘积left *= nums[i];//为下次ret[i+1] 做准备
}
for(int i = numsSize-1 ;i >= 0 ;i--)
{ret[i] *= right; //同理right *= nums[i];
}
return ret;
}
leetcode 题号:448. 找到所有数组中消失的数字
给你一个含 n 个整数的数组 nums ,其中 nums[i] 在区间 [1, n] 内。请你找出所有在 [1, n] 范围内但没有出现在 nums 中的数字,并以数组的形式返回结果
int* findDisappearedNumbers(int* nums, int numsSize, int* returnSize){for(int i = 0 ; i < numsSize ; i++)
{if(nums[abs(nums[i]) - 1] >0)//因为输入1——n的数字,所以下标为0——n-1 ,找到下标对应的元素并乘以-1,遍历一遍之后,还是正数的元素,则是缺少的元素nums[abs(nums[i]) - 1] = -(nums[abs(nums[i]) - 1]);
}
int* ret = (int*)malloc(sizeof(int) * numsSize);
*returnSize = 0;
for(int i = 0 ; i < numsSize ; i++)
{if(nums[i] > 0){ret[*returnSize] = i+1;//因为刚开始数组每个元素-1,并成为下标,找到缺少的下标之后,需要+1*returnSize +=1;}
}
return ret;
}
leetcode 题号:485. 最大连续 1 的个数
给定一个二进制数组 nums , 计算其中最大连续 1 的个数。
int findMaxConsecutiveOnes(int* nums, int numsSize){int count = 0;
int max = 0;
for(i
# 牛客网题号: HJ31 单词倒排
对字符串中的所有单词进行倒排。说明:1、构成单词的字符只有26个大写或小写英文字母;2、非构成单词的字符均视为单词间隔符;3、要求倒排后的单词间隔符以一个空格表示;如果原字符串中相邻单词间有多个间隔符时,倒排转换后也只允许出现一个空格间隔符;4、每个单词最长20个字母;
```c
#include <stdio.h>int main() {char str [10001] ={0};int row = 0 ;while(gets(str) > 0){char* ptr = str;char* word[10001]= {NULL};while(*ptr != '\0')//思路开始首字母在合格范围内,则加入指针数组,并循环检测,并'\0'来结尾{if((*ptr >= 'a' && *ptr <= 'z') ||( *ptr >= 'A' && *ptr <= 'Z' )){ word[row++] = ptr;、、while ((*ptr >= 'a' && *ptr <= 'z') ||( *ptr >= 'A' && *ptr <= 'Z' )){ptr++;}}*ptr = '\0';ptr++;}int i =0;for( i = row -1; i >= 0 ;i--){printf("%s ",word[i]);}printf("\n");}return 0;
}
牛客网题号: HJ37 统计每个月兔子的总数
有一种兔子,从出生后第3个月起每个月都生一只兔子,小兔子长到第三个月后每个月又生一只兔子。
例子:假设一只兔子第3个月出生,那么它第5个月开始会每个月生一只兔子。
一月的时候有一只兔子,假如兔子都不死,问第n个月的兔子总数为多少?
方法一(递归实现)
#include <stdio.h>
int Fib(int a)
{if(a <= 2)return 1;elsereturn Fib(a-1)+Fib(a-2);
}int main() {int count =0;scanf("%d",&count);printf("%d" , Fib(count));return 0;
}方法二
#include <stdio.h>
int main() {int n =0;scanf("%d" ,&n);int a = 1;int b = 1;int c = 2;for(int i = 3 ; i <= n ; i++){c = a + b; a = b;b = c;}printf("%d",c);return 0;
}
牛客网题号: ZJ16 数列的和
数列的定义如下:数列的第一项为n,以后各项为前一项的平方根,求数列的前m项的和
#include <stdio.h>
#include <math.h>
int main() {double num = 0;int a = 0;while(~scanf("%lf %ld",&num,&a)){double sum = 0.0;for(int i = 0 ; i < a ; i++){sum += num;num = sqrt(num);}printf("%.2lf\n" ,sum);}return 0;
}
牛客网题号: HJ56 完全数计算
完全数(Perfect number),又称完美数或完备数,是一些特殊的自然数。
它所有的真因子(即除了自身以外的约数)的和(即因子函数),恰好等于它本身。
例如:28,它有约数1、2、4、7、14、28,除去它本身28外,其余5个数相加,1+2+4+7+14=28。
输入n,请输出n以内(含n)完全数的个数。
#include <stdio.h>
#include <math.h>
int is_perfect_number(int n)
{int sum = 1;for(int i = 2 ; i <= sqrt(n) ;i++){if(n % i == 0){sum += i;if(i != sqrt(n))sum += n/i; }}if(sum == n)return 1;return 0;
}
int main() {int count = 0;int a = 0;scanf("%d",&a); for(int i = 2 ; i <= a ;i++){if(is_perfect_number(i) == 1)count++#include <stdio.h>
#include <string.h>
int main() {int n = 0;while (scanf("%d", &n) != EOF) { if(n == 0){printf("%d" ,n % 10);continue;}while(n){int tmp = (n%10) ;printf("%d",tmp);n /= 10;}}return 0;
}}printf("%d\n",count);return 0;
}
牛客网题号: HJ11 数字颠倒
输入一个整数,将这个整数以字符串的形式逆序输出
程序不考虑负数的情况,若数字含有0,则逆序形式也含有0,如输入为100,则输出为001
#include <stdio.h>
#include <string.h>
int main() {int n = 0;while (scanf("%d", &n) != EOF) { if(n == 0){printf("%d" ,n % 10);continue;}while(n){int tmp = (n%10) ;printf("%d",tmp);n /= 10;}}return 0;
}
牛客网题号: HJ31 单词倒排
对字符串中的所有单词进行倒排。
说明:
1、构成单词的字符只有26个大写或小写英文字母;
2、非构成单词的字符均视为单词间隔符;
3、要求倒排后的单词间隔符以一个空格表示;如果原字符串中相邻单词间有多个间隔符时,倒排转换后也只允许出现一个空格间隔符;
4、每个单词最长20个字母
#include <stdio.h>int main() {char str [10001] ={0};int row = 0 ;while(gets(str) > 0){char* ptr = str;char* word[10001]= {NULL};while(*ptr != '\0'){if((*ptr >= 'a' && *ptr <= 'z') ||( *ptr >= 'A' && *ptr <= 'Z' )){ word[row++] = ptr;ptr++;while ((*ptr >= 'a' && *ptr <= 'z') ||( *ptr >= 'A' && *ptr <= 'Z' )){ptr++;}}*ptr = '\0';ptr++;}int i =0;for( i = row -1; i >= 0 ;i--){printf("%s ",word[i]);}printf("\n");}return 0;
}
牛客网题号: NC61 两数之和
给出一个整型数组 numbers 和一个目标值 target,请在数组中找出两个加起来等于目标值的数的下标,返回的下标按升序排列。
int* twoSum(int* numbers, int numbersLen, int target, int* returnSize ) {int* ret = (int*)calloc(2,sizeof(int));*returnSize = 2;for(int i = 0 ; i < numbersLen ; i++){ if(numbers[i] > target + 10)continue;for(int j = i + 1 ; j < numbersLen ;j++){if((numbers[i] + numbers[j]) == target){ret[0] = i + 1;ret[1] = j + 1;return ret; }}}*returnSize = 0;return NULL;
}
牛客网题号: KS33 寻找奇数
现在有一个长度为 n 的正整数序列,其中只有一种数值出现了奇数次,其他数值均出现偶数次,请你找出那个出现奇数次的数值。
#include <stdio.h>int main() {int n = 0;int tmp = 0;int num = 0;scanf("%d",&n);for(int i = 0 ; i < n ; i++){scanf("%d",&tmp);num ^= tmp;}printf("%d\n",num);return 0;
}
牛客网题号: HJ46 截取字符串
输入一个字符串和一个整数 k ,截取字符串的前k个字符并输出
#include <stdio.h>int main() {char str[100] ={0};int a =0;scanf("%s %d",str,&a);str[a] ='\0';printf("%s",str);return 0;
}
相关文章:
C语言之练习题合集
💗 💗 博客:小怡同学 💗 💗 个人简介:编程小萌新 💗 💗 如果博客对大家有用的话,请点赞关注再收藏 🌞 文章目录leetcode 题号:728. 自除数leetcode 题号:238.…...
sublimeText3新建文件自动添加注释头
参考: https://github.com/shiyanhui/FileHeader/blob/master/README.rst https://packagecontrol.io/packages/FileHeader https://github.com/shiyanhui/FileHeader fileheader:https://codeload.github.com/shiyanhui/FileHeader/zip/refs/heads/m…...
AndroidStudio打包HBuilderX的H5+项目为安卓App【一次过,无任何异常报错】
目录 1.查看HBuilderX的版本号 2.下载Dcloud上对应的安卓SDK 3.下载完安卓SDK后,我们解压它,注意不要放在任何有中文组成的文件夹中【是否有中文决定于你鼠标单击上面路径后,第一张图还没鼠标单击,第二张已鼠标单击,…...
【Linux】进程概念
目录 一、基本概念 二、查看进程 三、系统调用获取进程标示符 1、获取自己的PID 2、获取父进程的PID 四、创建进程 1、初识fork 2、使用fork的方式 五、进程状态 1、阻塞 2、挂起 3、R状态 4、S状态 5、D状态 6、T状态 6.1、kill指令 6.2、暂停进程与继续进程 …...
使用pyinstaller库打包exe时显示KeyError怎么办
PyInstaller是一个Python库,用于将Python应用程序转换为独立的可执行文件(executable)文件,支持多平台。它可以将Python解释器、依赖的库和脚本打包成一个单独的可执行文件,从而使应用程序可以独立运行,而无…...
k8s新增节点机器,无法拉取和推送镜像的解决方案
1、首先检查配置,查看镜像仓库是否已授权,若无授权,则进行授权。 命令:cat /etc/systemd/system/docker.service.d/docker-options.conf内容如果有这样一句就是已经授权,如果没有,就需要把这句加进去&…...
测试报告踩坑的点
测试报告作为测试人员的核心输出项,是体现自己工作价值的重要承载工具,需要我们认真对待,所以我们要重视测试报告的输出,那么在编写测试报告的时候,我们有哪些点需要注意的呢? 01 不要乱用模板 很多测试新人在编写测试…...
【Java】创建多线程的四种方式
一、方式1:继承Thread类 步骤: 创建一个继承于Thread类的子类重写Thread类的run()方法 ----> 此线程执行的操作声明在方法体中创建当前Thread子类的对象通过实例对象调用start()方法,启动线程 ----> Java虚拟机会调用run()方法 注意…...
【数据结构】队列的接口实现(附图解和源码)
队列的接口实现(附图解和源码) 文章目录队列的接口实现(附图解和源码)前言一、定义结构体二、接口实现(附图解源码)1.初始化队列2.销毁队列3.队尾入队列4.判断队列是否为空5.队头出队列6.获取队列头部元素7…...
日本知名动画公司东映动画加入 The Sandbox 元宇宙
与 Minto 合作将东映动画的 IP 呈现在元宇宙。 The Sandbox 很荣幸能与东映动画合作,与 Minto 携手在 The Sandbox 元宇宙中创建基于东映动画 IP 的相关体验。 作为日本动画的先驱,东映动画制作了日本最大和世界领先的动画作品,包括《龙珠》、…...
QuickHMI Hawk R3 Crack
基于网络的 SCADA / HMI 系统 QuickHMI Hawk R3 QuickHMI是一个 100% 基于网络的SCADA/HMI 系统。 得益于HTML5、SVG和Javascript等现代网络技术,可视化可以在任何当前浏览器和设备中显示。作为浏览器的替代品,可以使用“独立查看器”和移动应用程序。 Q…...
【C语言】寻找隐藏字母游戏
编程实现一个游戏程序,会将连续三个字母中的一个隐去,由玩家填写隐去的那个字母,如屏幕上显示A ? C,则玩家需要输入B;屏幕上显示?B C,则玩家需要输入A。记录玩家完成20次游戏的时间以及正确率。…...
【C++】list 相关接口的模拟实现
list 模拟实现回顾准备构造析构函数的构造构造方法析构方法赋值运算符重载容量相关接口元素获取元素修改相关接口push 、popinserterase清空交换迭代器 **(重点)迭代器基本概念迭代器模拟实现回顾 在上一篇博客中我们大致了解了 list 相关接口的使用方法…...
快速找到外贸客户的9种方法(建议收藏)
所有外贸企业想要做好外贸出口的头等大事,就是要快速的找到优质的外贸客户和订单,没有订单的达成,所有的努力都是图劳,还有可能会陷入一种虚假的繁荣,每天都很忙,但是没有结果。今天,小编就来分…...
TCP状态转换
欢迎关注博主 Mindtechnist 或加入【Linux C/C/Python社区】一起探讨和分享Linux C/C/Python/Shell编程、机器人技术、机器学习、机器视觉、嵌入式AI相关领域的知识和技术。 TCP状态转换专栏:《Linux从小白到大神》《网络编程》 TCP状态转换示意图如下 针对上面的示…...
3500年里,印度被11个文明征服
转自:3500年里,印度被11个文明征服,如今看似统一,实际上却是缝合怪 (qq.com)今天的印度是亚洲第二大国,南亚第一大国,世界第二人口大国。如果我们将时间线拉长,纵观历史的长河,就会惊…...
Java编程问题top100---基础语法系列(一)
Java编程问题top100---基础语法系列一一、Java 操作符实质二、将InputStream转换为String使用IOUtils自己写轮子三、将数组转换为List四、如何遍历map对象使用For-Each迭代entries(方法一)使用For-Each迭代keys和values(方法二)使…...
【C#基础】C# 异常处理操作
序号系列文章6【C#基础】C# 常用语句讲解7【C#基础】C# 常用数据结构8【C#基础】C# 面向对象编程文章目录前言1,异常的概念2,处理异常3,自定义异常4,编译器异常结语前言 🌷大家好,我是writer桑,…...
系统分析师---操作系统思维导图
进程管理(5星) 进程与线程:共享:内存地址空间、代码、数据、文件等不能共享:独立的cpu运行上下文和栈指针、寄存器 信号量与PV操作:信号量,一种特殊的变量分为:信号量可以表示资源数…...
Linux | Ubuntu20.04系统使用命令从移动硬盘/U盘拷贝文件到服务器上
*确认自己移动硬盘、U盘的格式,本文为exfat格式STEP1:把移动硬盘插到Ubuntu系统的主机上查看disk默认位置#查看移动硬盘/U盘在哪个位置命令 fdisk -l #查询后出现了包含电脑系统的所有硬盘查看最后的位置,我的显示为Device, 位置为 /dev/sdb1…...
【经验总结】10年的嵌入式开发老手,到底是如何快速学习和使用RT-Thread的?
【经验总结】一位近10年的嵌入式开发老手,到底是如何快速学习和使用RT-Thread的? RT-Thread绝对可以称得上国内优秀且排名靠前的操作系统,在嵌入式IoT领域一直享有盛名。近些年,物联网产业的大热,更是直接将RT-Thread这…...
一起Talk Android吧(第五百零九回:约束布局中的组功能一)
文章目录功能介绍使用方法GroupLayer对比总结各位看官们大家好,上一回中咱们说的例子是"多层布局功能",这一回中咱们说的例子是"约束布局中的组功能"。闲话休提,言归正转, 让我们一起Talk Android吧! 功能介…...
2023安徽省“中银杯”职业技能大赛“网络安全” 项目比赛任务书
2023安徽省“中银杯”职业技能大赛“网络安全” 项目比赛任务书2023安徽省“中银杯”职业技能大赛“网络安全” 项目比赛任务书A模块基础设施设置/安全加固(200分)A-1:登录安全加固(Windows, Linux)A-2:Ngi…...
观测云产品更新|新增用户访问监测自动化追踪;新增 CDN 质量分析;新增自定义查看器导航菜单等
观测云更新 用户访问监测优化 新增用户访问监测自动化追踪 用户访问监测新增自动化追踪,通过“浏览器插件”的实现方式,使用浏览器记录用户访问行为,创建无代码的端到端测试。更多详情可参考文档【 自动化追踪 】https://docs.guance.com/…...
大数据技术生态全景一览
大数据技术生态全景一览大数据平台ETL数据接入大数据平台海量数据存储大数据平台通用计算大数据平台各场景的分析运算分布式协调服务任务流调度引擎大数据平台ETL数据接入 大数据有很多的产品,琳琅满目。从架构图上就能看出产品很多。这些产品它们各自的功能是什么…...
CI/CD | 深入研究Jenkins后,我挖掘出了找到了摆脱低效率低下的方法
在本系列的第一篇文章中,您已经了解了一些关于如何管理Jenkins的内容,主要是为无序的人带来秩序。在这篇文章中,我将更深入地探讨我效率低下的问题,提出我们工作流中一些安全性、治理和合规性的挑战。这不仅仅是你在网站上或展览横…...
刷LeetCode
文章目录滑动窗口算法1 涉及知识点 :unordered_set 容器2 参数详情3 例题滑动窗口算法 滑动的窗口,每次记录下窗口的状态,再找出符合条件的窗口使用滑动窗口减少时间复杂度 1 涉及知识点 :unordered_set 容器 说明:…...
Spring 大白话系列:工厂
Spring 大白话系列:工厂 “工厂模式,大家都很熟悉了。说到底,就是解除创建对象和使用对象之间的耦合。这东西没啥啊。” 教室里,老师傅听到小明在嘀嘀咕咕的。老师走过去问: “有什么问题呢小明同学?” 小…...
喜讯!华秋电子荣获第六届“蓝点奖”十佳分销商奖
2 月 25 日,由深圳市电子商会主办的2023 中国电子信息产业创新发展交流大会暨第六届蓝点奖颁奖盛典在深圳隆重举行。 图:华秋商城渠道总监杨阳(右三) 深圳市电子商会连续六年举办“蓝点奖”评选活动,旨在表彰对电子信…...
Linux概述
1:Linux概述1.1:操作系统常见操作系统有:Windows、MacOS、Linux。名称描述Windows微软公司研发的收费操作系统。分为两类:用户操作系统、Server操作系统。用户操作系统:win 95、win 98、win NT、win Me、win xp、vista…...
手机做印章网站/上海网站制作推广
public class EqualTest {public static void main(String[] args) {//对于基本类型的变量。""和"equal"的区别int t157;int t267;int t3124;int t4124;//“”对于基本数据类型,判断两个变量的值是否相等。Boolean result1(t1t2);Boolean resul…...
深圳网站开发工资/seo如何提高排名
每天一道大厂SQL题【Day03】订单量统计 大家好,我是Maynor。相信大家和我一样,都有一个大厂梦,作为一名资深大数据选手,深知SQL重要性,接下来我准备用100天时间,基于大数据岗面试中的经典SQL题,…...
登录网站后没有转页面/成长电影在线观看免费
--接文:《仓库拉链算法的数据恢复机制(重跑中间任意一天保证数据的准确完整性) 》;参考博文地址:http://blog.csdn.net/nsj820/article/details/6096682 本文是在《仓库拉链算法的数据恢复机制(重跑中间任意一天保证数据的准确完整性) 》基础…...
个人网站建设计划报告/济南做网站公司哪家好
电脑核心部件CPU知识“CPU 适用类型”是指该处理器所适用的应用类型,针对不同用户的不同需求、不同应用范围,CPU 被设计成各不相同的类型,即分为嵌入式和通用式、微控制式。嵌入式 CPU 主要用于运行面向特定领域的专用程序,配备轻…...
网站建设推广优化招聘模板/百度在线
1、打开secureCRT,连接到数据库所在的linux机器。切换到了oracle用户下。 su - oracle 2、关掉oracle的监听进程 lsnrctl stop 这时外部没法连接到数据库了。 3、杀掉所有session。 ps -ef|grep $ORACLE_SID|grep -v ora_|grep LOCALNO|awk {print $2}|xargs …...
网站建设与搜索/广告推销
为什么80%的码农都做不了架构师?>>> <?xml version"1.0" encoding"UTF-8"?> <RelativeLayout xmlns:android"http://schemas.android.com/apk/res/android"android:id"id/empty_cart_view"android:…...