C#--第2周实验--任务7--编写一个控制台应用--判断S所指的字符串是否回文(即顺读和逆读相同的字符串)

/* (程序头部注释开始)
* 程序的版权和版本声明部分
* Copyright (c) 2011, 烟台大学计算机学院学生
* All rights reserved.
* 文件名称:判断S所指的字符串是否回文(即顺读和逆读相同的字符串)

* 作 者: 雷恒鑫
* 完成日期: 2012 年 09 月 09 日
* 版 本 号: V1.0
* 对任务及求解方法的描述部分
* 输入描述:
* 问题描述:
* 程序输出:

* 程序头部的注释结束

*/

 

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication_do_while
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("这是一个判断您所输入的字符串是否“回文”的程序");
            Console.Write("请输入您所要判断的字符串:");
            string s = Console.ReadLine();
            char[] c = s.ToCharArray();
            int i = c.Length;
            int j = c.Length-1;
            char[] c1 = new char[c.Length];
            //利用foreach语句循环输出数组中每一个元素
            foreach (char var in c)
            {
                c1[j] = var;
                --j;   //字符串反向读取
            }
            //bool m = c1.Equals(c);
           // Console.WriteLine("返回值为:{0}", m);
            for (int n = 0; n < c.Length; ++n)
            {
                if (c1[n] != c[n])
                {
                    foreach (char var in c)
                    {
                        Console.Write(var);  //依次读取字符串中的元素

                    }
                    Console.Out.WriteLine("不是回文数。");
                    break;
                }
                if (n == c.Length - 1)
                {
                    foreach (char var in c)
                    {
                        Console.Write(var);
      
                    }
                    Console.Out.WriteLine( " 是回文数。");
                }
            }
          
            
            Console.ReadKey();
        }
    }
}


 运行结果:

 

 

 

 

问题:

1.我用c1.Equals(c)函数,不管c1 和 c两个字符串是否相等,返回值都是False,各位大侠有知道的帮我解答一下,我把这个问题发到论坛上,大家也可以在论坛上给我发帖,谢谢大家了。

以下是这个问题的链接地址:

http://topic.csdn.net/u/20120909/09/c4a3f508-dfd7-4c79-9ef4-6599d783d074.html?25559

 

//bool m = c1.Equals(c);
// Console.WriteLine("返回值为:{0}", m);

以下这两行代码的位置在源程序中注释掉了,大家可以解除注释运行一下,看是否和我说的一样。

经验积累:

1.我学会了foreach语句的使用方法,

 

foreach (char var in c)
                    {
                        Console.Write(var);  //依次读取字符串中的元素

                    }


先执行 in c,在执行 char var.

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

leihengxin

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值