C语言基础——数组与字符串

这篇具有很好参考价值的文章主要介绍了C语言基础——数组与字符串。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、数组

1.数组的意义

数组 – 类型 – 构造类型
数组是相同类型数据的集合。

2.数组类型如何表示

类型 [数组长度];//类型 [] char [] int [] float [] double []
类型:4大基本类型 – char int float double 数组 指针 结构体
[] – 一定不可以省略
数组长度 – 定义变量时,告诉编译器,该数组要开辟多大空间。

3.数组变量的定义

类型 标识符=初始化;
标识符:1.数字字母和下划线组成
2.数字不可以放开头
3.不能与关键字相同
4.区分大小写

3.1求数组类型大小

sizeof(变量名);单位:字节。

3.2数组的长度

3.2.1数组的长度是常量。
不写长度会报错,提示:不清楚数组变量开辟的空间大小。
3.2.2求一个数组的长度:
sizeof(数组名)/sizeof(数组名[0]);
sizeof(数组类型[数组长度])/sizeof(数组类型);
如:C语言基础——数组与字符串
3.2.3数组的变量如何初始化
如果1个数组没有定义长度,但是有初始化,长度 == 初始化长度。
C语言基础——数组与字符串

4.数组中成员的使用

4.1数组的下标

0~数组长度-1

4.2如何表示数组成员

数组名[下标];
ps:有第0个存在,即0、1、、、、n

5.常见问题

5.1
high_all – 类型是什么? 数组 == int [5]
high_all[0] – 类型是什么? int
5.2
数组的元素和普通变量一样使用。
5.2.1给一个元素赋值? – high_all 的第3个元素赋值为180

		int  high_all[5];
		high_all[3]=180;

5.2.2如何通过scanf给1个元素赋值? 给第2个元素赋值?

		int high_all[5];
		scanf("%d",&high_all[2]);

5.2.3如何通过printf打印1个成员值? 打印第2个元素的值?

		printf("%d\n",high_all[2]);

5.3
给一个数组整体赋值
5.3.1在定义时,整体赋值
int high_all[5]={160,170,180,190,200};
其他时候,不可以整体赋值,通过for循环来赋值。
C语言基础——数组与字符串
扩展:数组开辟的空间是连续的。

int high_all[5]={120,130,140};

数组长度还是5。

6.冒泡排序

int num[5]={88,68,98,78,18}; – 从小到大排列。

#include "stdio.h"

int main()
{
	int num[5]={88,68,98,78,18};//18 68 78 88 98
	
	int i=0,j=0;
	int temp = 0;
	for(i=0;i<5;i++)//5个位置
	{
		for(j=0;j<4-i;j++)//从[0]~[4-i]个元素进行比较和换位
		{
			if(num[j] > num[j+1])//前面的数,大于后面的数,进行交换
			{
				temp = num[j];
				num[j] = num[j+1];
				num[j+1] = temp;
			}
		}
	}
	for(i=0;i<5;i++)
	{
		printf("%d\t",num[i]);
	}
	printf("\n");
}

7.字符数组 字符类型数组

7.1定义

char 标识符[数组的长度];
标识符:1.数字 字母和下划线组成
2.数字不可以放开头
3.区分大小写
4.不可以与关键字相同
意义:1.字符型在显示的使用,使用比较多。

7.2物联网 – 服务器/web – 上层使用大多是字符串。

7.2.1.字符串 – 常量 = 如何表示?”china” “1234567890”
字符串长度:china ---- 长度=5 大小=6 (‘c’ ‘h’ ‘i’ ‘n’ ‘a’ ‘\0’) – 字符串结束标志:’\0’
7.2.2.字符串数组:字符数组中包含1个字符串。

7.3定义1个字符型数组

char str[1024];//长度是1024

7.4元素表示

数组名[下标];
str[0]~str[1023];

7.5对字符型数组初始化

如:china
C语言基础——数组与字符串
7.5.1字符串数组初始化(用字符串常量初始化)
C语言基础——数组与字符串
C语言基础——数组与字符串
C语言基础——数组与字符串
7.5.2用%s就可以操作字符串 – 字符串有结束标志’\0’
C语言基础——数组与字符串
打印上述两个字符串的内容:
printf(“%s\n”,str1);
printf(“%s\n”,str2);
结果未知:
C语言基础——数组与字符串
7.5.3把上述字符串数组str1中的 c 变为 C
C语言基础——数组与字符串

