C#上机实验答案.docx
- 文档编号:23883768
- 上传时间:2023-05-21
- 格式:DOCX
- 页数:41
- 大小:23.15KB
C#上机实验答案.docx
《C#上机实验答案.docx》由会员分享,可在线阅读,更多相关《C#上机实验答案.docx(41页珍藏版)》请在冰豆网上搜索。
C#上机实验答案
实验二
(1)编写一个控制台应用程序Exp02_01,根据用户输入的两个整数,分别输出这两个整数的和、差、积和商。
(提示:
用Convert.ToInt32(Console.ReadLine())把用户从键盘上的输入转换成整数)
usingSystem;
usingSystem.Collections.Generic;
usingSystem.Text;
namespaceExp02_01
{
classProgram
{
staticvoidMain(string[]args)
{
inta=Convert.ToInt32(Console.ReadLine());
//Console.WriteLine("{0}",a);
intb=Convert.ToInt32(Console.ReadLine());Console.WriteLine("a={0},b={1},a+b={2},a-b={3},a*b={4},a/b={5}",a,b,a+b,a-b,a*b,a/b);
}
}
}
(2)创建一个控制台应用程序Exp02_02,求1到100之和。
usingSystem;
usingSystem.Collections.Generic;
usingSystem.Text;
namespaceExp02_02
{
classProgram
{
staticvoidMain(string[]args)
{
intSum,i;
Sum=0;
for(i=1;i<=100;i++)
Sum+=i;
Console.WriteLine("Sumis"+Sum);
Sum=0;
for(i=100;i>0;i--)//i也可以每次减1
Sum+=i;
Console.WriteLine("Sumis"+Sum);
}
}
}
(3)创建一个控制台应用程序Exp02_03,求半径为从键盘上输入的任意一个双精度值的圆的面积。
(提示:
用Convert.ToDouble(Console.ReadLine())把用户从键盘上的输入转换成双精度数)
usingSystem;
usingSystem.Collections.Generic;
usingSystem.Text;
namespaceExp02_03
{
classProgram
{
staticvoidMain(string[]args)
{
//doubleb=3.1415926;
doubleb=System.Math.PI;
//Console.WriteLine(System.Math.PI);
doublea;
a=Convert.ToDouble(Console.ReadLine());
Console.WriteLine("s={0},r={1}",a*a*b,a);
}
}
}
实验三
(1)创建一个控制台应用程序,
a.创建新项目,项目类型:
VisualC#,模板:
控制台应用程序,名称:
Exp03_01。
b.命名空间Exp03_01中已有一个类Program,现在在命名空间Exp03_01中添加一个类MyClass,在该类中声明两个公共的整型字段num1和num2,再声明一个公共的返回值为整型的方法GetSum(),该方法体包含一条语句returnnum1+num2;用来返回两数的和。
c.在Program类的Main方法中,创建一个MyClass类的实例变量mc,分别给mc的num1和num2成员赋值,然后调用mc的方法GetSum()求得两数之和,并显示在控制台上。
usingSystem;
usingSystem.Collections.Generic;
usingSystem.Text;
namespaceExp03_01
{
classMyClass
{
publicintnum1,num2;
publicintGetSum()
{
returnnum1+num2;
}
}
classProgram
{
staticvoidMain(string[]args)
{
MyClassmc=newMyClass();
mc.num1=Convert.ToInt32(Console.ReadLine());
mc.num2=Convert.ToInt32(Console.ReadLine());
Console.WriteLine("{0}和{1}的和{2}",mc.num1,mc.num2,mc.GetSum());
}
}
}
(2)创建一个控制台应用程序,输出九九乘法表。
usingSystem;
usingSystem.Collections.Generic;
usingSystem.Text;
namespaceExp03_02
{
classProgram
{
staticvoidMain(string[]args)
{
inti,j,sum=0;
for(i=1;i<10;i++)
{
for(j=1;j<=i;j++)
{
sum=i*j;
Console.Write("{0,2:
d}*{1,2:
d}={2,-2:
d}",j,i,sum);
if(i==j)
Console.Write("\n");
}
}
}
}
}
(3)创建一个控制台应用程序,输出所有的水仙花数。
(水仙花数为一个三位数,它们各个位上的立方和等于该数本身)。
usingSystem;
usingSystem.Collections.Generic;
usingSystem.Text;
namespaceExp03_03
{
classProgram
{
staticvoidsxh()
{
inta,b,c,n;
for(a=1;a<=9;a++)
for(b=0;b<=9;b++)
for(c=0;c<=9;c++)
{
n=a*100+b*10+c;
if(n==a*a*a+b*b*b+c*c*c)
Console.WriteLine(n);
}
}
staticvoidMain(string[]args)
{
inta,b,c;
Console.WriteLine("水仙花数数为:
");
for(intn=100;n<=999;n++)
{
a=n/100;
b=(n-a*100)/10;
c=n%10;
if(n==a*a*a+b*b*b+c*c*c)
Console.WriteLine(n);
}
Console.WriteLine("****");
sxh();
}
}
}
实验四
(1)创建一个控制台应用程序Exp04_01,求1!
+2!
+……+10!
。
编写一个函数来求一个数的阶乘。
usingSystem;
usingSystem.Collections.Generic;
usingSystem.Text;
namespaceExp04_01
{
classProgram
{
staticintfac(inti)
{
intmm=1;
for(intj=1;j<=i;j++)
mm=mm*j;
returnmm;
}
staticvoidMain(string[]args)
{
intsum=0;
for(inti=1;i<=10;i++)
sum=sum+fac(i);
Console.WriteLine("1!
+2!
+.....+10!
={0}",sum);
Console.ReadKey();
}
}
}
(2)创建一个控制台应用程序Exp04_02,编写一个函数用来求任意多个整数中的最大值。
(提示:
用参数数组)
usingSystem;
usingSystem.Collections.Generic;
usingSystem.Text;
namespaceExp04_02
{
classProgram
{
staticintMaxValue(paramsint[]arr)
{
intmax=arr[0];
for(inti=1;i { if(max max=arr[i]; } returnmax; } staticvoidMain(string[]args) { //intmaxval=MaxValue(3,54,6,8,23); //int[]a={3,6,8,23,45}; //int[]a=newint[]{3,6,8,23,45}; intn; Console.WriteLine("请输入数组的元素个数: "); n=Convert.ToInt32(Console.ReadLine()); int[]a=newint[n]; for(inti=0;i { Console.WriteLine("请输入数组元素a[{0}]: ",i); a[i]=Convert.ToInt32(Console.ReadLine()); } intmaxval=MaxValue(a); Console.WriteLine("最大值是: {0}",maxval); Console.ReadKey(); //intmaxval=MaxValue(3,54,987); //Console.WriteLine("最大值是: {0}",maxval); //Console.ReadKey(); } } } (3)创建一个控制台应用程序Exp04_03,在该程序中定义一个矩形类Rectangular,该类包含长和宽两个字段(这两个字段初始化值分别为3和4),同时该类包含计算矩形的面积、矩形的周长方法。 然后在主方法Main中调用这两个方法。 usingSystem; usingSystem.Collections.Generic; usingSystem.Text; namespaceExp03_03 { classProgram { staticvoidsort(int[]arr) { inttemp; for(inti=0;i { for(intj=i+1;j { if(arr[i]>arr[j]) { temp=arr[i]; arr[i]=arr[j]; arr[j]=temp; } } } } staticvoidMain(string[]args) { int[]myarr=newint[10]; for(inti=0;i { Console.WriteLine("请输入一个整数: "); myarr[i]=Convert.ToInt32(Console.ReadLine()); } sort(myarr); Console.WriteLine("排序后的结果为: "); for(inti=0;i { Console.WriteLine(myarr[i]); } Console.ReadKey(); } } } 实验五 (1)创建一个控制台应用程序,求出1-1000之间的所有能被7整除的数,并计算和输出每5个的和。 usingSystem; usingSystem.Collections.Generic; usingSystem.Text; namespaceExp05_01 { classProgram { //求出1~1000之间的所有能被7整除的数,并计算和输出每5个的和。 staticvoidMain(string[]args) { inti,sum=0,m=0; for(i=1;i<=1000;i++) if(i%7==0) { Console.Write("{0,5: d}",i); sum=sum+i; m++; if(m%5==0) { Console.WriteLine("\n和为{0}",sum); sum=0; } } } } } (2)创建一个控制台应用程序,从键盘输入一个正整数,按数字的相反顺序输出。 usingSystem; usingSystem.Collections.Generic; usingSystem.Text; namespaceExp05_02 { classProgram { staticvoidMain(string[]args) { //intm,n; //Console.WriteLine("输入一个正整数: "); //inta=Convert.ToInt32(Console.ReadLine()); //while(a>=10) //{ //m=a%10; //Console.Write(m); //a=a/10; //} //Console.Write(a); ////或 Console.WriteLine("请输入一个正整数: "); stringnumber=Console.ReadLine(); for(inti=number.Length-1;i>=0;i--) { Console.Write(number[i]); } Console.Read(); } } } (3)创建一个控制台应用程序,编写一个函数用来输出前20项斐波拉基数列。 该数列的生成方法为: F1=1,F2=1,Fn=Fn-1+Fn-2(n>=3)。 usingSystem; usingSystem.Collections.Generic; usingSystem.Text; namespaceExp05_03 { classProgram { publicstaticintFi(intn) { if(n==1||n==2) return1; else returnFi(n-1)+Fi(n-2); } staticvoidMain(string[]args) { for(intj=1;j<=20;j++) Console.Write("{0},",Fi(j)); } } } 实验六 (1)创建一个控制台应用程序,在该程序中创建一个静态方法MaxMinAvgArray(),该方法可以求出一个整型数组中的最大值、最小值和平均值。 (考虑一下该方法包含几个参数,分别定义为何种类型的参数) usingSystem; usingSystem.Collections.Generic; usingSystem.Linq; usingSystem.Text; namespaceExp06_01 { classProgram { publicstaticvoidMaxMinArray(int[]a,outintmax,outintmin,outdoubleavg) { intsum; sum=max=min=a[0]; for(inti=1;i { if(a[i]>max)max=a[i]; if(a[i] sum+=a[i]; } avg=sum/a.Length; } staticvoidMain(string[]args) { int[]score={87,89,56,90,100,75,64,45,80,84}; intsmax,smin; doublesavg; MaxMinArray(score,outsmax,outsmin,outsavg); Console.Write("Max={0},Min={1},Avg={2}",smax,smin,savg); Console.Read(); } } } (2)创建一个控制台应用程序,在该程序中定义一个学生类Student,该类能够记录学生、班级和学号信息,并能够输出和修改这些信息。 usingSystem; usingSystem.Collections.Generic; usingSystem.Linq; usingSystem.Text; namespaceExp06_02 { classStudent { stringname; stringbj; stringxh; publicstringName { set{name=value;} get{returnname;} } publicstringBj { set{bj=value;} get{returnbj;} } publicstringXh { set{xh=value;} get{returnxh;} } publicStudent(strings1,strings2,strings3) { name=s1; bj=s2; xh=s3; } } classProgram { staticvoidMain(string[]args) { Studentstud1=newStudent("红","07级三班","0712001"); Studentstud2=newStudent("王刚","07级三班","0712005"); stud1.Bj="07级二班"; stud2.Xh="0712009"; Console.WriteLine("stud1的: {0},班级: {1},学号: {2}.",stud1.Name,stud1.Bj,stud1.Xh); Console.WriteLine("stud2的: {0},班级: {1},学号: {2}.",stud2.Name,stud2.Bj,stud2.Xh); } } } (3)创建一个控制台应用程序,在该程序中定义一个类Lion,在该类中包含两个私有的字段: 字符串型的name和整型的age,这两个私有字段分别通过两个公共的读写属性Name和Age来对它们进行读写。 该类还包含一个带两个参数的公共构造函数,两个参数分别为字符串型和整型,在该构造函数中分别用这两个参数给相应的字段name和age赋值。 在Program类的Main方法中调用Lion的构造函数实例化一个对象,然后输出它的属性Name和Age。 usingSystem; usingSystem.Collections.Generic; usingSystem.Linq; usingSystem.Text; namespaceExp06_03 { classLion { stringname; intage; publicstringName { get{returnname;} set{name=value;} } publicintAge { get{returnage;} set{age=value;} } publicLion(stringname1,intage1) { name=name1; age=age1; } } classProgram { staticvoidMain(string[]args) { Lionlion1=newLion("Jack",8); Console.WriteLine("Thelion'snameis{0},thelion'sageis{1}: ",lion1.Name,lion1.Age); Console.ReadKey(); } } } 实验七 (1)创建一个控制台应用程序,从键盘输入一个字符串,分别统计数字、字母和其它字符的个数。 usingSystem; usingSystem.Collections.Generic; usingSystem.Linq; usingSystem.Text; namespaceExp07_01 { classProgram { staticvoidMain(string[]args) { intletter=0,number=0,others=0; strings; s=Console.ReadLine(); for(inti=0;i { if(s[i]>='A'&&s[i]<='Z'||s[i]>='a'&&s[i]<='z') letter++; elseif(s[i]>='0'&&s[i]<='9') number++; else others++;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C# 上机 实验 答案