前面教程汇总
第一讲
第二讲
数组
简介
所谓数组,就是相同数据类型的元素按一定顺序排列的集合,就是把有限个类型相同的变量用一个名字命名,然后用编号区分他们的变量的集合,这个名字称为数组名,编号称为下标。组成数组的各个变量称为数组的分量,也称为数组的元素,有时也称为下标变量。数组是在程序设计中,为了处理方便, 把具有相同类型的若干变量按有序的形式组织起来的一种形式。这些按序排列的同类数据元素的集合称为数组。
数组遍历
for
循环
在学习如何进行循环遍历数组之前,我们得先学习如何进行 for
循环。下面是 for
循环的结构:
for (init; condition; increment)
{
statement(s);
}
init
会首先被执行,且只会执行一次。这一步允许您声明并初始化任何循环控制变量。您也可以不在这里写任何语句,只要有一个分号出现即可。
接下来,会判断 condition
。如果为真,则执行循环主体。如果为假,则不执行循环主体,且控制流会跳转到紧接着 for
循环的下一条语句。
在执行完 for
循环主体后,控制流会跳回上面的 increment
语句。该语句允许您更新循环控制变量。该语句可以留空,只要在条件后有一个分号出现即可。
条件再次被判断。如果为真,则执行循环,这个过程会不断重复(循环主体,然后增加步值,再然后重新判断条件)。在条件变为假时,for
循环终止。
注意:不一定要遍历到数组的尽头,其中的 n
代表本来输入至数组的总个数。
以下是一个例子,你能看懂吗?
#include <iostream>
using namespace std;
int a[10005];
int main()
{
int n;
cin >> n;
for (int i = 1; i <= n; i++)
{
cin >> a[i];
}
for (int i = 1; i <= n; i++)
{
cout << a[i] * i << endl;
}
return 0;
}
补充:while
循环
while
循环的结构是这样的:
while (loop condition)
{
xxx;
}
也有无限循环 while (true)
,不过你得在中间指定一个 if
判断,如果返回为 true
就 break
。例如:
while (true)
{
i++;
if (i == 100)
{
break;
}
}
我们可以看到,i
这个计数器每次循环都+1,直到 i == 100
。注意:一个等号是赋值,两个等号是判断是否相等。
注释
注:这一节讲的所有内容都既适用于C++,也适用于C语言。
//
号单行注释
C++和C语言有两种注释方法。第一种是 //
号单行注释。在一行之中,一旦有 //
符号,C++和C语言就会默认忽略 //
之后的信息。在同一行 //
之后区域注释 /**/
是没有作用的。例如:
#include <iostream>
using namespace std;
int a[10005];
int main()
{
//Hello World
cout << "Hello World!" << endl;
return 0;
}
/**/
号区域注释
第二种注释方法是 /**/
号区域注释。在 /*
号与 */
之间,C++和C语言会忽略掉一切。例如:
#include <iostream>
using namespace std;
int a[10005];
int main()
{
/*Hello World*/
cout << "Hello World!" << endl;
return 0;
}
函数
现在为大家讲解一下函数。函数是指一段可以直接被另一段程序或代码引用的程序或代码。也叫做子程序(OOP中)方法。
一个较大的程序一般应分为若干个程序块,每一个模块用来实现一个特定的功能。所有的高级语言中都有子程序这个概念,用子程序实现模块的功能。在C语言和C++中,子程序是由一个主函数和若干个函数构成的。由主函数调用其他函数,其他函数也可以互相调用。同一个函数可以被一个或多个函数调用任意多次。
在程序设计中,常将一些常用的功能模块编写成函数,放在函数库中供公共选用。要善于利用函数,以减少重复编写程序段的工作量。
函数分为全局函数、全局静态函数;在类中还可以定义构造函数、析构函数、拷贝构造函数、成员函数、友元函数、运算符重载函数、内联函数等。
函数结构
datatype func(parameter)
{
xxx;
return x; //如果是 void 就没有 return
}
其中 datatype
我在第二讲说过了,这里不再赘述。func
指函数名称。该函数可以有参数(不限个数),也可以没有。datatype
是什么,返回值就是什么类型的。也有一些函数可以以宏定义的方式存在(这个我们后面再说):
#define clear(); cout << "\033c";
也可以在前面声明一个函数名称,在主函数后面加上函数全部部分:
#include <iostream>
using namespace std;
void clear();
int main()
{
clear();
return 0;
}
void clear()
{
cout << "\033c";
}
函数运用
如果是 void
函数,那么它就没有返回值,可以当做可执行函数,不能当做变量——因为返回值为空。如果有返回值,那么它就只能当做变量,一般用于计算(假设返回值为1,如果当做可执行函数的话那就会报错——没有任何指令是1)。例如以下是一个计算阶乘的代码:
#include <iostream>
using namespace std;
void clear()
{
cout << "\033c";
}
int fac(int x)
{
int sum = 1;
for (int i = 1; i <= x; i++)
{
sum *= i;
}
return sum;
}
int main()
{
clear();
int x;
cin >> x;
cout << fac(x) << endl;
return 0;
}
以上就是我为大家带来的“C++入门教程(三、数组、注释与函数)”,大家学会了吗?如果大家支持我,我后面还会再出教程。