学习软件设计——C#练习(3)

C#编程基础实验:合数查找与简单计算器
本文介绍使用C#编程语言完成两个基础实验:一是查找指定范围内(10~100)的所有合数,二是实现一个简单计算器程序,支持基本的加减乘除运算。

C#练习(1~8)源代码下载请到http://download.youkuaiyun.com/detail/hsttmht/3751088

引用请注明http://blog.youkuaiyun.com/hsttmht

3.1求指定范围内的所有合数

实验题目:

合数就是非素数,即除了1和它本身之外还有其他约数的正整数。编写一个程序求出指定数据范围(假设10~100)内的所有合数。

实验目的:

1)掌握循环语句for的使用。

2)掌握选择语句if的使用。

3)学会嵌套使用循环语句和选择语句。

4)学会使用break语句。

实验步骤:

1)声明int型变量minmax,并分别初始化为10100

2)声明int型变量num,用于保存合数的个数,初始化为0

3)嵌套使用for语句,顺序判断10~100中的每个整数,如果某个整数是合数,则输出该数,并将变量num1

3-3

3.2简单计算器

实验题目:

编写一个简单的计算器程序,能够根据用户从键盘输入的运算指令和整数,进行简单的加减乘除运算。

实验目的:

1)掌握循环语句while的使用。

2)掌握循环语句do-while的使用。

3)熟悉选择语句switch的使用。

4)学会嵌套使用循环语句和选择语句。

5)学会使用break语句。

实验步骤:

1)声明int型变量firstNumbersecondNumber,用于保存操作数。

2)声明string型变量operation,用于保存运算符。

3)声明string型变量response,用于保存用户输入的决定是否继续运算的字符。

4)声明do-while语句读入运算符和操作数,在该循环中用switch语句执行相应运算,并输出运算结果。

5)在do-while语句中提示用户输入相应的字符决定是否断续运算,并根据输入字符决定是否结束do-while语句的运行。

参考答案:

3-2

using System; using System.Collections.Generic; using System.Text; namespace Temp { class Program { static void Main(string[] args) { int m,k,i,n=0; for (m = 10;m <= 100;m++)//10~100内的所有数 { k=(int)Math.Sqrt(m); for(i=2;i<=k;i++) { if(m%i==0) { Console.Write("{0} ",m); n=n+1; if(n%8==0) //8个数一行 Console.WriteLine(""); break; } } } Console.WriteLine("{0}",n); Console.ReadLine(); } } }

using System; using System.Collections.Generic; public class MyClass { static void Main(string[] args) { int firstNumber = 0; int secondNumber = 0; string operate = ""; string response = ""; Console.WriteLine("简单的计算器,可实现两个整数的加、减、乘、除、取余"); do { Console.Write("firstNumber:"); firstNumber = int.Parse(Console.ReadLine()); Console.Write("secondNumber:"); secondNumber = int.Parse(Console.ReadLine()); Console.Write("operate:"); operate = Console.ReadLine(); switch (operate) { case "+": Console.WriteLine("{0}+{1}={2}", firstNumber, secondNumber, firstNumber + secondNumber); break; case "-": Console.WriteLine("{0}-{1}={2}", firstNumber, secondNumber, firstNumber - secondNumber); break; case "*": Console.WriteLine("{0}*{1}={2}", firstNumber, secondNumber, firstNumber * secondNumber); break; case "/": Console.WriteLine("{0}/{1}={2}", firstNumber, secondNumber, firstNumber / secondNumber); break; case "%": Console.WriteLine("{0}%{1}={2}", firstNumber, secondNumber, firstNumber % secondNumber); break; default: Console.WriteLine("符号输入错误!"); continue; } Console.Write("是否继续(Y/N): "); response = Console.ReadLine(); } while (response.ToLower()!="n"); Console.ReadLine(); } }











1. 声明两个变量:int n1 = 10, n2 = 20;要求将两个变量交换,最后输出n1为20,n2为10。扩展(*):不使用第三个变量如何交换? 2. 用方法来实现:将上题封装一个方法来做,方法有两个参数分别为num1,num2,将num1与num2交换。提示:方法有两个参数n1,n2,在方法中将n1与n2进行交换,使用ref。(*) 3. 请用户输入一个字符串,计算字符串中的字符个数,并输出。 4. 用方法来实现:计算两个数的最大值。思考:方法的参数?返回值?扩展(*):计算任意多个数间的最大值(提示:使用可变参数,params)。 5. 用方法来实现:计算1-100之间的所有整数。 6. 用方法来实现:计算1-100之间的所有奇数的。 7. 用方法来实现:判断一个给定的整数是否为“质数”。 8. 用方法来实现:计算1-100之间的所有质数(素数)的。 9. 用方法来实现:有一个整数数组:{ 1, 3, 5, 7, 90, 2, 4, 6, 8, 10 },找出其中最大值,并输出。不能调用数组的Max()方法。 10. 用方法来实现:有一个字符串数组:{ "马龙", "迈克尔乔丹", "雷吉米勒", "蒂姆邓肯", "科比布莱恩特" },请输出最长的字符串。 11. 用方法来实现:请计算出一个整型数组的平均值。{ 1, 3, 5, 7, 90, 2, 4, 6, 8, 10 }。要求:计算结果如果有小数,则显示小数点后两位(四舍五入)。Math.Round() 12. 请通过冒泡排序法对整数数组{ 1, 3, 5, 7, 90, 2, 4, 6, 8, 10 }实现升序排序。 13. 有如下字符串:【"患者:“大夫,我咳嗽得很重。” 大夫:“你多大年记?” 患者:“七十五岁。” 大夫:“二十岁咳嗽吗”患者:“不咳嗽。” 大夫:“四十岁时咳嗽吗?” 患者:“也不咳嗽。” 大夫:“那现在不咳嗽,还要等到什么时咳嗽?”"】。需求:①请统计出该字符中“咳嗽”二字的出现次数,以及每次“咳嗽”出现的索引位置。②扩展(*):统计出每个字符的出现次数。 14. 将字符串" hello world,你 好 世界 ! "两端空格去掉,并且将其中的所有其他空格都替换成一个空格,输出结果为:"hello world,你 好 世界 !"。 15. 制作一个控制台小程序。要求:用户可以在控制台录入每个学生的姓名,当用户输入quit(不区分大小写)时,程序停止接受用户的输入,并且显示出用户输入的学生的个数,以及每个学生的姓名。效果如图:
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值