用c#判断回文数和降序数

该程序使用C#编写,旨在检测输入的正整数是否为回文数和降序数。当输入为0时,程序终止。回文数是指正读反读都相同的数,而降序数则是指低位数字不大于高位数字的自然数。代码实现了这两个条件的检查功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

题目:编一个程序,输入一个正整数,判定它是否为回文数和降序数。当输入的数为0时,则退出程序,否则继续循环执行程序。

所谓“降序数”是指一个自然数的低位数字不大于高位数字的数。例如: 64, 55, 321都认为是降序数,但是623不是降序数。一位数字被认为是降序数。

所谓“回文数”是指读一个自然数,从正方向读和反方向读,结果是一样的。例如: 646,1551,891232198都认为是回文数。

具体实现代码如下:

                do
                {
                    string str;
                    bool a = true, b = true;//用于判断回文数和降序数
                    int[] nums;
                    Console.Write("请输入一个数(输入0退出):");
                    str = Console.ReadLine();
                    if (str.Equals("0")) { break; }
                    nums = new int[str.Length];

                    //赋值和判断降序数
                    for (int i = 0; i < str.Length; i++)
                    {
                        nums[i] = int.Parse(str[i].ToString());
                        if (i > 0 && nums[i] > nums[i - 1]) { a = false; }
                    }

                    //判断回文数
                    for (int i = 0, j = str.Length - 1; i < str.Length && j >= 0; i++, j--)
                    {
                        if (nums[i] != nums[j]) { b = false; }
                    }
                    if (b) { Console.WriteLine("‘{0}’是回文数", str); }
                    else { Console.WriteLine("‘{0}’不是回文数", str); }
                    if (a) { Console.WriteLine("‘{0}’是降序数", str); }
                    else { Console.WriteLine("‘{0}’不是降序数", str); }
                    a = true;b = true;//重置
                } while (true);

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值