习题3 参考解答
1、C#语言中的数组类型有何特点?
【解答】
1)数组一般用于存储同一种类型的数据,包括Object类型。
2)数组是一种引用类型,而不是值类型。
3)C#中除了可以有一维数组、多维数组外,还有交错型数组。
2、泛型和非泛型的主要区别是什么?为什么说使用泛型比使用对应的非泛型效率高?
【解答】泛型是数据类型的一种通用表示形式,它可以表示任何一种数据类型。泛型(Generic)是具有占位符(类型参数)的类、结构、接口和方法,它与普通类的区别是泛型多了一个或多个表示类型的占位符,这些占位符用尖括号括起来。占位符表示某种类型,这种类型在创建泛型类的实例时才用实际类型来替换。定义一个类或者方法时,可以用泛型占位符代表任何一种类型,而在引用时再指定具体类型。当代码调用泛型类或方法时,C#编译器会自动将定义的泛型转换为引用代码中指定的类型,从而大大简化了程序员编写代码的复杂度。另外,由于占位符可以代表任何一种类型,因此在方法中只定义一次类型就能实现所有类型的引用。
3、编写一个控制台应用程序,计算
要求精度为10?8。
【解答】
using System;
class Test3
{
public static void Main()
{
int n = 50;
double x = 3;
double s = 0;
writeline教程
double a = 1;
for (int i = 1; i <= n; i++)
{
a *= i;
s += Math.Pow(-1, i + 1) * Math.Pow(x, i) / a;
}
Console.WriteLine("n={0},s={1:0.00000000}", n, s);
}
}
4、编写一个控制台应用程序,接收一个长度大于3的字符串,完成下列功能。
(1)输出字符串的长度。
(2)输出字符串中第一个出现字母a的位置。
(3)在字符串的第3个字符后面插入子串“hello”,输出新字符串。
(4)将字符串“hello”替换为“me”,输出新字符串。
(5)以字符“m”为分隔符,将字符串分离,并输出分离后的字符串。
【解答】
【解答】
using System;
class Test4
{
public static void Main()
{
string str = "";
while (str.Length <= 3)
{
Console.Write("请输入一个长度大于3的字符串:");
str = Console.ReadLine();
}
//(1)
Console.WriteLine("字符串的长度为:{0}", str.Length);
//(2)
int i = str.IndexOf('a');
if (i > -1)
{
Console.WriteLine("第一个出现字母a的位置是:{0}", i);
}
else
{
Console.WriteLine("字符串中不包含字母a。");
}
//(3)
string str1 = str.Insert(3, "hello");  //在第3个(初始序号为)字符前插入hello
Console.WriteLine("插入hello
后的结果为:{0}", str1);
/
/(4)
string str2 = str1.Replace("hello", "me");
Console.WriteLine("将hello替换为me后的结果为:{0}", str2);
//(5)
string[] arr = str2.Split('m');
Console.WriteLine("以m为分隔符分离后的字符串有:");
for (int j = 0; j < arr.Length; j++)
{
Console.WriteLine(arr[j]);
}
}
}

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。