二、字符串(函数)及使用FunctionSelector查找其函数

1.字符串操作函数–字符串复制、连接、比较

1.1格式化输出字符串:

printf(“%s\n”,”china”);
printf(“%s\n”,存放字符串数组的数组名);
C语言基础——数组与字符串
从屏幕上获取字符串:
1.定义1个字符型数组:保存获取到的字符串
2.scanf(“%s”,数组名);
C语言基础——数组与字符串
— scanf – 获取字符串时,遇到空格会停止输入。
gets()函数 – 从屏幕上获取字符串
puts() – 输出字符串

2.字符串函数

2.1strlen()–求字符串长度

函数的功能:求一个字符串长度,结果不包含’\0’.
在FunctionSelector中查找该函数:
C语言基础——数组与字符串
使用方式:
C语言基础——数组与字符串

2.2strcpy() – 字符串拷贝函数

函数的功能:复制粘贴的一个字符串。
在FunctionSelector中查找该函数:
C语言基础——数组与字符串
使用方式:
C语言基础——数组与字符串

2.3strcat() – 字符串连接函数

函数的功能:将一个字符串连接到另一个字符串后面并打印。
在FunctionSelector中查找该函数:
C语言基础——数组与字符串
使用方法:
C语言基础——数组与字符串

2.4strcmp() – 字符串比较函数

函数功能: 用于判断两个字符串是否相等 == 0 != 0不相等
使用方法:
C语言基础——数组与字符串
结果: str1[下标] - str2[下标]

2.5strstr() – 字符串查找字符串函数(了解)

使用方法:

C语言基础——数组与字符串

2.6相关函数查找

2.6.1Linux系统提供了man手册 – 所有函数解释

例如: man gets(Linux命令)C语言基础——数组与字符串
退出:输入q

2.6.2函数查找器–FunctionSelector

C语言基础——数组与字符串

三、二维数组

1.数组的类型怎么表示?类型 []

数组的数组:类型 [][]
例如:
int num[3][4]
1.1总结:二维数组类型的表示:类型 [行的长度][列的长度];(理解)
1.2二维数组的变量如何定义? x+y轴 – 表述更多的数据
类型 标识符[行的长度][列的长度];
例如:描述咱们班级的成绩?
使用一维数组:int score[32];
使用二维数组:int score[5][10]; – 更好的定位
例如:GPS数据 东经(西经)、北纬(南纬) – 二维数组表述更好。
1.3二维数组中的元素如何调用?
数组名[行下标][列下标];
行下标:0~行的长度-1
列下标:0~列的长度-1

        int num[3][4];
        
        num[0][0] num[0][1] num[0][2] num[0][3]
        num[1][0] num[1][1] num[1][2] num[1][3]
        num[2][0] num[2][1] num[2][2] num[2][3]

元素的使用和普通变量一样。

2.特殊使用:

2.1给二维数组初始化

C语言基础——数组与字符串
C语言基础——数组与字符串
没有初始化的位置自动补0:
C语言基础——数组与字符串
C语言基础——数组与字符串

2.2数组在定义时,长度必须初始化。

//可以省略行长度,不能省略列长度
省略行的长度:
C语言基础——数组与字符串

2.3数组的类型:类型 [数组的长度] – 构造类型:代表相同类型数据的集合。

类型:char int float double 数组 指针 结构体

2.4数组中的元素如何表示?

数组名[下标]。
下标:0~数组的长度-1

2.5数组中的元素操作

– 和普通变量一样。文章来源地址https://www.toymoban.com/news/detail-411430.html

