A. foreach使用方法
foreach语句的一般语法格式如下:
foreach(数据类型 标识符 in 表达式)
{
循环体2
}。
foreach 语句为数组或对象集合中的每个元素重复一个嵌入语句组。foreach 语句用于循环访问集合以获取所需信息,但不应用于更改集合内容以避免产生不可预知的副作用。
能够应用的编程语言类别:Java、C#、PHP、D语言(Phobos库)。
foreach语句是c#中新增的循环语句,他对于处理数组及集合等数据类型特别方便。
(1)通常访问数组内容需要使用循环语句扩展阅读:
形式:
此语句的形式如下:
foreach (type identifier in expression) statement
其中:
type:
identifier 的类型。
identifier:
表示集合元素的迭代变量。如果迭代变量为值类型,则无法修改的只读变量也是有效的。
expression:
对象集合或数组表达式。集合元素的类型必须可以转换为 identifier 类型。请不要使用计算为 null 的表达式。
而应计算为实现 IEnumerable 的类型或声明 GetEnumerator 方法的类型。在后一种情况中,GetEnumerator 应该返回实现 IEnumerator 的类型或声明 IEnumerator 中定义的所有方法。
statement:
要执行的嵌入语句。
B. 怎么访问数组中的数据
使用for循环语句+文件操作函数即可文件中数据读取并存到数组中。
1、c语言标准库提供了一系列文件操作函数。文件操作函数一般以f+单词的形式来命名(f是file的简写),其声明位于stdio.h头文件当中。例如:fopen、fclose函数用于文件打开与关闭;fscanf、fgets函数用于文件读取;fprintf、fputs函数用于文件写入;ftell、fseek函数用于文件操作位置的获取与设置。一般的C语言教程都有文件操作一章,可以找本教材进一步学习。
2、例程:
#include<stdio.h>
int i,a[100];
int main(){
FILE * fp1 = fopen("input.txt", "r");//打开输入文件
FILE * fp2 = fopen("output.txt", "w");//打开输出文件
if (fp1==NULL || fp2==NULL) {//若打开文件失败则退出
puts("不能打开文件!");
rturn 0;
}
for(i=0;fscanf(fp1,"%d",a+i)!=EOF;i++);//从输入文件连续读取整数到数组a
for(;i--;)fscanf(fp2,"%d ",a[i]);//把数组a逆序写入到输出文件当中
fclose(fp1);//关闭输入文件
fclose(fp2);//关闭输出文件,相当于保存
return 0;
}
C. 在c语言中可以用来遍历数组元素的循环语句是
如果数组a大小为n
for循环:
for(i=0;i<n;i++){
a[i]=i+1;
}
while循环:
i=0;
while(i<10){
a[i]=i+1;
i++;
}
D. 二维数组所有元素的输入必须用循环结构吗
二维数组所有元素的输入不是必须用循环结构的。
使用循环结构的好处:
1)大大简化代码。设想,如果有100个、1000个元素需要输入,不用循环的话,那代码长度就非常可观,还有可能会有代码写错的地方,就更麻烦了。
2)可以根据情况的变化,更改循环体执行的次数,这一点来说,不使用循环就更麻烦了。需要使用if判断语句来决定,要不要执行本行的输入语句。
所以,二维数组所有元素的输入几乎是必用循环结构的。
E. PHP数组循环
PHP中遍历数组有三种常用的方法:
一、使用for语句循环遍历数组;
二、使用foreach语句遍历数组;
三、联合使用list()、each()和while循环遍历数组。
这三种方法中效率最高的是使用foreach语句遍历数组。从PHP4开始就引入了foreach结构,是PHP中专门为遍历数组而设计的语句,推荐大家使用。先分别介绍这几种方法。
F. 程序设计一般什么情况下会考虑使用循环,什么情况使用数组,循环和数组本质上有
循环是一种程序结构,用来处理反复的事情,最简单的例子,例如需要显示100个符号、或者某段文字打印100次,就可以用一个FOR循环来解决,比把成代码重复100次要优雅一点。最简单循环稍微改动就可以方便的处理复杂得多的事情,例如循环里面使用次数的变量,可以实现打印九九表这样的代码。看见了吧,循环跟数组往往没有关系,上面的例子就没有数组什么事情。
数组是一批类型相同的变量的集合,数组较多的时候,为了程序更加优雅,一般都使用循环程序来处理(赋值、计算等)。
G. VB语言中for each ....next...循环语句如何使用
For Each ……Next格式:语句只为集合与数组二种数据类型专门度身定做的。
For Each <成员>In<数组或集>
[<语句组>]
[Exit For ]
Next [<成员>]
例子中a为一个数组;x是成员,不用定义! 例:
For Each x In a
sum = sum + x
Next x
VB For Each.Next语句在数组中的使用:
VB For Each.Next语句好像只是为二种数据类型专门度身定做的,其一就是集合,另外一个就是数组了。通过VB For Each.Next语句,可以十分方便的访问数组中的任一元素。请仔细分析一下下列代码:
Dim arrString ( 2 ) As String = {"星期一","星期二","星期三"}
Dim Temp As String
For Each Temp In arrString
If Temp = "星期三" Then
MsgBox ( "在数组中寻找到""星期三""字符串")
Exit For '退出For Each …. Next语句
End If
Next Temp
上面代码的功能是通过VB For Each.Next语句访问arrString数组中各元素,如果发现有元素为字符串“星期三”,则弹出提示框,并退出循环。
同样用For … Next语句也能够实现上面同样的功能,只是感觉有点不专业,并且有点繁琐,下面代码是用For … Next语句实现上面VB For Each.Next语句同等功能的代码:
Dim i As Integer
For i = 0 To 2
If arrString ( i ) = "星期三" Then
MsgBox ( "在数组中寻找到""星期三""字符串" )
Exit For
End If
Next i
H. C#中的foreach循环怎么用
foreach 语句为数组或对象集合中的每个元素重复一个嵌入语句组。foreach 语句用于循环访问集合以获取所需信息,但不应用于更改集合内容以避免产生不可预知的副作用。
能够应用的编程语言类别:Java、C# 、PHP、D语言(Phobos库)。
foreach语句是c#中新增的循环语句,他对于处理数组及集合等数据类型特别方便。
foreach语句的一般语法格式如下:
foreach(数据类型 标识符 in 表达式)
{
循环体
}。
此语句的形式如下:
foreach (type identifier in expression) statement
其中:
type
identifier 的类型。
identifier
表示集合元素的迭代变量。如果迭代变量为值类型,则无法修改的只读变量也是有效的。
expression
对象集合或数组表达式。集合元素的类型必须可以转换为 identifier 类型。请不要使用计算为 null 的表达式。
而应计算为实现 IEnumerable 的类型或声明 GetEnumerator 方法的类型。在后一种情况中,GetEnumerator 应该要么返回实现 IEnumerator 的类型,要么声明 IEnumerator 中定义的所有方法。
statement
要执行的嵌入语句。
事例:
int[]arr=newint[]{0,1,2,3,4};
foreach(int i in arr)
{
Console.Write(i);
}
C#中:foreach 针对引用类型地址的访问
如果当前方法中在访问当前引用类型的集合,在新调用的 方法中在修改当前集合的地址时,当前地址会依然存在,不符合C#中的对象的生命周期,一旦当前文件的引用地址被替换掉了,当前对象的空间就消失废弃了,但是,foreach(){
}会保留原先的集合的地址<地址应该也是有生命周期的>foreach 和for 就不一样!
c#中:foreach举例
using System;
class Number
{
static void Main()
{
int evenNum = 0, oddNum = 0;
//定义并初始化一个一维数组
int[] arr = new int[] { 13, 16, 15, 78, 26, 65, 39 };
foreach (intk in arr) //提取数组中的整数
{
if (k % 2 == 0) //判断是否为偶数
evenNum++;
else
oddNum++;
}
Console.WriteLine("偶数个数:{0} 奇数个数:{1}", evenNum, oddNum);
Console.ReadKey();
}
}