IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> C++知识库 -> 【C语言】数组笔记 -> 正文阅读

[C++知识库]【C语言】数组笔记

2.数组

2.1初识数组(一维数组)

?1.定义数组? ?

? ?1. < 类型 > 变量名称[元素数量]
? ? ??e·g: int ? ? grades[100];
? ? ? ? ? ? ? double ?weight[20];

? ? ? ? ? ??注意:元素数量必须为整数

? ??2.数组:是一种容器,特点是其中元素数据类型相同,?

? ? ? ? ? ? ? 一旦创建不可更改大小,数据呈线性排列。?

? ? ? ? ? ? ? ?e·g? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?int a [10]

a[0]a[1]a[2]a[3]a[4]a[5]a[6]a[7]a[8]a[9]

? ??3.数组的每个单元就是一个变量,[]中数字为下标,从0开始计数。

? ? 4.有效下标范围:[0,数组大小-1]

? ? ? ?·segmentation fault? 报错

? ? ?ps:数组经典用法

5.初始化:

?练习:1.求斐波那契数列前二十项

//分析:1.定义数组F[20] 
//      2.将前二十项求出并存储进F数组
//      3.输出数组F
#include <stdio.h>
int main()
{
	int F[20] = {0};
	int i ;
	F[0] = 1;
	F[1] = 1;
	printf("斐波那契数列的前二十项是\n");
	for (i = 0; i <= 20; i++) {
		F[i + 2] = F[i + 1] + F[i];
          printf("%d\t", F[i]);	
            if(i%5==0)                     //每行输出五个
              printf("\n");
    }
   return 0;
}

? ? ??2.统计分数:输入10个考生成绩,统计各分段人数。

//分析:1.定义num一维数组记录各分段人数
//      2.score/10 与 数组下标相同,可用来直接判断进行计数
//      3.再遍历数组输出结果


#include<stdio.h>
int main()
{
	int i,score;
	int num[11]={0};         //记录分数段人数
	for(i=1;i<=10;i++){
		scanf("%d",&score); //输入成绩
		num[score/10]++;    //计数(以统计对象的值为下标)
		
	}
	printf("分数段:人数\n");
	for(i=0;i<10;i++){
		printf("%d~%d:\t%d\n",i*10,i*10+9,num[i]); //输出统计结果
	}
	printf("100:\t%d\n",num[10]);
	
	return 0;
	
} 

练习3.输入10个整数,找出其中最大数和最小数

//分析:1.循环输入数据保存至数组
//      2.将max,min定义为数组首元素
//      3.遍历数组找出最大最小并输出 

#include<stdio.h>
int main()
{
  int max,min,i;
  int a[10];
	for(i=0;i<10;i++){
	scanf("%d",&a[i]);
    }
  max=min=a[0];
  for(i=1;i<10;i++){
  	
  	if(a[i]>max)
  	    max=a[i];
  	if(a[i]<min)
  	    min=a[i];
  	
  }
  printf("max=%d\t\nmin=%d",max,min);
	
	
}

2.字符串数组与字符串

1.定义:与普通数组定义方式相同,也可采取同样的初始化方式,引用也相同。

2.字符串常量:用一堆双括号引起的字符序列("hello world"

? ? ? ? ? ? ? ? ? ? ? ? ?在存储字符串时,会自动在其后添加空字符‘\0’作为结束标志

3.字符与字符串的区别:结尾有无‘\0’的结束标志

4.字符数组的初始化

? ? ?①用字符常量的初始化列表对数组初始化

? ? ? ? ?char str[6]={'C','H','I','N','A','\0'}

? ? ?②用字符串常量直接对数组初始化

? ? ? ? ?char str[6]={"China"};

? ? ? ? ?char str[6]="China";

? ? ? ? ?char str[ ]="China";

5.使用时可逐个使用也可整体使用

6.字符串的输入/输出

? ? ①按数组元素逐个处理每个字符

? char str[10]="China";
for(i=0;str[i]!='\0';i++){
    putchar(str[i]);
}
putchar('\n');

? ? ②按字符串整体输入/输出

? ? ? char str[80];
      
      scanf("%s",str);//不能输入带空格的字符串
      printf("%s",str);

? ? ? ? ③? gets(str)输入一个字符串? ?//可以输入带空格字符串

? ? ? ? ? ? ? puts(str)输出字符串

7.字符串的处理函数

#include<string.h>
strlen(字符串) // 求字符串长度,string length

strcpy(目的字符串,源字符串)//串复制,string copy

strcat(目的字符串,源字符串)//串联接 string combination

strcmp(字符串1,字符串2)   //穿比较  string comparison

?

2.2二维数组?

1.定义:

? ? ? ? ? ? ? ? ? ? ? ? ? ? ?类型? ? 数组名[常量表达式1][常量表达式2]

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 第一维(行 )? 第二维(列)

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?float a[3][4]? //定义了一个三行四列的数组,存放12个浮点数2.

?2.存放:

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 二维数组在内存中按行连续存放

3.二引用:?

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 数组名? [下标1][下标2]

4.初始化:

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ? ? ?感谢阅读!

注:1.初学者如有遗漏或错误请大佬及时指出和补充

? ? ? ?2.刚开始学着写博客,请大佬提出建议或指导

? ? ? ?3.日后会继续在这篇文章补充C#数组相关知识

? ? ? ?4.愿意结识更多初学者一起努力

?

? ? ? ? ? ? ? ? ? ? ? ??

  C++知识库 最新文章
【C++】友元、嵌套类、异常、RTTI、类型转换
通讯录的思路与实现(C语言)
C++PrimerPlus 第七章 函数-C++的编程模块(
Problem C: 算法9-9~9-12:平衡二叉树的基本
MSVC C++ UTF-8编程
C++进阶 多态原理
简单string类c++实现
我的年度总结
【C语言】以深厚地基筑伟岸高楼-基础篇(六
c语言常见错误合集
上一篇文章      下一篇文章      查看所有文章
加:2022-11-05 00:06:35  更:2022-11-05 00:12:02 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/19 3:40:49-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码