第69卷 算法与程序设计—文件与FileStream操作—河北省计算机类—考纲百套卷
|
2份
|
18页
|
36人阅读
|
0人下载
内容正文:
编写说明:河北省对口招生计算机类《考纲百套卷》,依据《河北省普通高等学校对口招生考试大纲(2028版专业课)计算机类》编写。本专辑涵盖9门课程,第一部分是专业核心模块训练卷,第二部分为各门课程的综合训练卷。本专辑共98份试卷。
本试卷是第69卷为专业核心模块训练卷,按《算法与程序设计》中"算法程序卷24——文件与FileStream操作"范围和要求编写。具体内容为:掌握文件、文件流FileStream的概念;掌握FileStream对文本文件和二进制文件的读写
河北省对口招生职业技能考试
算法与程序设计 试卷
(算法程序卷24——文件与FileStream操作)
考试时间:90分钟 满分:100分
一、单项选择题(共20题,每题2分,共40分)
1. C#中,读取文件所有内容的简便方法是()
A.FileStream B.File.ReadAllLines() C.StreamWriter D.FileInfo
2. C#中,使用StreamWriter写文件后,必须调用()
A.Close()或Dispose() B.Flush() C.Write() D.Save()
3. C#中,File.ReadAllLines()返回的类型是()
A.string B.byte[] C.string[] D.List<string>
4. C# WinForms中,以下关于FileStream的说法,正确的是()
A.FileStream用于读写文件的字节数据
B.需要指定FileMode(打开/创建方式)和FileAccess(读写权限)
C.使用Close()或using释放资源
D.以上都正确
5. C#中,以下关于StreamReader的说法,正确的是()
A.StreamReader专门用于读取文本文件 B.可以使用ReadLine()按行读取
C.可以指定编码(如Encoding.UTF8) D.以上都正确
6. C#中,以下关于StreamWriter的说法,正确的是()
A.StreamWriter专门用于写入文本文件 B.WriteLine()写入一行文本并换行
C.可以指定编码 D.以上都正确
7. C#中,以下关于File类的说法,正确的是()
A.File是静态类,提供文件操作便捷方法 B.File.Create()创建文件
C.File.Delete()删除文件 D.以上都正确
8. C#中,以下关于FileStream的FileMode枚举值,说法正确的是()
A.Open打开现有文件,不存在则异常 B.Create创建新文件或覆盖已有文件
C.Append打开文件追加内容(不存在则创建) D.以上都正确
9. C#中,以下关于Path类的说法,正确的是()
A.Path.GetExtension()获取文件扩展名 B.Path.Combine()拼接路径
C.Path.GetFileName()获取文件名 D.以上都正确
10. C#中,FileStream读写二进制文件时,常用的方法是()
A.Read()和Write() B.ReadLine()和WriteLine()
C.ReadAllText()和WriteAllText() D.ReadToEnd()和Write()
11. C#中,以下关于FileStream的FileAccess枚举值,说法错误的是()
A.Read表示仅读取权限 B.Write表示仅写入权限 C.ReadWrite表示仅读取权限 D.ReadWrite表示读写权限
12. C#中,使用using语句操作FileStream的优势是()
A.无需手动释放资源 B.提高代码运行速度 C.简化文件路径写法 D.无需指定FileMode
13. C#中,StreamReader的ReadToEnd()方法的作用是()
A.读取一行文本 B.读取文件所有文本 C.读取一个字节 D.读取指定长度的文本
14. C#中,以下哪种方法可以创建一个新的文本文件并写入内容()
A.File.CreateText() B.File.OpenText() C.File.AppendText() D.File.ReadAllText()
15. C#中,FileStream的构造方法中,不需要指定的参数是()
A.文件路径 B.文件大小 C.FileMode D.FileAccess
16. C#中,以下关于二进制文件和文本文件的说法,正确的是()
A.文本文件以字节形式存储,二进制文件以字符形式存储
B.二进制文件可存储图片、视频等数据,文本文件仅存储字符
C.FileStream仅能读写文本文件
D.StreamReader可读写二进制文件
17. C#中,File.Delete()方法的作用是()
A.删除文件内容 B.删除指定文件 C.删除文件夹 D.清空文件内容
18. C#中,使用FileStream读取文件时,Read()方法的返回值表示()
A.读取的字节数 B.读取的字符数 C.文件总长度 D.文件剩余字节数
19. C#中,以下关于StreamWriter的Encoding属性,说法正确的是()
A.用于设置写入文件的编码格式 B.默认编码是UTF-8
C.不能修改编码格式 D.仅支持ASCII编码
20. C#中,以下关于文件流的概念,说法正确的是()
A.文件流是文件在内存中的映射 B.FileStream是文件流的具体实现
C.文件流仅能用于读写文本文件 D.文件流无需释放资源
二、填空题(共10空,每空1分,共10分)
21. C#中,_____类是静态类,提供了创建、删除、读取、写入文件的便捷方法。
22. FileStream用于读写文件的_____数据,适用于文本文件和二进制文件。
C#中,使用StreamReader读取文本文件时,_____方法用于按行读取文本。
23. C#中,FileStream的_____参数用于指定文件的打开或创建方式(如Open、Create)。
24. 写入文本文件时,_____类专门用于以字符形式写入文本内容,简化写入操作。
25. C#中,使用FileStream操作文件后,需调用_____方法释放资源,避免资源泄露。
26. File.ReadAllLines()方法用于读取文件所有内容,返回值类型是_____。
27. C#中,_____枚举用于指定FileStream对文件的访问权限(如Read、Write)。
28. 二进制文件以_____为单位存储数据,可用于存储图片、音频等非文本数据。
29. C#中,Path类的_____方法用于拼接文件路径,避免手动拼接出现的错误。
30. 使用StreamWriter的_____方法可以写入一行文本,并自动添加换行符。
三、判断题(共5题,每题2分,共10分)
31. FileStream仅能用于读写二进制文件,不能读写文本文件。( )
32. C#中,File类的方法都是静态方法,无需实例化即可调用。( )
33. 使用StreamReader读取文件后,无需调用Close()方法,系统会自动释放资源。( )
34. FileStream的Create模式会创建新文件,若文件已存在则覆盖原有文件。( )
35. 文本文件和二进制文件的本质区别是存储格式不同,FileStream均可对其进行读写。( )
四、程序分析题(共1题,每题10分,共10分)
36. 阅读下面的C#程序,分析其功能并写出运行结果。
using System;
class Program
{
static void Main()
{
int[] arr = { 3, 7, 2, 9, 1, 5 };
int max = arr[0];
int index = 0;
for (int i = 1; i < arr.Length; i++)
{
if (arr[i] > max)
{
max = arr[i];
index = i;
}
}
Console.WriteLine("最大值:" + max + " 位置:" + index);
}
}
程序运行结果:___________________
五、写运行结果题(共2题,每题5分,共10分)
37. 分析下面C#程序段的输出结果:
using System;
class Program
{
static void Main()
{
for (int i = 1; i <= 3; i++)
{
for (int j = 1; j <= 3; j++)
{
if (i == j)
Console.Write(i * j + " ");
}
}
Console.WriteLine();
}
}
程序运行结果:___________________
38. 分析下面C#程序段的输出结果:
using System;
class Program
{
static void Main()
{
string s = "ABCDEF";
Console.WriteLine(s.Substring(2, 3));
Console.WriteLine(s.IndexOf【'CD'】);
Console.WriteLine(s.Replace("CD", "XX"));
}
}
程序运行结果:___________________
六、程序改错题(共1题,每题5分,共5分)
39. 下面程序对int数组进行冒泡排序的程序,但有1处错误,请找出并改正:
using System;
class Program
{
static void Main()
{
int[] a = { 5, 2, 8, 1, 9 };
int n = a.Length;
for (int i = 0; i < n; i++)
{
for (int j = 0; j < n - i; j++)
{
if (a[j] > a[j + 1])
{
int temp = a[j];
a[j] = a[j + 1];
a[j + 1] = temp;
}
}
}
foreach (int x in a)
Console.Write(x + " ");
}
}
请找出程序中的错误,并写出正确答案。
七、程序填空题(共3题,每题5分,共15分)
40. 下面程序用于计算1到10的累加和,请填写空白处:
using System;
class Program{
static void Main(){
int sum = 0;
for(int i = 1; i <= 10; i++){
sum += _____;}
Console.WriteLine(sum);
}
}
41. 下面程序用于判断一个数是否为素数,请填写空白处:
using System;
class Program{
static void Main(){
int n = 17;
bool isPrime = true;
for(int i = 2; i <= Math.Sqrt(n); i++){
if(n % i == 0){
isPrime = _____;
break;
}
}
Console.WriteLine(isPrime);
}
}
42. 下面程序用于查找数组中是否存在某元素,请填写空白处:
using System;
class Program{
static void Main(){
int[] arr = {3, 5, 7, 9};
int target = 7;
bool found = false;
for(int i = 0; i < arr.Length; i++){
if(arr[i] == target){
found = _____;
break;
}
}
Console.WriteLine(found);
}
}
学科网(北京)股份有限公司
$
编写说明:河北省对口招生计算机类《考纲百套卷》,依据《河北省普通高等学校对口招生考试大纲(2028版专业课)计算机类》编写。本专辑涵盖9门课程,第一部分是专业核心模块训练卷,第二部分为各门课程的综合训练卷。本专辑共98份试卷。
本试卷是第69卷为专业核心模块训练卷,按《算法与程序设计》中"算法程序卷24——文件与FileStream操作"范围和要求编写。具体内容为:掌握文件、文件流FileStream的概念;掌握FileStream对文本文件和二进制文件的读写
河北省对口招生职业技能考试
算法与程序设计 试卷
(算法程序卷24——文件与FileStream操作)
考试时间:90分钟 满分:100分
一、单项选择题(共20题,每题2分,共40分)
1. C#中,读取文件所有内容的简便方法是()
A.FileStream B.File.ReadAllLines() C.StreamWriter D.FileInfo
【答案】B
【解析】File.ReadAllLines()是File静态类提供的简便方法,可直接读取文件所有内容并返回字符串数组,无需手动创建文件流;A是文件流,需手动操作读写,不简便;C是用于写入文本文件的类;D是用于获取文件信息的类,不用于读取内容。
2. C#中,使用StreamWriter写文件后,必须调用()
A.Close()或Dispose() B.Flush() C.Write() D.Save()
【答案】A
【解析】StreamWriter操作文件后,需调用Close()或Dispose()方法释放文件资源,避免资源泄露;B.Flush()仅用于将缓冲区内容写入文件,不释放资源;C.Write()是写入内容的方法;D.Save()不是StreamWriter的方法。
3. C#中,File.ReadAllLines()返回的类型是()
A.string B.byte[] C.string[] D.List<string>
【答案】C
【解析】File.ReadAllLines()方法的功能是读取文件所有行,每一行作为一个字符串,最终返回string[](字符串数组);A是单个字符串,不符合;B是字节数组,用于二进制数据;D是List集合,该方法不返回此类型。
4. C# WinForms中,以下关于FileStream的说法,正确的是()
A.FileStream用于读写文件的字节数据 B.需要指定FileMode(打开/创建方式)和FileAccess(读写权限) C.使用Close()或using释放资源 D.以上都正确
【答案】D
【解析】A正确,FileStream的核心功能是读写文件的字节数据,适配文本和二进制文件;B正确,创建FileStream实例时,必须指定文件路径、FileMode(如打开、创建)和FileAccess(如只读、只写);C正确,FileStream使用后需通过Close()手动释放,或用using语句自动释放;因此D正确。
5. C#中,以下关于StreamReader的说法,正确的是()
A.StreamReader专门用于读取文本文件 B.可以使用ReadLine()按行读取 C.可以指定编码(如Encoding.UTF8) D.以上都正确
【答案】D
【解析】A正确,StreamReader是专门用于读取文本文件的类,以字符形式读取,简化文本读取操作;B正确,ReadLine()是其核心方法,用于按行读取文本,读取到文件末尾返回null;C正确,创建StreamReader时可指定编码(如UTF-8、GBK),避免中文乱码;因此D正确。
6. C#中,以下关于StreamWriter的说法,正确的是()
A.StreamWriter专门用于写入文本文件 B.WriteLine()写入一行文本并换行 C.可以指定编码 D.以上都正确
【答案】D
【解析】A正确,StreamWriter专门用于以字符形式写入文本文件,简化文本写入操作;B正确,WriteLine()方法会写入一行文本,并自动添加换行符;C正确,创建StreamWriter时可指定编码,确保写入内容格式正确;因此D正确。
7. C#中,以下关于File类的说法,正确的是()
A.File是静态类,提供文件操作便捷方法 B.File.Create()创建文件 C.File.Delete()删除文件 D.以上都正确
【答案】D
【解析】A正确,File类是静态类,无需实例化即可调用其方法;B正确,File.Create(文件路径)用于创建指定路径的文件;C正确,File.Delete(文件路径)用于删除指定路径的文件;因此D正确。
8. C#中,以下关于FileStream的FileMode枚举值,说法正确的是()
A.Open打开现有文件,不存在则异常 B.Create创建新文件或覆盖已有文件 C.Append打开文件追加内容(不存在则创建) D.以上都正确
【答案】D
【解析】A正确,FileMode.Open仅用于打开已存在的文件,若文件不存在则抛出异常;B正确,FileMode.Create会创建新文件,若文件已存在则覆盖原有内容;C正确,FileMode.Append用于打开文件并在末尾追加内容,若文件不存在则自动创建;因此D正确。
9. C#中,以下关于Path类的说法,正确的是()
A.Path.GetExtension()获取文件扩展名 B.Path.Combine()拼接路径 C.Path.GetFileName()获取文件名 D.以上都正确
【答案】D
【解析】A正确,Path.GetExtension(文件路径)可获取文件的扩展名(如.txt、.docx);B正确,Path.Combine(路径1, 路径2)用于安全拼接文件路径,自动处理路径分隔符;C正确,Path.GetFileName(文件路径)可获取包含扩展名的文件名;因此D正确。
10. C#中,FileStream读写二进制文件时,常用的方法是()
A.Read()和Write() B.ReadLine()和WriteLine() C.ReadAllText()和WriteAllText() D.ReadToEnd()和Write()
【答案】A
【解析】FileStream读写二进制文件时,核心方法是Read()(读取字节数据)和Write()(写入字节数据);B是StreamReader/StreamWriter读写文本文件的方法;C是File类读写文本文件的简便方法;D中ReadToEnd()是StreamReader的方法,用于读取文本文件所有内容。
11. C#中,以下关于FileStream的FileAccess枚举值,说法错误的是()
A.Read表示仅读取权限 B.Write表示仅写入权限 C.ReadWrite表示仅读取权限 D.ReadWrite表示读写权限
【答案】C
【解析】FileAccess枚举用于指定FileStream的访问权限:A正确,Read表示仅能读取文件,不能写入;B正确,Write表示仅能写入文件,不能读取;C错误、D正确,ReadWrite表示既可以读取也可以写入文件。
12. C#中,使用using语句操作FileStream的优势是()
A.无需手动释放资源 B.提高代码运行速度 C.简化文件路径写法 D.无需指定FileMode
【答案】A
【解析】using语句的核心优势是:在代码块执行结束后,自动释放FileStream占用的文件资源,无需手动调用Close()或Dispose();B、C、D均不是using语句操作FileStream的优势。
13. C#中,StreamReader的ReadToEnd()方法的作用是()
A.读取一行文本 B.读取文件所有文本 C.读取一个字节 D.读取指定长度的文本
【答案】B
【解析】StreamReader的ReadToEnd()方法用于一次性读取文件中的所有文本内容,返回一个完整的字符串;A是ReadLine()的作用;C是FileStream的Read()方法的作用;D需通过Read(字符数组, 起始索引, 长度)实现。
14. C#中,以下哪种方法可以创建一个新的文本文件并写入内容()
A.File.CreateText() B.File.OpenText() C.File.AppendText() D.File.ReadAllText()
【答案】A
【解析】A.File.CreateText(文件路径)用于创建一个新的文本文件,并返回StreamWriter对象,可直接用于写入内容;B用于打开已存在的文本文件并读取;C用于打开文件并追加内容(文件不存在则创建,但核心是追加,不是创建后写入);D用于读取文件所有内容。
15. C#中,FileStream的构造方法中,不需要指定的参数是()
A.文件路径 B.文件大小 C.FileMode D.FileAccess
【答案】B
【解析】创建FileStream实例时,必须指定的参数包括文件路径、FileMode(打开/创建方式)、FileAccess(读写权限);文件大小无需指定,系统会根据写入内容自动调整文件大小。
16. C#中,以下关于二进制文件和文本文件的说法,正确的是()
A.文本文件以字节形式存储,二进制文件以字符形式存储 B.二进制文件可存储图片、视频等数据,文本文件仅存储字符 C.FileStream仅能读写文本文件 D.StreamReader可读写二进制文件
【答案】B
【解析】A错误,二进制文件以字节形式存储,文本文件以字符形式存储;B正确,二进制文件可存储图片、视频、音频等非文本数据,文本文件仅能存储字符数据;C错误,FileStream可读写文本文件和二进制文件;D错误,StreamReader仅能读取文本文件,不能读写二进制文件。
17. C#中,File.Delete()方法的作用是()
A.删除文件内容 B.删除指定文件 C.删除文件夹 D.清空文件内容
【答案】B
【解析】File.Delete(文件路径)的作用是删除指定路径的整个文件,而非删除/清空文件内容;删除文件夹需使用Directory.Delete()方法。
18. C#中,使用FileStream读取文件时,Read()方法的返回值表示()
A.读取的字节数 B.读取的字符数 C.文件总长度 D.文件剩余字节数
【答案】A
【解析】FileStream的Read()方法用于读取字节数据,返回值表示本次实际读取到的字节数;若读取到文件末尾,返回值为0;B是StreamReader读取文本时的计数方式;C需通过FileStream的Length属性获取;D无直接返回方法。
19. C#中,以下关于StreamWriter的Encoding属性,说法正确的是()
A.用于设置写入文件的编码格式 B.默认编码是UTF-8 C.不能修改编码格式 D.仅支持ASCII编码
【答案】A
【解析】A正确,StreamWriter的Encoding属性用于设置或获取写入文件的编码格式(如UTF-8、GBK);B错误,默认编码不是UTF-8,而是系统默认编码;C错误,编码格式可在创建StreamWriter时指定,也可通过Encoding属性修改;D错误,支持多种编码格式,并非仅ASCII。
20. C#中,以下关于文件流的概念,说法正确的是()
A.文件流是文件在内存中的映射 B.FileStream是文件流的具体实现 C.文件流仅能用于读写文本文件 D.文件流无需释放资源
【答案】B
【解析】A错误,文件流是文件与程序之间数据传输的通道,并非文件在内存中的映射;B正确,FileStream是C#中文件流的具体实现类,用于实现文件的字节级读写;C错误,文件流可用于读写文本文件和二进制文件;D错误,文件流使用后必须释放资源,否则会导致资源泄露。
二、填空题(共10空,每空1分,共10分)
21. C#中,_____类是静态类,提供了创建、删除、读取、写入文件的便捷方法。
【答案】File
【解析】File类是C#中用于文件操作的静态类,无需实例化,直接提供Create()、Delete()、ReadAllLines()、WriteAllText()等便捷方法,简化文件操作。
22. FileStream用于读写文件的_____数据,适用于文本文件和二进制文件。
【答案】字节
【解析】FileStream的核心功能是按字节读写文件数据,无论是文本文件(本质也是字节存储)还是二进制文件,均可通过FileStream进行操作。
23. C#中,使用StreamReader读取文本文件时,_____方法用于按行读取文本。
【答案】ReadLine()
【解析】StreamReader的ReadLine()方法是按行读取文本的核心方法,每次读取一行内容,读取到文件末尾时返回null。
24. C#中,FileStream的_____参数用于指定文件的打开或创建方式(如Open、Create)。
【答案】FileMode
【解析】FileMode是枚举类型,用于指定FileStream打开或创建文件的方式,常见取值包括Open、Create、Append等。
25. 写入文本文件时,_____类专门用于以字符形式写入文本内容,简化写入操作。
【答案】StreamWriter
【解析】StreamWriter是专门用于写入文本文件的类,以字符形式操作,提供Write()、WriteLine()等方法,简化文本写入流程,无需手动处理字节转换。
26. C#中,使用FileStream操作文件后,需调用_____方法释放资源,避免资源泄露。
【答案】Close()(或Dispose())
【解析】FileStream操作文件会占用系统资源,使用完毕后必须调用Close()或Dispose()方法释放资源,也可使用using语句自动释放。
27. File.ReadAllLines()方法用于读取文件所有内容,返回值类型是_____。
【答案】string[](或字符串数组)
【解析】File.ReadAllLines()会读取文件中的每一行文本,将每一行作为一个字符串,最终返回一个字符串数组(string[])。
28. C#中,_____枚举用于指定FileStream对文件的访问权限(如Read、Write)。
【答案】FileAccess
【解析】FileAccess是枚举类型,用于指定FileStream对文件的访问权限,常见取值有Read(仅读)、Write(仅写)、ReadWrite(读写)。
29. 二进制文件以_____为单位存储数据,可用于存储图片、音频等非文本数据。
【答案】字节
【解析】二进制文件的存储单位是字节,直接存储数据的二进制形式,无需转换为字符,因此可用于存储图片、音频、视频等非文本数据。
30. C#中,Path类的_____方法用于拼接文件路径,避免手动拼接出现的错误。
【答案】Combine()
【解析】Path.Combine()方法可安全拼接多个路径片段,自动处理不同系统的路径分隔符(如Windows的\、Linux的/),避免手动拼接路径出现的格式错误。
31. 使用StreamWriter的_____方法可以写入一行文本,并自动添加换行符。
【答案】WriteLine()
【解析】StreamWriter的WriteLine()方法用于写入一行文本,写入完成后会自动添加换行符,而Write()方法仅写入文本,不添加换行符。
三、判断题(共5题,每题2分,共10分)
31. FileStream仅能用于读写二进制文件,不能读写文本文件。( )
【答案】×
【解析】FileStream的核心是按字节读写数据,既可读写二进制文件,也可读写文本文件(文本文件本质也是字节存储,需进行字符与字节的转换)。
32. C#中,File类的方法都是静态方法,无需实例化即可调用。( )
【答案】√
【解析】File类是静态类,其所有方法(如Create()、Delete()、ReadAllLines())均为静态方法,无需创建File类实例,直接通过“File.方法名()”即可调用。
33. 使用StreamReader读取文件后,无需调用Close()方法,系统会自动释放资源。( )
【答案】×
【解析】StreamReader读取文件后,若未使用using语句,必须手动调用Close()或Dispose()方法释放资源;若使用using语句,系统才会自动释放,否则会导致资源泄露。
34. FileStream的Create模式会创建新文件,若文件已存在则覆盖原有文件。( )
【答案】√
【解析】FileMode.Create的作用是创建一个新文件,若指定路径的文件已存在,则会覆盖该文件的原有内容,重新创建一个空文件。
35. 文本文件和二进制文件的本质区别是存储格式不同,FileStream均可对其进行读写。( )
【答案】√
【解析】文本文件以字符编码(如UTF-8)存储,二进制文件以原始字节形式存储,两者存储格式不同;但FileStream按字节读写数据,均可对两种文件进行操作(文本文件需额外进行字符与字节的转换)。
四、程序分析题(共1题,每题10分,共10分)
36. 阅读下面的C#程序,分析其功能并写出运行结果。
using System;
class Program
{
static void Main()
{
int[] arr = { 3, 7, 2, 9, 1, 5 };
int max = arr[0];
int index = 0;
for (int i = 1; i < arr.Length; i++)
{
if (arr[i] > max)
{
max = arr[i];
index = i;
}
}
Console.WriteLine("最大值:" + max + " 位置:" + index);
}
}
程序运行结果:___________________
【答案】最大值:9 位置:3
五、写运行结果题(共2题,每题5分,共10分)
37. 分析下面C#程序段的输出结果:
using System;
class Program
{
static void Main()
{
for (int i = 1; i <= 3; i++)
{
for (int j = 1; j <= 3; j++)
{
if (i == j)
Console.Write(i * j + " ");
}
}
Console.WriteLine();
}
}
程序运行结果:___________________
【答案】1 4 9
38. 分析下面C#程序段的输出结果:
using System;
class Program
{
static void Main()
{
string s = "ABCDEF";
Console.WriteLine(s.Substring(2, 3));
Console.WriteLine(s.IndexOf【'CD'】);
Console.WriteLine(s.Replace("CD", "XX"));
}
}
程序运行结果:___________________
【答案】CDE
2
ABXXEF
六、程序改错题(共1题,每题5分,共5分)
39. 下面程序对int数组进行冒泡排序的程序,但有1处错误,请找出并改正:
using System;
class Program
{
static void Main()
{
int[] a = { 5, 2, 8, 1, 9 };
int n = a.Length;
for (int i = 0; i < n; i++)
{
for (int j = 0; j < n - i; j++)
{
if (a[j] > a[j + 1])
{
int temp = a[j];
a[j] = a[j + 1];
a[j + 1] = temp;
}
}
}
foreach (int x in a)
Console.Write(x + " ");
}
}
请找出程序中的错误,并写出正确答案。
【答案】错误1:for (int j = 0; j < n - i; j++) 应改为 j < n - 1 - i;
(当j=n-i-1时,a[j+1]不越界;若j=n-i则a[j+1]越界)
错误2:内层循环上限应为n-1-i,即j<n-1-i
七、程序填空题(共3题,每题5分,共15分)
40. 下面程序用于计算1到10的累加和,请填写空白处:
using System;
class Program{
static void Main(){
int sum = 0;
for(int i = 1; i <= 10; i++){
sum += _____;}
Console.WriteLine(sum);
}
}
【答案】['i']
41. 下面程序用于判断一个数是否为素数,请填写空白处:
using System;
class Program{
static void Main(){
int n = 17;
bool isPrime = true;
for(int i = 2; i <= Math.Sqrt(n); i++){
if(n % i == 0){
isPrime = _____;
break;
}
}
Console.WriteLine(isPrime);
}
}
【答案】['false']
42. 下面程序用于查找数组中是否存在某元素,请填写空白处:
using System;
class Program{
static void Main(){
int[] arr = {3, 5, 7, 9};
int target = 7;
bool found = false;
for(int i = 0; i < arr.Length; i++){
if(arr[i] == target){
found = _____;
break;
}
}
Console.WriteLine(found);
}
}
【答案】['true']
学科网(北京)股份有限公司
$