
C语言典型例题
文章平均质量分 74
自己总结的C初阶典型例题
折木`
知道的越多,不知道的也越多
展开
-
【C语言】-杨氏矩阵的实现
今天来向大家介绍一个用C语言实现杨氏矩阵的问题。题目如下:有一个数字矩阵,矩阵的每行从左到右是递增的,矩阵从上到下是递增的,请编写程序在这样的矩阵中查找某个数字是否存在。要求:时间复杂度小于O(N);题干中所描述的矩阵被称作杨氏矩阵,然后让你在这个这个矩阵中查找一个数字。其实在矩阵中查找一个数字并不难,只需采取遍历的方式,将矩阵中每个元素拿出来比较即可。但这道题还有一个要求就是时间复杂度必须小于O(N),也就是说不能采用遍历的方式来查找。因此我们需要根据杨氏矩阵的特点来写一个新的算法进行查找。如原创 2021-01-19 11:42:35 · 603 阅读 · 4 评论 -
【C语言】-获取一个整数二进制序列中所有的偶数位和奇数位,分别打印出二进制序列
题目:获取一个整数二进制序列中所有的偶数位和奇数位,分别打印出二进制序列拿到这个问题首先我们要好好的理解一下题意,获取一个整数二进制序列中所有的偶数位和奇数位,我们知道二进制序列在计算机中的存储有32位,例如11的二进制序列就是00000000000000000000000000001011,而他的奇数位和偶数位各占16位。奇数位就是这32位单数位的数,偶数位就是双数位的数。像这个二进制序列的奇数位就是00000000000000001.当然偶数位就是0000000000000011.其实剖析之后不难发原创 2020-11-01 08:59:13 · 1981 阅读 · 6 评论 -
【C语言】-字符串逆序
题目:编写一个函数 reverse_string(char * string)(递归实现)实现:将参数字符串中的字符反向排列。要求:不能使用C函数库中的字符串操作函数。这里先提一点,很多人拿到这道题的时候就把题意理解错了,题目的要求是将字符串的字符反向排列,而不是把字符串的字符反向打印到屏幕上。假使我们使用数组存放的这组字符串,那么函数的功能应该就是是数组中的字符串按逆序排列。先来看递归写法:...原创 2020-10-06 12:28:10 · 3125 阅读 · 3 评论 -
【C语言】-打印100~200之间的素数
题目:写一个代码:打印100~200之间的素数素数:素数是只能被1和它本身整除的数字算法一:我们可以写一个循环让这个数n和2-(n-1)这些数试除,如果该数被整除,则说明它不是素数,如果除到n-1还没有被整除,那说明他是一个素数,将他打印到屏幕上当然,为了方便起见,我们可以定义一个变量count来统计打印素数数量,从i=开始每打印一个素数,给count的值加一代码如下:#include <stdio.h>//写一个代码:打印100~200之间的素数//素数是只能被1和它本身整除的原创 2020-10-06 11:23:31 · 1409 阅读 · 2 评论 -
【C语言】-求两个数的最大公约数
题目:给定两个数,求这两个数的最大公约数。这道题我们介绍两种算法一是暴力求解法,二是辗转相除法我们首先应该知道一点,一个数如果是另一个数的约数,则一个数可以被另一个数整除,即a%b==0,也就是说他们相除的余数值为0算法一:暴力求解法我们先输入两个数,然后比较出两个数的较大值和较最小值把较大值放到a中,较小值放到b中然后让两个数同时和较小的数相除,如果不能整除,则给较小的数减一,继续相除直到找到能同时整除这两个数的值,就是这两个数的最大公约数由于我们求的是最大公约数,所以从大往小里除,可以原创 2020-10-06 11:02:15 · 2415 阅读 · 0 评论