数据结构常见语法知识二

强哥,我看了一下C/C++语法相关书籍,感觉知识点也蛮多的,对于跨考的同学来说,要素太多,抓不到重点,可能会走偏。

对,但是目前阶段的话,数据结构中我们就只需要掌握一些常见的语法,保证自己能读懂代码。

嗯嗯,这是一个必经的阶段,也是一个技巧性的阶段,毕竟考试中所涉及到的内容有限,能够抓住重点,强化学习,才是硬道理。

抓住重点小能手不是咱们实验室的尔康嘛,哈哈哈哈哈~

哈哈哈哈哈哈~

哈喽,哈喽,小伙伴们,刚刚我福尔康又路过实验室,又不小心听到强哥和张硕士的对话了,哈哈哈哈,抓住重点小能手可不就是我嘛~

不知道上周给大家分享的一些常见语法知识,大家看懂了吗?没看懂的可以问我呀~这周我们还是继续学习数据结构中常见的C/C++语法知识。

C/C++的区别

我们先再来看一下这个程序吧,还记得你们的i值和j值分别是多少吗?

诺,程序运行出来就是输出了答案??

我们可以注意到想要输出的内容都使用了printf,那就代表在语法知识中有相应的输出规则,这一点呢,C和C++还是有一点形式上的区别的。

在C语言中,我们可以使用如下句式来进行输出:

printf(“****%格式****”,varName);

其中:

****:表示任意的一些字符序列;

%格式:表示如何输出后面的varName;注:针对不同数据类型的变量,有不同的输出格式,其中常见的有:int:%d;double:%lf;char:%c;char数组(字符串):%s(别着急,下面有数组的具体解释哟);

varName:表示你所指定的那一个变量的名称;

在C++中呢,我们则使用如下句式来进行输出:

cout一些东西endl;

其中:“一些东西”包含了任意的一些字符序列或者直接是变量名称,它会自动输出该变量所代表的内容,不需要任何格式指代;

endl则可以简单理解为多输出一个回车(即换行);

既然有输出,那么必然就有输入啦,也是在C/C++中有对应的格式规则:

在C语言中,我们用如下句式来表示需要进行输入:

scanf(“%格式”,varName);

其中:%格式所对应的规则和输出一样,这个句式所代表的的含义就是将你输入的值赋予给你所指定的varName这个变量;最重要的是:千万不要忘记了代表将被赋值的指定变量前面还有个符号;这个符号呢,你可以简单理解为一把钥匙,只有钥匙打开了柜门,你才能存放东西进去。

在C++中,我们用如下句式来表示需要进行输入:

cinvarName;

这里呢,varName就代表你将要进行赋值的变量对象,需要特别注意的就是输入与输出所分别对应的“和”符号,千万不要搞反了哟~

关于数组

在上述“”%格式”中提到了数组这个概念,你是不是有疑惑呢:什么是数组,数组的种类有哪些呢?

数组分为一维数组和二维数组:

一维数组指的是一连串的数据,这些数据在内存中是紧挨着存储的;我们可以定义各种数据类型的一维数组,格式如下:

int/char/double/boolvarName[size];

e.g.intnumbers[3]={1,2,3};

其表示为,名字为varName,数据类型为int/char/double/bool的一连串数据,这一串数据大小为size个;当我们需要定位到这一串数据中的某个时,我们则可以使用varName[index];index代表角标,其值为整型,取值范围为:0=index=size;

e.g.numbers[0],此时numbers[0]所代表的值为1;

二维数组就是一连串的一维数组,其实从本质上来说二维数组也是一维数组;在定义的时候与一维数组有一定的区别,格式如下:

int/char/double/bool

varName[size1][size2];

其中size1和size2代表这个二维数组有多少行和多少列,当我们需要定位到具体某行、某列的某个值的时候,我们则可以使用:varName[i][j],i,j都是从0开始的,所以这个式子所代表的含义则为第i+1行和j+1列的元素。

关于结构体

数组定义了一组数据类型相同的数据元素,但是当一串数据的数据类型不同的时候我们应该怎么处理呢,有没有相应的解决办法呢?

例如我们需要表示一个人的某些信息:姓名,性别,年龄,身高;这些数据是一个整体,所以如果我们分开定义不同的变量,则其整体性就被破坏了,但是我们用数组又实现不了,此时就引入了另外一个数据类型的概念:结构体

结构体是一种用户自定义的可用的数据类型,它允许存储不同数据类型的数据项;其定义的一般格式如下:

struct结构体名{数据项};

这样一来,当我们需要描述一个人的某些信息时,我们就可以这样定义:

structPerson{

charname[20};

boolsex;//0代表女生;1代表男生;

intage;

dooblehight;

};

结构体是我们自己定义的数据类型,既然是数据类型,那么就可以用来定义变量,在使用结构体定义变量的时候,一般有两种形式:

第一种方法是先声明“结构体类型”,再定义“结构体类型变量”。这种方式比较自由。例如我们在上面已经声明了Person数据类型,那么当定义变量的时候,我们则可以:

structPersonperson1,person2;

第二种方法是在声明结构体类型的同时定义结构体变量;格式为

struct结构体名{数据项}varName;

e.g.

structPerson{

charname[20};

boolsex;//0代表女生;1代表男生;

intage;

dooblehight;

}person1;

在我们定义了结构体变量之后,还需要涉及到的就是如何对其中的数据项进行访问,只有能够访问到某个数据项,我们才能进行赋值和取值。当这个结构体是普通结构体时,用.访问;当这个结构体是指针结构体时,用-访问;关于指针的概念,我们在后期也会进行学习。所以先不着急哟,我们来看看用.访问的示例:

person1.age=18;

这样一来,就完成了对person1这个变量的赋值。是不是也很好理解呢,还有关于结构体的知识,我们下周学习了其他的知识后,再一并补充。

记得下周还来找我!!!

思维导图如下:

交流群▲22计算机考研交流总(点击“阅读原文”)▲南航计算机/软件考研交流QQ群(有学校资料):▲西南大学计算机/软件考研交流QQ群(有学校资料):▲诚邀各大高校大佬共同创建更多学校QQ群▲知识星球-冯强计算机与软工考研:点击打开:冯强计算机与软工考研知识星球点击"阅读原文",加入计算机考研交流QQ群预览时标签不可点收录于话题#个上一篇下一篇


转载请注明:http://www.92nongye.com/xxmb/xxmb/204623741.html