|
程序设计的基本结构就三种:顺序结构、选择结构、循环结构,运用这三种语言结构,可以解决所有问题。而顺序结构就像说话一样一句一句往下运行,无处不在,所以在学习程序设计的初级阶段,就是学选择结构和循环结构,无论多么复杂的算法,拆分到最基础的结构,都是选择和重复。 循环结构中用得最多的是for循环,while循环与for循环本质是一样的,但是for循环写循环条件的时候格式位置比较统一,易读性较好。表达形式一般为: for(表达式1;表达式2;表达式3){ ... } 它的执行过程如下: 求解“表达式1”。 求解“表达式2”,若结果值为“真”,则执行for循环内嵌代码块,然后执行下面第3步;若表达式值为“假”,结束循环,跳到第5步。 求解“表达式3”。 回到上面第2步继续执行。 循环结束。执行for循环后面的语句。 循环举例: int i; int sum = 0; for(i=0; i<3; i++){ sum = sum + i; } 注意:在循环使用变量“i”和“sum”之前,声明了它们,这样当循环结束后,“i”和“sum”依然存在。也可以: int sum = 0; for(int i=0; i<3; i++){ sum = sum + i; } 这样当循环结束后,“i”就被释放了,节省内存空间,但是“sum”一定要在循环前声明,如果放在循环体内声明,那么相当于每次循环都重新声明变量,应该是会报错的,感兴趣可以自己试试,原理参照变量及其作用域那篇,有点类似函数,但是for循环是一个语言结构,不是函数。 以第二段为例讲解: 声明“sum”并初始化其值为“0”。 进入循环结构,声明“i”并初始化其值为“0”。 “i<3”为真,执行循环体内语句。 执行“sum = sum(0) + i(0);”,“sum”的值为“0”。 循环内嵌语句执行后进行自增运算“i++;”,“i”的值为“1”。 判断,“i<3”为真,执行循环体内语句。 “sum = sum(0) + i(1);”,“sum”的值为“1”。 自增运算“i++;”,“i”的值为“2”。 判断,“i<3”为真,执行循环体内语句。 “sum = sum(1) + i(2);”,“sum”的值为“3”。 自增运算“i++;”,“i”的值为“3”。 判断,“i<3”为假,跳出循环,“i”被释放,“sum”的值为“3”。 向下执行循环以后的语句...... 如果给一个比较大的数组赋值,可以: int a[50]; for(int i=0; i<50; i++){ a = 0; } 这样从“a[0]”到“a[49]”的值都是“0”,一定要记住一个元素个数为“n”(本例中为“50”个)的数组,角标最大值为“n-1”(本例中为“49”)。 |
E&K Studio