- 博客(21)
- 资源 (1)
- 收藏
- 关注
原创 华为机试题4字符串分隔(C和C++实现)
题目描述•连续输入字符串,请按长度为8拆分每个字符串后输出到新的字符串数组;•长度不是8整数倍的字符串请在后面补数字0,空字符串不处理。输入描述:连续输入字符串(输入2次,每个字符串长度小于100)输出描述:输出到长度为8的新字符串数组示例1输入abc123456789输出abc000001234567890000000C实现#include "string.h"#include "stdio.h"int main(){ cha.
2020-09-07 13:04:57
330
转载 scanf 函数的返回值
1. scanf 函数是有返回值的,它的返回值可以分成三种情况1) 正整数,表示正确输入参数的个数。例如执行 scanf(“%d %d”, &a, &b);如果用户输入”3 4”,可以正确输入,返回2(正确输入了两个变量);如果用户输入”3,4”,可以正确输入a,无法输入b,返回1(正确输入了一个变量)。当scanf("%s",s)正常读取到一个字符串时(不论串的长短如何),scanf()函数的值总是1。2) 0,表示用户的输入不匹配,无法正确输入任何值。如上例,用户如果
2020-09-07 13:04:14
12046
转载 算法的时间复杂度和空间复杂度计算
原文链接:https://blog.youkuaiyun.com/daijin888888/article/details/66970902一、算法的时间复杂度定义 在进行算法分析时,语句总的执行次数T(n)是关于问题规模n的函数,进而分析T(n)随n的变化情况并确定T(n)的数量级。算法的时间复杂度,也就是算法的时间量度。记作:T(n)=O(f(n))。它表示随问题n的增大,算法执行时间的增长率和f(n)的增长率相同,称作算法的渐进时间复杂度,简称为时间复杂度。其中,f(n)是问题规模n的某个函数。...
2020-08-28 00:01:40
249
原创 华为机试题3明明的随机数(C和C++实现)
题目描述明明想在学校中请一些同学一起做一项问卷调查,为了实验的客观性,他先用计算机生成了N个1到1000之间的随机整数(N≤1000),对于其中重复的数字,只保留一个,把其余相同的数去掉,不同的数对应着不同的学生的学号。然后再把这些数从小到大排序,按照排好的顺序去找同学做调查。请你协助明明完成“去重”与“排序”的工作(同一个测试用例里可能会有多组数据,希望大家能正确处理)。InputParamn输入随机数的个数inputArrayn个随机整数组成的...
2020-08-27 23:41:40
260
转载 关于计数排序
原文链接https://www.cnblogs.com/kyoner/p/10604781.html有这样一道排序题:数组里有20个随机数,取值范围为从0到10,要求用最快的速度把这20个整数从小到大进行排序。第一时间你可能会想使用快速排序,因为快排的时间复杂度只有O(nlogn)。但是这种方法还是不够快,有没有比O(nlogn)更快的排序方法呢?你可能会有疑问:O(nlogn)已经是最快的排序算法了,怎么可能还有更快的排序方法?让我们先来回顾一下经典的排序算法,无论是归并排序,冒泡排序还是快速
2020-08-27 23:41:23
234
原创 华为机试题2计算字符个数(C和C++实现)
题目描述写出一个程序,接受一个由字母和数字组成的字符串,和一个字符,然后输出输入字符串中含有该字符的个数。不区分大小写。输入描述:第一行输入一个有字母和数字以及空格组成的字符串,第二行输入一个字符。输出描述:输出输入字符串中含有该字符的个数。示例1:输入ABCDEFA输出1C实现:#include <stdio.h>#include <string.h>#include <ctype.h>int main(v.
2020-08-27 10:19:12
330
转载 scanf()正则表达式的使用
原文链接:https://www.cnblogs.com/orange1438/archive/2013/05/12/4544958.html[]内是匹配的字符,^表示求反集,当遇到非集合内的字符时立即终止输入1. 输入指定范围的小写字母,遇到非法字符立即终止 scanf("%[a-z]",str1); printf("%s\n",str1); 输入:abc123 输出:abc 输入带空格的自定范围的字符串 scanf("%[a...
2020-08-27 00:32:55
1700
2
转载 c/c++中sizeof()、strlen()、length()、size()详解和区别
原文链接:https://blog.youkuaiyun.com/z_qifa/article/details/77744482?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.nonecase&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.nonecase
2020-08-26 13:05:59
339
原创 华为机试题目1 字符串最后一个单词的长度(C和C++实现)
#include<string>#include<iostream>using namespace std;int main(){ string str; //见1,string是个类,baistring str,是定义一du个名叫str的字符串对象。 int count=0, flag=1; // flag用来标记当前字符是否为空格 while(getline(cin, str)) //见2 { for(int i=...
2020-08-22 17:21:14
518
原创 littleVGL之环境搭建
见正点原子littleVGL开发指南不清楚的操作见B站视频(https://www.bilibili.com/video/BV1ug4y1q7ha?p=1)
2020-08-19 23:10:40
360
原创 Linux学习之printf函数_自动确定可变参数
变参函数:#include <stdarg.h>va_list p; va_start(p,fmt ); va_arg( p, int); va_end( p ); 以上四个到底是由什么函数或者宏定义构成的?下面来揭晓typedef char * va_list;#define _INTSIZEOF(n) ( (sizeof(n) + sizeof(int) - 1) &a...
2020-08-17 02:26:21
270
原创 Linux学习之printf函数_手动确定可变参数
printf在是一个标准库函数,功能是:打印(变量、字符串)等等。问题:能不能依据printf的原理,写一个简易的用于裸机程序调试的my_printf函数呢?好处:1)my_printf函数在单片机、嵌入式芯片裸机调试过程中非常方便。 2)my_printf函数可以帮你打印寄存器的值、变量的值、打印字符串等。printf的声明:int printf(const char *format, ...);format:固定参数... :可变参数(变参)printf中的格...
2020-08-17 01:10:53
340
转载 内存对齐与补齐
首先我们先看看下面的C语言的结构体:typedef struct MemAlign{int a;char b[3];int c;}MemAlign;以上这个结构体占用内存多少空间呢?也许你会说,这个简单,计算每个类型的大小,将它们相加就行了,以32为平台为例,int类型占4字节,char占用1字节,所以:4 + 3 + 4 = 11,那么这个结构体一共占用11字节空间。好吧,那么我们就用实践来证明是否正确,我们用sizeof运算符来求出这个结构体占用内存空间大小,si...
2020-08-16 23:02:18
207
原创 关于MobaXterm_Personal的使用(对于S3C2440开发板)
对于S3C2440开发板需要将波特率(Speed)设置为115200,流量控制(Flow contro)设置为None
2020-08-15 17:18:18
844
原创 LINUX学习之《S3C2440时钟体系相关寄存器编程》
编程提高运行时钟:使FCLK=400MHz、HCLK=100MHz、PCLK=50MHz1、CLKDIVN应谨慎设置,不得超过HCLK和PCLK的限制。2、如果HDIVN不是0,CPU总线模式必须从快速总线模式改变为异步总线模式使用以下指令(S3C2440不支持同步总线模式)。如果HDIVN不为0,CPU总线模式为快速总线模式,CPU将通过HCLK进行操作。这个特性可以用来改变一半以上的CPU频率而不影响HCLK和PCLK。代码如下:/* 设置MPLL, FCLK : HCLK :
2020-07-14 23:30:53
167
原创 LINUX学习之《S3C2440时钟体系》
S3C2440的时钟控制逻辑既可以外接晶振,然后通过内部电路产生时钟源;也可以直接使用外部提供的时钟源,它们通过引脚(OM[3:2])的设置来选择。如下图: 时钟源选择在启动下左图中右上角的OSC为晶振,EXTCLK为外部时钟源。即通过引脚(OM[3:2])的设置来选择S3C2440的时钟控制逻辑。 由上面右边的原理图可知,OM2、OM3接GND...
2020-07-13 21:37:42
314
原创 LINUX学习之《转换说明和转义序列》
有一道习题:在printf的格式化字符串中怎么表示一个%字符?我们留在后面解决关于转义字符:例如:/和其意思是将反斜杠/或百分号%后面的字符转变成为另外的意义。
2020-07-12 20:20:56
563
原创 LINUX学习之《解释型语言和编译型语言》
前景提要:C、C++、JAVA、Python等高级语言的优点:编程更容易、代码更紧凑、可读性更强、出错更容易修改; 可移植的、与平台无关的。计算机不能直接理解高级语言,只能理解和运行机器语言,所以要把高级语言翻译成机器语言,计算机才能运行高级语言所编写的程序。将高级语言翻译成机器语言的方式有两种:编译和解释。关于编译:编译器对源代码或源文件编译的过程并不执行程序,而是把源代码全部翻译成机器指令(机器语言),再加上一些描述信息,生成一个新的文件,称为可执行文件。可执行文件可以被操作
2020-07-10 21:22:25
527
原创 LINUX学习之《关于内存》
首先一点:RAM(Random Access Memory)、ROM(Read Only Memory)、Flash Memory都是内存。但现在一般把内存代指RAM(Random Access Memory),全名为随机存取器。而RAM与Flash Memory 则有区别:1、数据RAM:电源关闭数据不保留。存储单元的内容可按需随意取出或存入,且存取的速度与存储单元的位置无关的存储器。这种存储器在断电时将丢失其存储内容,故主要用于存储短时间使用的程序。Flash:电源关闭数据保留。结合
2020-07-10 17:46:17
242
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人