数组
数组的定义:把具有相同类型的若干变量按有序的形式组织起来,这些按序排列的同类型数据元素的集合称为数组 。
clip_p_w_picpath002
clip_p_w_picpath004
clip_p_w_picpath006
循环就是有规律的重复,在程序结构中,循环结构可以减少源程序重复书写的工作量,用来重复执行相同的语句,在C#语言中有4种循环结构;
For循环;
Foreach循环;
While循环;
do……while循环;
For循环
For循环语法:
for(赋初值表达式;条件判断表达式;改变循环条件表达式)
{
代码块
}
程序流程图;
clip_p_w_picpath008
for循环的优点就是for循环的条件都位于同一位置,同样,循环的条件可以使用复杂的布尔表达式表示。for循环表达式包含三个部分,即初始化表达式、条件表达式和迭代表达式。当for循环执行时,将按照以下顺序执行。
q 在for循环开始时,首先运行初始化表达式。
q 初始化表达式初始化后,则判断表达式条件。
q 若表达式条件成立,则执行循环语句。
q 循环语句执行完毕后,迭代表达式执行。
q 迭代表达式执行完毕后,再判断表达式条件并循环。
开发人员能够通过编写for循环语句进行代码块的重复,示例代码如下所示。
for (int i = 0; i < 100; i++) //循环100次
{
Console.WriteLine(i); //输出i变量的值
}
技巧:for循环即可做增量操作也可以做减量操作,如可以写为for(int i=10;i>0;i--),说明for循环的结构非常灵活,同样for循环的条件,迭代表达式也不仅仅局限与此。
for循环还可以声明多个变量,在初始化表达式和迭代表达式中声明不只一个变量,示例代码如下所示。
for (int i = 0, j = 0; (i < 100) && (j &lt; 100); i++, j++) //多个条件循环
{
Console.WriteLine("i is" + i); //输出i变量的值
Console.WriteLine("j is" + j); //输出j变量的值
}
foreach 循环
for循环语句常用的另一种用法就是对数组进行操作,C#还提供了foreach循环语句,如果想重复集合或者数组中的所有条目,使用foreach是很好的解决方案。遍历数组或集合元素的一种语句
语法是:
foreach(数据类型 变量名称 in 集合或数组名称)
{
代码块
}
q for each语句执行顺序如下所示。
q 集合中是否存在元素。
q 若存在,则用集合中的第一个元素初始化局部变量。
q 执行控制语句。
q 集合中是否还有剩余元素,若存在,则将剩余的第一个元素初始化局部变量。
q 若不存在,结束循环。
foreach循环示意图如图所示
clip_p_w_picpath010
foreach语句示例代码如下所示。
string[] str = { "hello", "world", "nice", "to", "meet", "you" }; //定义数组变量
foreach (string s in str) //如果存在元素则执行循环
{
Console.WriteLine(s); //输出元素
}
上述代码声明了数组str,并对str数组进行遍历循环。
页面对象ViewState
保存页面全局数据的对象
页面的隐藏域
&lt;input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="/wEPDwULLTEzNjgxMzgwNzMPFgQeBmRpYXJ5DE" />
clip_p_w_picpath012
C#中声明属性和访问属性的值
只有set访问器,表明属性的值只能进行设置而不能读出
只有get访问器,表明属性的值是只读的,不能改写。
同时具有set访问器和get访问器,表明属性的值的读写都是允许的
private string f_name;
public string Fname //声明属性
{
get {return f_name;} //读属性的值
set {f_name = value; } //设置属性的值
}
判断页面是否是第一次加载
if(!IsPostBack) //第一次加载页面显示欢迎你
{
s1.Text = "欢迎你";
}
else //不是第一次加载页面就显示你好
{
s1.Text = "你好";
}
While循环
While 结构:
while(表达式 )
{
代码块
}
流程图;
clip_p_w_picpath014
while语句示例代码如下所示。
x = 100; //声明整型变量
while (x != 1) //判断x不等于1
{
x--; //x自减操作
}
上述代码,声明并初始化变量x等于100,当判断条件x!=1成立时,则执行x—操作,直到条件x!=1不成立时才跳过while循环。
2.continue关键字:继续执行语句
在while语句中,可以使用continue语句来执行下一次迭代而不执行完所有的执行语句,示例代码如下所示。
int x, y; //声明整型变量
x = 10; //初始化x
y = 10; //初始化y
while (x != 1) //如果x不等于1
{
x--; //x自减操作
Console.WriteLine(x); //输出x
continue; //返回循环
y--; //y自减操作(但不执行)
Console.WriteLine(y); //输出y(但不执行)
}
上述代码声明了x,y两个整型变量,并初始化值为10,当x不等于1时执行while循环。在while循环语句中,当执行到continue关键字时则跳出并继续执行while循环而不执行continue关键字后的语句,如y—语句。
2.break关键字:跳出循环语句
break关键字允许程序在while循环中跳出并终止循环,从而能够继续执行循环后的语句,示例代码如下所示。
while (x != 1) //如果x不等于1
{
x--; //x自减操作
Console.WriteLine(x); //输出x
if (x == 5) //如果x等于5
{
break; //跳出循环
}
}
上述代码判断x是否等于5。x如果等于5,则break语句会生效并跳出循环,继续执行while循环语句之后的代码。
do… while循环
do while循环和while循环十分相似,区别在于do while循环会执行一次执行语句,然后再判断while中的条件。这种循环成为后测试循环,当程序需要执行一次语句再循环的时候,do while语句是非常实用的。do…while 结构:
do
{
代码块
}
while(表达式 )
流程图;
clip_p_w_picpath016
do while语句包含两个部分,执行语句和布尔值。与while循环语句不同的时,执行步骤首先执行一次执行语句,具体步骤如下所示。
q 执行一次执行语句。
q 判断布尔值。
q 若布尔值为true,则继续执行,否则跳出循环。
do while语句示例代码如下所示。
int x=90; //声明整型变量
do //首先执行一次代码块
{
x ++; //x自增一次
Console.WriteLine(x); //输出x的值
}
while (x &lt; 100); //判断x是不是小于100
上述代码在运行时会执行一次大括号内的代码块,执行完毕后才会进行相应的条件判断。
循环的中断
break——立即终止循环
continue——立即终止当前的循环(继续执行下一次循环)
return——跳出循环及其包含的函数
goto——可以跳出循环,到已标记好的位置上
break命令可以退出循环,继续执行循环后的第一行代码