自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(28)
  • 收藏
  • 关注

原创 在这个特殊的节日多陪陪你的电脑,hhh...

输入数字 n ,按顺序打印出从 1 到最大的 n 位十进制数。比如输入 3 ,则打印出 1、2、3 一直到最大的 3 位数999 。用返回一个整数列表来代替打印 n 为正整数OJ链接【牛客网题号: JZ17 打印从1到最大的n位数】示例:输入:1返回值:[1,2,3,4,5,6,7,8,9]int* printNumbers(int n, int* returnSize ){}如果没有上述输入提供的接口,我们可以不用动态申请空间的方法!首先要清楚n位数中最大的数字

2022-02-14 17:37:52 672 2

原创 C语言-函数

铁子们,新年快乐!好久不见,今天是新年后第一篇博客,那么正文开始!1. 函数是什么2. 库函数3. 自定义函数4. 函数参数5. 函数调用1. 函数是什么?维基百科中对函数的定义:子程序在计算机科学中,子程序(英语:Subroutine, procedure, function, routine, method,subprogram, callable unit),是一个大型程序中的某部分代码, 由一个或多个语句块组成。它负责完成某项特定任务,而且相较于其他代 码,具备相..

2022-02-10 17:19:15 210 19

原创 C语言之函数(上)

1. 函数是什么2. 库函数3. 自定义函数4. 函数参数5. 函数调用6. 函数的嵌套调用和链式访问7. 函数的声明和定义8. 函数递归1. 函数是什么?维基百科中对函数的定义:子程序在计算机科学中,子程序(英语Subroutine,procedure,function,routine,method,subprogram, callable unit),是一个大型程序中的某部分代码, 由一个或多个语句块组成。它负责完成某项特定任务,而且相较于其他代码,具备相对的独立性。

2022-01-18 23:20:58 131 1

原创 分支和循环语句(下)

3.循环语句whilefordo while3.1 while循环我们已经掌握了,if语句:if(条件) 语句;当条件满足的情况下,if语句后的语句执行,否则不执行。但是这个语句只会执行一次。由于我们发现生活中很多的实际的例子是:同一件事情我们需要完成很多次。那我们怎么做呢?C语言中给我们引入了:while语句,可以实现循环。//while 语法结构while(表达式)循环语句;while语句执行的流程:break在w...

2022-01-16 17:08:53 407 14

原创 分支语句和循环语句(上)

分支语句ifswitch循环语句whilefordo whileC语言是结构化的程序设计语言:1. 什么是语句?C语句可分为以下五类:1. 表达式语句2. 函数调用语句3. 控制语句4. 复合语句5. 空语句后面主要介绍的是控制语句相关的。控制语句用于控制程序的执行流程,以实现程序的各种结构方式,它们由特定的语句定义符组成,C语言有九种控制语句。可分成以下三类:1. 条件判断语句也叫分支语句:if语句、switch语句;2. 循环执..

2022-01-15 23:32:08 570 19

原创 猜数字游戏

首先,先把游戏大体框架搭构好,如:编写菜单,及输入等方面。如下面代码所示:#include<stdio.h>#include<math.h>void menu(){ printf("************************\n"); printf("****** 1.play *****\n"); printf("****** 0.exit *****\n"); printf("************************\n");

2022-01-14 17:27:29 116 12

原创 数组的应用实例:三子棋

三子棋:(拆分部分如下)test.c 测试游戏逻辑game.h关于游戏相关的函数声明,符号声明 头文件的包含game.c游戏相关函数的实现游戏进行的过程:(4种)1.玩家获胜--*(游戏结束)2.电脑获胜--#(游戏结束)3.平局--Q(游戏结束)4.游戏继续--CIsWin函数 用来判断游戏的状态...

2022-01-09 23:51:46 2657 16

原创 数组OJ(移除元素、删除排序数组中重复项)

