变量变化很荒谬,比如 3 到 51?

Variable changes absurdly like 3 to 51?

我一直在尝试解决代码战问题,但是当我使用 char 转 int 时,我得到了荒谬的结果。

就像我输入 3 作为底数和 3 作为幂但结果

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


namespace SoloLearn
{
class Program
{
    static void Main(string[] args)
    {
    ...

    int cL;
    char[] charArray = Sayı.ToCharArray();

    foreach(char chr in charArray)  // getting digits multiply with himself for L times
    {                             
        cL = chr;                 //    chr İS 3 BUT WHEN ASSİGNED TO cL İT CHANGES TO 51
        Console.WriteLine(chr)    // gives 3
        Console.WriteLine(cL)     // gives 51
        double nmbr = Math.Pow(cL, L);
        ...
    }

字符有代码,您的字符 3 的值为 51。所有字符列表请参见此处:

https://www.w3schools.com/charsets/ref_html_ascii.asp