到了这里,关于C语言基础——数组与字符串的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • C 语言结构体和枚举完全指南:成员访问、字符串操作、枚举基础

    要访问结构体的成员,请使用点语法 (.): 现在您可以使用只使用一个结构体,轻松创建多个具有不同值的结构体变量: 请记住,C 语言中的字符串实际上是字符数组,不幸的是,您无法像这样为数组分配值: 会发生错误: prog.c:12:15: error: assignment to expression with array type 但是,

    2024年02月02日
    浏览(55)
  • 【C语言基础考研向】11 gets函数与puts函数及str系列字符串操作函数

    gets函数类似于scanf函数,用于读取标准输入.前面我们已经知道scanf函数在读取字符串时遇到空格就认为读取结束,所以当输入的字符串存在空格时,我们需要使用gets 函数进行读取. gets函数的格式如下: gets函数从STDIN (标准输入)读取字符并把它们加载到str(字符串)中,直到遇

    2024年01月22日
    浏览(55)
  • 【C语言】语言篇——数组和字符串

    C站的小伙伴们,大家好呀 😝😝 !我最近在阅读学习刘汝佳老师的《算法竞赛入门经典》,今天将整理本书的第三章——数组和字符串的一些习题,本章习题较多,下选取部分习题进行练习总结,在这里和大家分享,一起进步呀!✊✊✊ 读入一些整数,逆序输出到一行中。

    2024年02月07日
    浏览(56)
  • C语言——详解字符函数和字符串数组(上)

    目录 一、strlen的使用和模拟实现 1.strlen()函数的介绍 2.strlen()函数的具体使用 3.strlen函数的注意事项 4.strlen函数的模拟实现 二、strcpy的使用和模拟实现 1.strcpy()函数的介绍 2.strcpy()函数的具体使用 3.strcpy()函数的注意事项 4.strcpy函数的模拟实现 三、strcat 的使用和模拟实现  1

    2024年01月16日
    浏览(54)
  • C++基础容器 -- C的数组和字符串和C++的数组和字符串

    数组 概念 代表内存里一组连续的同类型存储区 可以用来把多个存储区合并成一个整体 数组声明 int arr[10]; 类型名称int表述数组里面所有元素的类型 名称arr是数组的名称 整数10表示数组里面的元素个数 数组里元素个数不可以改变 使用 每个元素都有下标,通过下标可以直接访

    2024年02月06日
    浏览(61)
  • C语言字符串初始化详解:用常量字符串进行字符数组初始化

    简介 字符串初始化 用常量字符串 初始化过程 示范代码 结论 在C语言中,字符串被定义为字符数组。字符串的初始化是指将一个常量字符串复制到字符数组中。本文将详细介绍字符串的初始化方法,并提供相应的示范代码。 在C语言中,有几种常用的方法可以用常量字符串来

    2024年02月15日
    浏览(60)
  • C语言:数组、字符串知识点整理:

    补充 :数组长度= sizeof(arr)/sizeof(arr[0]) 注意: !!! 不适用于当arr 充当形参时(函数传参) !!! 因为函数 传递 的是 int arr[0] 的 地址(指针) ,而 不是数组内容 , 若在此情况计算整形数组长度         在X86系统下,指针大小为 4 ,所以计算结果为4/4=1;       

    2024年03月10日
    浏览(60)
  • C语言零碎知识点之字符串数组

    在C语言中字符串数组有两种表示方法: 第一种, 二维字符数组 可以利用二维字符数组来表示字符串,格式是: char strs[row][col]; 。例如: 其中的 row 表示二维数组中的行,表示有几个字符串;而 col 表示二维数组中的列,表示能存放字符串的最大长度。 第二种, 字符指针数

    2024年01月18日
    浏览(49)
  • 用c语言如何用二维数组存入多个字符串

    用 c 语言如何用二维数组存储多个字符串呢? 首先,需要确定要存储的字符串的个数和每个字符串的长度。然后定义一个二维数组,其中第一维表示字符串的个数,第二维表示每个字符串的长度。 例如,假设要存储 3 个字符串,每个字符串的长度都是 10,则可以使用如下代

    2024年02月05日
    浏览(47)
  • 用C语言编程实现两个字符串数组的连接

    写一函数,将两个字符串连接。不要使用 strcat 函数。 说明: (1)连接两个字符串的函数名为:Connect; (2)将连个字符串存入两个字符串数组中,要保证第一个字符串的长度能够容纳两个字符串之和; (3)连接两个字符串主要是找到第一个字符串的结尾,然后将第二个字

    2024年02月12日
    浏览(43)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包