27.移除元素给你一个数组 nums和一个值 val,你需要 原地 移除所有数值等于val的元素,并返回移除后数组的新长度。不要使用额外的数组空间,你必须仅使用 O(1) 额外空间并 原地 修改输入数组。元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。说明:为什么返回数值是整数,但输出的答案是数组呢?请注意,输入数组是以「引用」方式传递的,这意味着在函数里修改输入数组对于调用者是可见的。你可以想象内部操作如下:// nums 是以“引用”方式传递的。也就是...

2022-01-07 22:49:22 179 5

原创 顺序表的增删查改

1.线性表线性表(linear list)是n个具有相同特性的数据元素的有限序列。 线性表是一种在实际中广泛使用的数据结构,常见的线性表:顺序表、链表、栈、队列、字符串...线性表在逻辑上是线性结构,也就说是连续的一条直线。但是在物理结构上并不一定是连续的,线性表在物理上存储时,通常以数组和链式结构的形式存储。数据结构实际两种结构:1.物理结构(内存中如何存)2.逻辑结构(是我们想象出来的)线性表:物理结构:数组(可能会浪费内存)(在物理、逻辑上均连续)、链表(按需申请内存)

2022-01-06 23:39:02 183 15

原创 时间复杂度和空间复杂度求解(开启数据结构与算法)

文章目录1.算法效率 2.时间复杂度 3.空间复杂度1.1算法效率算法效率分析分为两种:第一种是时间效率,第二种是空间效率。时间效率被称为时间复杂度,而空间效率被称作空间复杂度。 时间复杂度主要衡量的是一个算法的运行速度,而空间复杂度主要衡量一个算法所需要的额外空间,在计算机发展的早期,计算机的存储容量很小。所以对空间复杂度很是在乎。但是经过计算机行业的迅速发展,计算机的存储容量已经达到了很高的程度。所以我们如今已经不需要再特别关注一个算法的空间复杂度。1.2 时间复杂

2022-01-05 16:59:34 192 19

原创 牛客网 BC107-小乐乐走台阶(递归)

题目描述小乐乐上课需要走n阶台阶,因为他腿比较长,所以每次可以选择走一阶或者走两阶,那么他一共有多少种走法?输入描述:输入包含一个整数n (1 ≤ n ≤ 30)输出描述:输出一个整数,即小乐乐可以走的方法数。示例1输入2输出2示例2输入10输出89答题思路:n=1时,乐乐腿再长,也只有一个走法,就直接一步走完;n=2时,乐乐有两种走法,①一次走一个台阶,两次结束②一次走两个台阶,一次结束;n&g..

2022-01-04 23:53:13 868 5

原创 动态内存函数的介绍

2.1 malloc和freeC语言提供了一个动态内存开辟的函数:void* malloc (size_t size);这个函数向内存申请一块连续可用的空间,并返回指向这块空间的指针。如果开辟成功,则返回一个指向开辟好空间的指针。 如果开辟失败,则返回一个NULL指针,因此malloc的返回值一定要做检查。 返回值的类型是 void* ,所以malloc函数并不知道开辟空间的类型,具体在使用的时候使用者自己来决定。 如果参数 size 为0,malloc的行为是标准是未定义的,

2022-01-03 23:48:01 62 2

原创 牛客网BC60 带空格直角三角形图案(重点:多组输入)

BC60带空格直角三角形图案描述KiKi学习了循环,BoBo老师给他出了一系列打印图案的练习,该任务是打印用“*”组成的带空格直角三角形图案。输入描述:多组输入,一个整数(2~20),表示直角三角形直角边的长度,即“*”的数量,也表示输出行数。输出描述:针对每行输入,输出用“*”组成的对应长度的直角三角形,每个“*”后面有一个空格。示例1输入:5输出: * * * * * * * * * * * * * * .

2022-01-02 18:06:19 429 1

原创 牛客网 BC28-大小写转换(你好,2022)

