C#练习

C#简单程序练习

     说明:学习之余温习几道经典基础知识题,将其记录下来,以供初学者参考。


 

1,题目:求出0-1000中能被7整除的数,并计算输出每五个数的和:

 int Count = 0;
                        int Sum = 0;
                        for (int i = 1; i <= 1000; i++)
                        {
                            if (i % 7 == 0)
                            {
                                Sum += i;
                                Count++;
                                Console.Write("{0} ", i);
                            }
                            if (Count == 5)
                            {
                                Console.Write("和为{0} ", Sum);
                                Sum = 0;
                                Count = 0;
                                Console.WriteLine();
                            }

                        }
                        Console.Read();

运行截图:


 

题目2:编写一个类,其中包含一个排序的方法 Sort(), 当传入的是一串整数,就按照从小到大的顺序输出,如果传入的是一个字符串,就将字符串反序输出。 

代码:

Console.Write("输入字符串");
                        string Str = Console.ReadLine();
                        Paixu Pa = new Paixu();
                        Pa.Sort(Str); 


//此类单独建在cs文件中
class Paixu { //数字的从大到小的排序 public void Sort(string str) { char[] num = str.ToCharArray(); bool t = true; for(int i=0;i<num.Length;i++) { if(num[i]<'0'||num[i]>'9') { t = false; break; } } if (t == true) { for (int i = 0; i < num.Length; i++) { for (int j = 0; j < num.Length - 1 - i; j++) { if (num[j] > num[j + 1]) { char tem = num[j]; num[j] = num[j + 1]; num[j + 1] = tem; } } } string Num = new string(num); Console.WriteLine(Num); } else { for(int i = 0; i < num.Length / 2; i++) { char tem = num[i]; num[i] = num[num.Length - 1 - i]; num[num.Length - 1 - i] = tem; } string str2 = new string(num); Console.WriteLine(str2); } }

运行截图:

   


题目3:

编写一个矩形类,私有数据成员为举行的长(len)和宽(wid),无参构造函数将len和wid设置为0,有参构造函数设置和的值,另外,
类还包括矩形的周长、求面积、取举行的长度、取矩形的长度、取矩形的宽度、修改矩形的长度和宽度为对应的形参值等公用方法。
 class Rectangle
    {
        //无参定义len 和wid为0
        double length = 0;
        double width = 0;
        //有参构造函数
        public double Length
        {
            get { return length; }
            set { length = value; }
        }
        public double Width
        {
            get { return width; }
            set { width = value; }
        }

        //构造函数周长
        public double Perimeter
        {
            get
            {
                return ((length + width) * 2);
            }
        }
        //构造函数面积
        public double Area
        {
            get
            {
                return (length * width);
            }
        }
        //方法,取矩形的长度和宽度
        public void LenAndWid(double length, double width)
        {
            this.length = length;
            this.width = width;
        }
        //修改长度对应的形参值
        public void ELength(double Len)
        {
            this.length = Len;
        }
        //修改宽度对应的形参值
        public void EWidth(double Wid)
        {
            this.width = Wid;
        }
        //取矩形的长
        public double GetLength()
        {
            return this.length;
        }
        //取矩形的宽
        public double GetWidth()
        {
            return this.width;
        }
    }

截图:


 题目4:

编写一个控制台应用程序,接收一个长度大于3的字符串,完成 下列功能:

1) 输出字符串长度。  2) 输出字符串中第一个出现字母a的位置。  3) 在字符串的第3个字符后面插入子串“hello”,输出新字符串。 

4) 将字符串“hello”替换成“me”,输出新字符串。  5) 以字符“m”为分隔符,将字符串分离,并输出分离后的字符 串。

代码:(cs文件)

 class Class4
    {
        /*说明:接受长度大于3的字符串
         1:输出字符串的长度
         2:输出字符串中出现第一个字母a的位置
         3:在字符串的第三个字符后加入hello,输出新的的字符串
         4:将字符串hello替换成me,输出新的字符串
         5:以m为分隔符将字符串分离,并输出分离后的字符串
         */
        //构造函数获取输入的字符串
        string str = string.Empty;
        public string Str
        {
            get { return str; }
            set { str = value; }
        }
        //构造方法输出字符串的长度
        public string Length()
        {
            char[] ss = this.str.ToCharArray();//将输入的字符串转换成数组
            int len = ss.Length;
            return len.ToString();
            
            
        }
        //输出字符串中第一个字母a的位置
        public string aLoction()
        {
            char[] ss = this.str.ToCharArray();
            int loc =1;
            for (int i =0; i < ss.Length; i++)
            {
                if (ss[i] == 'a')
                    loc = i+1;
                // break;
            }
            return loc.ToString();
        }
        //在字符串的第三个字母后加入字符串hello,并输出
        public string addStr()
        {
            string addstr = str.Insert(3, "hello");
            return addstr;

        }
        //将hello替换成me,输出新的字符串
        public string ediStr(string newstr)
        {
            string old = "hello";
            string ne = "me";
            string edistr = newstr.Replace(old,ne);
            return edistr;
        }
        //用字母m将字符串分割,输出分割后的字符串
        public string splitStr(string ss)
        {
            string[] newstr = ss.Split('m');
            string aa = string.Empty;
            for(int i = 0; i < newstr.Length; i++)
            {
               // Console.Write(newstr[i]);
                aa = newstr[i];
            }
           return aa;
           
        }

main函数:

 Console.Write("输入字符串");
                        string Mystr = Console.ReadLine();
                        Class4 str = new Class4();//实例化处理字符串的类
                        str.Str = Mystr;
                        Console.Write("1:字符串的长度为{0}\n2:第一次出现A或a 的位置是;{1}\n3:插入hello后的字符串{2}\n4:将hello替换成me后的字符串{3}\n"
                            , str.Length(), str.aLoction(), str.addStr(), str.ediStr(str.addStr()));
                        Console.Write("5:用m分割后的字符串{0}",str.splitStr(str.ediStr(str.addStr())));

运行截图


不足之处还望指点!

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
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(不区分大小写)时,程序停止接受用户的输入,并且显示出用户输入的学生的个数,以及每个学生的姓名。效果如图:

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值