C++学习(十五)(C语言部分)之 数组二
数组大纲

多维数组
二维数组 重点 (三位以上基本不会用到)
都是用来存数据
一个班有20个人 可以用一维数组存20个人的年龄
int age[20];
一个年级10个班 每个班20人
int age[10][20];//二维数组
一个学校 6个年级 每个年级10个班 每个班20人 一个年级作为一个元素
int age[6][10][20];//三维数组
定义时 后面有多少个[]就是几维数组
二维数组 数组的数组
--->数组元素 也是数组
age[0][1][2] 0年级的1班学号是2的同学
age[0] 0粘结
gae[0][1] 0年级1班
age 三维数组
age中的元素---> age[0] age[1] age[2] age[3] age[4]
越界 用到了数组外面的内容 不属于你的地方 没人可以管 会出问题
数组大小不确定时 可以稍微大一点点
测试代码
/*
字符串后面 才有\0 字符串的末尾 \0
char arr[10]; //字符数组 字符串一般存放在字符数组中
*/ #include<stdio.h>
#include<string.h>//用函数strlen时要用到 int main()
{//一维数组复习
#if 0
char arr[] = "hello world\0"; //还有很大的空间没有存放数据
char brr[] = {'a','b','c'};//相当于赋值“abc” 空间大小为4 多出来的一位默认赋值为0 而在ASCII中 /0就是 0
char crr[] = "123456\0";//定义的是后赋值 才可以省略大小 (有效无效字符都要存进去) printf("%s\n",brr);
printf("%d\n",sizeof(arr));//求数组大小 (单位字节)
printf("%d\n", strlen(arr));//字符串长度 长度是算到\0为止的个数
//strlen 字符串的有效长度 算到\0为止
scanf("%s",arr);//数组名 不需要取地址符 scanf中间有空格 会当成两个字符串
gets_s(arr, );//100 字符串长度最多能到100 gets专门用于字符串数组的输出
gets(arr);
//回车作为结束
puts(arr);//专门用于字符串的输出
printf("输入的内容是%s",arr);//输出 #endif //多维数组
/*
多维数组
二维数组 重点 (三位以上基本不会用到)
都是用来存数据 一个班有20个人 可以用一维数组存20个人的年龄
int age[20];
一个年级10个班 每个班20人
int age[10][20];//二维数组
一个学校 6个年级 每个年级10个班 每个班20人 一个年级作为一个元素
int age[6][10][20];//三维数组 定义时 后面有多少个[]就是几维数组 二维数组 数组的数组
--->数组元素 也是数组
age[0][1][2] 0年级的1班学号是2的同学
age[0] 0粘结
gae[0][1] 0年级1班
age 三维数组
age中的元素---> age[0] age[1] age[2] age[3] age[4] 越界 用到了数组外面的内容 不属于你的地方 没人可以管 会出问题
数组大小不确定时 可以稍微大一点点
*/
#if 1
//int dArr[10][20];//一般前面的10称为行 后面的20称为列
//for (int i = 0; i < 10; ++i)
//{
// for (int j = 0; j < 20; ++j)
// {
// dArr[i][j] = i*j;
// }
//}
//for (int i = 0; i < 10; ++i)//先行
//{
// for (int j = 0; j < 20; ++j)//后列
// {
// printf("%d\t",dArr[i][j]);
// }
// printf("\n");
//} //test[i][j] 和 test[i][j+1] 地址 相差4个字节(一个int大小)
//test[i][j] 和 test[i+1][j] 地址 相差16个字节(一行的大小 4个int大小)
//本质二维数组存放方式和一位数组无异 但是他得使用方式不一样
//地址是一样的 类型是不一样的 使用方式也不一样
//&arr和&arr[0]的数据类型不一样 但是存的内容是一样的
int test[][];
for(int i = ; i < * ; ++i)
{
test[][i] = i;
}
for (int i = ; i < ; ++i)
{
for (int j = ; j < ; ++j)
{
printf("%d\t",test[i][j]);
printf("%p\t",&test[i][j]);//%p 打印地址 是16进制
}
printf("\n");
} #endif while ();//防止闪屏
getchar();
return ;//表示函数结束
}
2018-07-17 17:31:02
C++学习(十五)(C语言部分)之 数组二的更多相关文章
- 强化学习(十五) A3C
在强化学习(十四) Actor-Critic中,我们讨论了Actor-Critic的算法流程,但是由于普通的Actor-Critic算法难以收敛,需要一些其他的优化.而Asynchronous Adv ...
- salesforce lightning零基础学习(十五) 公用组件之 获取表字段的Picklist(多语言)
此篇参考:salesforce 零基础学习(六十二)获取sObject中类型为Picklist的field values(含record type) 我们在lightning中在前台会经常碰到获取pi ...
- Dart语言学习(十五) Dart函数方法
Dart函数方法可分为两类: 一.内置方法/函数: print(); 二.自定义方法: 自定义方法的基本格式: 返回类型 方法名称(参数1,参数2,...){ 方法体 return 返回值; } vo ...
- 智能车学习(十五)——K60野火2013版例程
一.中断函数注册方法: 1.格式: 配置某个功能的中断 注册中断函数 开启中断 2.一个例子 pit_init_ms(PIT0,);//定时中断初始化 set_vector_handler(PIT0_ ...
- java web 学习十五(jsp基础语法)
任何语言都有自己的语法,JAVA中有,JSP虽然是在JAVA上的一种应用,但是依然有其自己扩充的语法,而且在JSP中,所有的JAVA语句都可以使用. 一.JSP模版元素 JSP页面中的HTML内容称之 ...
- Salesforce LWC学习(十五) Async 以及 Picklist 公用方法的实现
本篇参考:salesforce 零基础学习(六十二)获取sObject中类型为Picklist的field values(含record type) https://developer.salesfo ...
- ballerina 学习十五 控制流
ballerina 的控制流没有什么特殊,只是相比一般语言多了一个模式匹配的操作match ,实际上其他语言(erlang elixir rust 中的模式匹配是很强大的) 简单例子 if/else ...
- Spring 学习十五 AOP
http://www.hongyanliren.com/2014m12/22797.html 1: 通知(advice): 就是你想要的功能,也就是安全.事物.日子等.先定义好,在想用的地方用一下.包 ...
- Scala学习十五——注解
一.本章要点 可以为类.方法.字段.局部变量.参数.表达式.类型参数以及各种类型定义添加注解 对于表达式和类型,注解跟在被注解的条目之后 注解的形式有@Annotation.@Annotation(v ...
- Java学习十五
学习内容: MyBaits 以前从来没有接触过mybatis,通过今天的学习知道这是一个框架,适用于关注SQL优化和需要频繁更新的项目. 今天做一个关于mybatis项目的入门小程序,效果很不理想. ...
随机推荐
- linux系统管理 计划任务
一次性计划任务 命令: at 语法: at [-f 文件名] 时间 绝对计时方法 HH:MM yyyy-MM-dd 相对计时方法 now + n minutes now+n hours now + n ...
- day17-json格式转换
Json简介:Json,全名 JavaScript Object Notation,是一种轻量级的数据交换格式.Json最广泛的应用是作为AJAX中web服务器和客户端的通讯的数据格式.现在也常用于h ...
- HTML中元素的position属性详解
HTML中元素的position属性详解 转载自:https://blog.csdn.net/wangzunkuan/article/details/81540935 HTML中DOM元素有5种定 ...
- jenkins部署java项目在本地(三)
(1)新建maven构建的java项目 pom.xml的配置 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns ...
- Java:<获取>、<删除>指定文件夹及里面所有文件
工具类代码如下: 一.获取 public Class Test{ //定义全局变量,存放所有文件夹下的文档 List<String> fileList ; public List<S ...
- mvc+struct1+struct2
转一篇写得很棒的文章:https://my.oschina.net/win199176/blog/208171?p=7&temp=1495894148424 1.基于web开发中最原始的jsp ...
- Cracking The Coding Interview5.2
//Given a (decimal - e.g. 3.72) number that is passed in as a string, print the binary representatio ...
- FPGA的GTP(aurora 协议)高速串行接口数据收发(转)
reference:https://blog.csdn.net/qq_40261818/article/details/83039829 PG046-Aurora 8B/10B Logicore I ...
- Spring实现Ioc的多种方式--控制反转、依赖注入、xml配置的方式实现IoC、对象作用域
Spring实现Ioc的多种方式 一.IoC基础 1.1.概念: 1.IoC 控制反转(Inversion of Control) IoC是一种设计思想. 2.DI 依赖注入 依赖注入是实现IoC的一 ...
- Visual Studio Code用户设置文件
打开 settings.json 文件 修改主题 修改工作区域背景色为豆绿色 { "workbench.colorTheme": "Visual Studio Light ...