题目描述实现字母的大小写转换。多组输入输出。输入描述:多组输入,每一行输入大写字母。输出描述:针对每组输入输出对应的小写字母。示例1输入AB输出ab思路:当看到这个题时,通过“大小写转换”可以立马反应出,通过ASCII 码进行转换,即为:大写字母+32=小写字母。即可初步有如下代码的思路:#include<stdio.h>int main(){ int ch=0; ch=getchar(); pu..

2022-01-01 13:54:59 4315 17

原创 变量的补充

什么是变量?在内存中,开辟特定大小的空间,用来保存数据所有的变量,本质都是要在内存的某个位置开辟空间!如何定义变量?int x = 10;char c = 'a';类型变量名 =默认值#include<stdio.h>int main(){ int a=0;//初始化 a=10;//赋值 return 0;}注意初始化与赋值:初始化:定义一个新变量,并首次进行赋值。赋值:已经定义好变量,已开辟好。(如上图代码中所示)...

2021-12-27 16:36:55 113

原创 初识C语言(收官)

目录:常见关键字 static define 定义常量和宏 指针 结构体关键字static 在C语言中:static是用来修饰变量和函数的1. 修饰局部变量-称为静态局部变量2. 修饰全局变量-称为静态全局变量3. 修饰函数-称为静态函数1. 修饰局部变量-称为静态局部变量//代码1#include <stdio.h>void test(){ int i = 0; i++; printf("%d ", i);...

2021-12-21 15:48:41 257 14

原创 初始C语言(3)

目录:操作符(详细讲解)常见关键字单目操作符:只有一个操作数此处的 +,-与a+b中间的操作符不同,前者一般用于-a等的情况,而后者a+b涉及了两个操作数,其为双目操作符,注意区分!还要注意一下sizeof,它不是函数,它是操作符(运算符)!关系操作符:以上操作符主要用于比较大小等的情况。需要注意=与==的使用!!!多数同学因为固有的思维模式直接在if后面的( )中用=进行条件判断,要特别注意一下该点。=:这是赋值运算符,用于变量的初始化。==:...

2021-12-17 00:10:39 808 7

原创 初识C语言(2)

目录:常量 字符串+转义字符+注释 选择语句 循环语句 函数 数组 操作符正文开始:常量:C语言中的常量分为以下以下几种:字面常量 const 修饰的常变量 #define 定义的标识符常量 枚举常量int main(){//字面常量演示3.14;//字面常量1000;//字面常量}int main(){ //const 修饰的常变量const float pai = 3.14; //这里的pai是const修饰的常变量...

2021-12-14 23:49:12 1083 23

原创 初识C语言

本文将大概梳理知识脉络,对C语言有概括的认识。后面的文章将进行分块概述,老铁们高举手中的三连!下面,言归正传,进行初识C语言。目录:何为C语言 简单C语言程序 数据类型 变量、常量何为C语言:C语言是一门面向过程的计算机编程语言,C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。简单的C语言程序:拿到C语言课本是第一个程序就是hello world,相信勾起了不少小伙伴的回忆#include &lt.

2021-12-11 14:45:13 479

原创 开启新征程

自我介绍:大家好,我是来自某小破邮,通信工程专业的大一学生。或许通信工程,在我们的认知中是偏向于硬件方面,编程并不是我们的主要方向。我认为这二者并不冲突。目前,我们的课程中也开设C语言课程,根据以往的培养方案来看,学校后面会开设c++,python等课程,所以二者还是紧密联系的。小白望与各位老铁共同进步,共勉。联系方式:[email protected] 课后练习中遇到问题的老铁,可以一起讨论,琢磨出解决方法,共同进步,不做伸手党!友友们,Fighting!!!编程的学习计划:现选择方向..

2021-12-11 11:20:44 473 2

原创 消失的数字

