c 冒泡排序_两个月陪你刷PAT、CCF(8)——数组、冒泡排序

7a9ec4650bff13c063d0959f980d6c7a.png

新年快乐,今天继续敲代码。突然想到3月份的ccf还考吗......

1.一维数组

数组大小必须是整数常量,不能是变量。

#include

结果:

41c43b7872a6855c6d23e403b993daf0.png

注意:*未被赋值的元素一般情况默认初值为0。

*如果数组一开始没有赋初值,数组中的每个元素都可能会是一个随机数。

*若想给整个数组都赋初值0,则有以下两种方法:

int a[10]={0};

int a[10]={};

2.冒泡排序

原理:整个过程执行n-1趟,每一趟从左到右一次比较相邻的两个数,如果大的数在左边,则交换这两个数,当该趟结束时,该趟最大的数被移到当前剩余数的最右边。

#include

结果:

99b9174c9765b4e386446cb88a91496a.png

3.二维数组

二维数组的初始化:

#include

结果:

6e586b6f1c15275e66640734dd2bfadd.png

注意:若数组大小较大(10^6),则需要将其定义在主函数外面,否则会使程序异常退出。因为函数内部申请的局部变量来自系统栈,允许申请的空间较小;而函数外部申请的全局变量来自静态存储区,允许申请的空间较大。

4.memset

885b9961587b291803a4b6778c76b23b.png
#include

结果:

88dbb083a786da71dc63cc0f933dedb5.png

5.字符数组

29ae41a63dadb6bad481b623af598090.png

e7165b40ec2a1cc0b75c55a517be0cd1.png

①scanf&printf

%c用来输入单个字符,%s用来输入一个字符串;

%c能够识别空格跟换行并将其输入,%s通过空格和换行来识别一个字符串的结束。

#include

结果:

0ca32c54d7fdbcf4048ac59839469d79.png

②getchar&putchar:用来输入和输出单个字符

#include

结果:

934ff5638f7a440f21d06c1000dde8fb.png

③gets&puts:用来输入输出一行字符串

注意一维字符数组(char)的末尾一定会有个空字符0,即NULL,占用一个字符位,所以初始化字符数组时一定要比实际存储字符串的长度至少多1~多几个更保险!(实际上puts和printf就是通过识别0来输出的)

6.string.h

string.h包含了许多用于字符数组的函数,使用以下函数时记得添加这个头文件哦~

72f0598f99cf13dcbecb89def961fa00.png

7.sscanf&sprintf:处理字符串问题的利器

sscanf:把字符数组str中的内容以%d的格式写到n中。

sprintf:把n以%d的格式写到字符数组str中。

#include

结果:

ef9c17592a7d926c9aab1c77eec86e67.png
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值