CSharp考试练习题
- 格式:doc
- 大小:60.00 KB
- 文档页数:5
1.编一个程序,打印出所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。
例如, 153=1*1*1+5*5*5+3*3*3,所以153是“水仙花数”。
for (int n = 100; n <= 999; n++){//Console.WriteLine(n);int bai = n / 100;int shi = n / 10 % 10;int ge = n % 10;if (n == bai * bai * bai + shi * shi * shi + ge * ge * ge){Console.WriteLine(n);}}Console.ReadLine();2.编写一个程序,用while语句,求出1+(1+2)+(1+2+3)+...+(1+2+3+...+10)之和。
//2. 编写一个程序,用while语句,求出1+(1+2)+(1+2+3)+...+(1+2+3+...+10)之和。
int i=1;int sum1=0, sum=0;while (i <=10){sum1 = sum1 + i;sum = sum + sum1;i++;}Console.WriteLine(sum );Console.ReadLine();3.编一个程序,输入二个正整数,求出它们的最大公约数。
// //3. 编一个程序,输入二个正整数,求出它们的最大公约数。
int shizi1, shizi2, k;Console.WriteLine("请输入两个正整数");//输入两个数shizi1 = int.Parse(Console.ReadLine());//讲输入的数转换成整形shizi2 = int.Parse(Console.ReadLine());k = shizi1 < shizi2 ? shizi1 : shizi2;while (!(shizi1 % k == 0 && shizi2 % k == 0))//循环测试两个数的最大公约数k--;Console.WriteLine("最大公约数为{0}", k);//打印最大公约数Console.ReadLine();4.编一个程序,用while循环语句,从键盘输入10个数,要求找出最大数和次大数。
//4. 编一个程序,用while循环语句,从键盘输入10个数,要求找出最大数和次大数。
int i=1,max1=1,max=1,s;//定义变量并且初始化Console.WriteLine("请输入十个数:");//从键盘输入十个数while (i <= 10)//利用循环输出十个数字{s = int.Parse(Console.ReadLine());//将字符转换成数字if (s > max)//判断输出的字符大小{max1=max ;max =s;}else if (s > max1){s =max1;}i++;}Console.WriteLine("最大值为{0},次大值为{1}",max,max1);//打印输出最大和次大值Console.ReadLine ();5.编一个程序,要求使用while语句,输入用户名和密码,实现用户登录程序的功能,至多允许输入三次,超过三次不允许登录。
// 5. 编一个程序,要求使用while语句,输入用户名和密码,实现用户登录程序的功能,至多允许输入三次,超过三次不允许登录。
string myname ="zhangyu";//定义用户名string mima = "123";//定义密码string a, b;int i = 1;while (i <= 3)//运用循环控制输入次数以及确认用户名密码是否正确{Console.WriteLine("请输入用户名:");a=Console.ReadLine();Console.WriteLine("请输入用密码:");b=Console.ReadLine();if (a == myname && b == mima)break;elseConsole.WriteLine("您输入的用户名或密码错误,请从新输入:");i++;}if (i <= 3){Console.WriteLine("正在登陆,请耐心等待:");}else{Console.WriteLine("不能正常登陆:");}6.有关系式1*1+2*2+3*3+...+k*k<2000,编一个程序,求出满足此关系式的k的最大值。
//6. 有关系式1*1+2*2+3*3+...+k*k<2000,编一个程序,求出满足此关系式的k的最大值。
int k = 1, sum = 0;//定义变量并且初始化while (sum < 2000)//运用while 限制条件{sum = sum + k * k;k++;}Console.WriteLine(k );//打印满足关系式的最大k值Console.ReadLine();//让页面停下来7.Fibonacci序列的前二项是0和1,且每一个后继项是前二项的和。
编一个程序,输出项值不大于100的Fibonacci序列。
//7. F ibonacci序列的前二项是0和1,且每一个后继项是前二项的和。
编一个程序,输出项值不大于100的Fibonacci 序列。
int i = 0,j=1,sum=0;//定义变量且初始化while (sum <= 100) //要求输出值不大于100{sum = i + j;//后一个值为前两个值得和Console.WriteLine ("{0}", i);i = j;j = sum;}Console.ReadLine();8.编一个程序,利用while循环语句,找出2到100之间的素数。
//8. 编一个程序,利用while循环语句,找出2到100之间的素数。
int i = 2,j;//定义变量bool b;Console.WriteLine("2到100之间的素数有:");while (i <= 100)//限定循环条件{b = true;j = 2;while (j <=i-1){if (i % j == 0){b = false;break;}j++;}if (b==true )Console.WriteLine("{0} ",i );i++;}Console.WriteLine();Console.ReadLine();9.编一个程序,用for循环语句求出1到100之间的奇数之和。
//9. 编一个程序,用for循环语句求出1到100之间的奇数之和。
int sum=1;for (int i = 1; i < 100; i=i+2){sum = sum + i;}Console.WriteLine("1到100奇数的和为{0}",sum);Console.ReadLine();10.编一个程序,利用二重for循环语句,打印出九九乘法口诀表。
//10. 编一个程序,利用二重for循环语句,打印出九九乘法口诀表。
int i, j;for (i = 1; i <= 9;i++ ){for (j =1;j<=9;j++)Console.Writeline(i+"*"+j+"="+i*j);}Console.ReadLine();11.编一个程序,定义一个有10个元素的数组,使用for循环语句,从键盘上输入10名同学的数学成绩,分别求出最高分和最低分,并且求出10名同学的数学平均成绩。
12.编一个程序,利用for循环语句,求出1!+2!+3!+...+10!的和。
13.编一个程序,定义数组,用for循环语句,顺序输入10个实数,然后逆序输出这10个数。
14.编一个程序,从键盘输入10个实数,存入一个数组,用冒泡法对这个数作升序排序。
15.编一个程序,从键盘输入一个字符串,用foreach循环语句,统计其中大写字母的个数和小写字母的个数。
16.编一个程序,利用for语句,打印一个如下形式的一个等腰三角形,顶点在屏幕中线上,行数从键盘输入。
****************17.定义一个一维数组,输入任意6个整数,假定为7,4,8,9,1,5。
编一个程序,利用for语句,输出如下方阵的内容:7 4 8 9 1 55 7 4 8 9 11 5 7 4 8 99 1 5 7 4 88 9 1 5 7 44 8 9 15 718.编一个程序,定义一个n行n列的二维整数数组,赋初值,然后求出对角线上的元素之和。
19.编一个程序,定义类student和它的成员(学号,姓名,年龄和CSharp程序设计成绩),用类student生成对象s,分别对对象s的成员赋值,然后输出对象s。
20.编一个程序,定义结构(有姓名,年龄,手机号码三个字段),再定义一个一维数组,把结构作为数组元素类型,存入数据,然后依次输出。
21.编一个程序,定义类(有姓名,年龄,手机号码三个字段),再定义一个一维数组,使数组元素为类,存入数据,然后依次输出,使用for循环语句进行输入输出操作。
22.编一个程序,输入a,b,c的值,定义一个静态方法,求出一元二次方程a*x*x+b*x+c=0的二个实数根。
计算二个实数根必须使用Math类中的Sqrt()方法,计算指定数的开方。
计算二个实数根,可以用公式(-b+Math.Sqrt(b*b-4*a*c))/(2*a)和(-b-Math.Sqrt(b*b-4*a*c))/(2*a)。
23.编一个程序,定义一个数组,再定义类以及方法,用方法(out参数传递数据)找出这组数据中的最大数和最小数。
24.编一个程序,定义一个类,该类中定义二个非静态方法,一个方法用来求出这个三角形的周长,另一个方法用来求出这个三角形的面积。
已知三角形三条边a,b,c,计算其面积可以用Math类中的Sqrt()方法,有表达式Math.Sqrt(s*(s-a)*(s-b)*(s-c)),可以利用它计算指定数的开方,其中s=(a+b+c)/2。
在主方法中输入一个三角形三条边a,b,c,要求调用这二个非静态方法计算三角形的周长和面积。