数组nums包含从0到n的所有整数,但其中缺了一个。请编写代码找出那个缺失的整数。你有办法在0(n)时间内完成吗?实例1:输入:[3,0,1]输出:2思路:num跟数组中数和[0,N]之间所有异或,结果为要找的数。原理 :相同的两个数异或为0,而数组中没有6,[0,N]之间都有。异或:对应二进制位,相同为0,不同为1,不会产生进位int missingNumber(int* num,int numsSize){ int x=0; for(size_t i=

2021-12-09 18:53:11 3390

原创 时间复杂度,空间复杂度

目录:1.算法效率 2.时间复杂度 3.空间复杂度1.算法效率分为两种:时间效率和空间效率。时间效率被称为时间复杂度,时间复杂度主要衡量算法的运行速度,而空间复杂度主要衡量算法所需的额外空间。2.时间复杂度:(1)时间复杂度定义:算法的时间复杂度为一个函数,定量描述该算法的运行时间。算法中的基本操作的执行次数,为算法的时间复杂度。(2)大O的渐进表示法//请计算一个Func1基本操作执行了多少次?void Func1(int N){ int count=...

2021-12-09 18:22:41 130

原创 贪吃蛇游戏(C语言)

涉及知识点:结构体,枚举,函数等等环境VS+Easyx(插件)分析:1.数据处理:蛇: 位置 长度 方向食物:位置标志(食物的存在与否)2.窗口坐标体系具体代码如下:定义食物与定义蛇方法类似,下面略写。#include<stdio.h>#include<graphics.h>#include<conio.h>//位置结构体typedef struct MyStruct{ int x; int y;}POS; //..

2021-12-07 23:42:14 227

原创 柔性数组介绍

柔性数组,(c99中)结构中的最后一个元素允许是未知大小的数组,这就叫【柔性数组】成员。struct S{ int n; int arr[];//未知大小-柔性数组成员-数组大小可调整 //上式亦可写做 int arr[0];};int main(){ struct S s; return 0;}struct S{ int n; int arr[0];//};int main(){ struct S* ps=(struct

2021-12-01 23:42:44 1877

原创 动态内存分配(上)

文章目录为什么存在动态内存分配 动态内存函数一、当前知道的内存的使用方式1.创建一个变量 eg:int a=10;2.创建一个数组 eg:int arr[10];上述开辟空间的方式有两个特点:1.空间开辟大小为固定的。2.数组在声明时,必须指定数组长度,它所需要的内存在编译时分配但是对于空间的需求,有时在程序运行时才能知道,那数组编译时开辟空间的方式就不能满足,这是就要进行动态开辟。#include<stdio.h>#include<s...

2021-11-27 22:44:01 66

原创 位段、枚举、联合

位段(1.位段的内存分配 2.位段的跨平台问题 3.位段的应用) 枚举( 1.枚举类型的定义 2.枚举的优点 3.枚举的使用) 联合( 1.联合类型的定义 2.联合的特点 3.联合大小的计算) 位段 位段的声明和结构是类似的,有两个不同:1.位段的成员必须是int ,unsigned int 或 signed int。 2.位段的成员名后有一个冒号和一个数字。位段式结构体:struct A{ int _a:2; int _b:...

2021-11-24 00:14:41 270

原创 自定义数据类型-结构体

结构是一些值的集合,这些值称为成员变量。结构的每个成员可以为不同类型的变量。结构的声明struct tag{ member-list; 成员列表} variable-list;(分号不可丢)变量列表//声明一个结构体类型//声明一个学生类型,是想通过学生类型创建学生变量(对象)//描述学生:属性-名字+电话+性别+年龄struct Stu{ //成员变量 char name[20];//名字 char tele[12];//电话 ...

2021-11-22 14:16:36 74

原创 旋转字符串

实现一个函数,可以左旋字符串中的字符。如,现将abcdef左旋4个字符得到efabcd。方法一:暴力求解法#include<stdio.h>#include<string.h>#include<assert.h>void left_move(char* arr,int k){ assert(arr!=NULL); int i=0; int len=strlen(arr); for(i=0;i<k;i++) { char tmp=*

2021-11-21 14:38:55 371

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除