28059人加入学习
(78人评价)
C#编程-第一季-编程基础-宇宙最简单2021最新版

制作完成于2021年10月10日,使用Visual Studio 2019

价格 免费
using System;

namespace _022_编程题
{
    class Program
    {
        static void Main(string[] args)
        {
            int n = Convert.ToInt32(Console.ReadLine());
            //标志位,标志是否达到了某个条件
            bool yudao = false;// 默认还没有遇到第一个非0数字
            while (n != 0)//从低位到高位遍历
            {
                int i = n % 10;// 23407800    i= 0 0 8 7 0 4 3 2
                //判断是否遇到了第一个非0数字
                //    不需要去掉0
                //还没有遇到第一个非0数字
                //    需要去掉0
                if (yudao==false)//还没有遇到第一个非0数字
                {
                    if (i != 0)//i=8
                    {
                        Console.Write(i);
                        yudao = true;
                    }
                }
                else //i=7
                {
                    Console.Write(i);
                }
                n /= 10;
            }
        }
    }
}

 

[展开全文]

static void Main(string[] args)
        {
            int n = Convert.ToInt32(Console.ReadLine());
            string s = "";
            while (n != 0)
            {
                s += Convert.ToString(n % 10);
                n /= 10;
            }
            Console.WriteLine(Convert.ToInt32(s));
        }

[展开全文]

 int num = Convert.ToInt32(Console.ReadLine());
      

          
               while( num % 10==0)
                { num /= 10; 
                }
              
               
               while(num!=0)
                {
                    int i = num % 10;
                Console.Write(i);
                    num /= 10;
                }

[展开全文]

int n = Convert.ToInt32(Console.ReadLine());
            bool a = false;
            while (n != 0)
            {
                int i = n % 10;
                if (i != 0)
                {
                    Console.Write(i);
                   a = true;
                }
                if (a&&i==0)
                {
                    Console.Write(i);
                }
                n = n / 10;
            }

[展开全文]

判断是否遇到了第一个非0数字

已经遇到了第一个非0 数字

不需要去掉0了;

还没遇到第一个非0数字

[展开全文]
int num = new Random().Next(1, 100001);
//num = Convert.ToInt32(Console.ReadLine());
num = 123400;
Console.WriteLine("输入 -> {0}", num);

//获得输入数字的位数
int temp = num;
int count = 0; //num位的个数
int digit = 1; //10^(count-1)
while (temp != 0) 
{
    temp /= 10;
    count++;
    digit *= 10;
}
digit /= 10;

//开始反转数字
int result = 0; //最终结果
int multiply = 1; //反转后每一位对应新数的倍率
for (int i = 0; i < count; i++) 
{
    result += num / digit % 10 * multiply;
    digit /= 10;
    multiply *= 10;
}

Console.WriteLine("输出 -> {0}", result);

我用的这个思路~~~~没有老师的简洁~~~

[展开全文]

第六十五课  编程题(循环体的标志位)

1. 随机输入一个整数num,输出一个新的数,新数恰好与原数每一位上的数字相反,(如果原数末尾有多个零,输出的新数高位不含0)。

int num = Convert.ToInt32(Console.ReadLine());
int temp = 1;
int he = 0;
string fei = "";
while (num > 1)
{
    int i = num % 10;
    num = num / 10;
    if (i > 0)
    {
        fei += i;      
    }    
}
Console.WriteLine(fei);

我这属于作弊不?嘿嘿!先学到这儿,我再想想。

2. 输入一个整数,如果这个数字末尾有数字0,则将末尾的0全部去掉,直到遇到不是零的数字,但输入的整数中间的0保留。

(这个我还没想好!!看了老师的讲解我也得好好反应反应,脑子被搅和乱了。)

int n= Convert.ToInt32(Console.ReadLine());
bool yudao = false;
while (n != 0)
{
    int i = n % 10;
    if(yudao == false)
    {
        if (i != 0)
        {
            Console.Write(i);
            yudao = true;
        }
    }
    else{
        Console.Write(i);
    }
    n = n / 10;

利用bool的两个判断的性质,来从一个判断中跳到另一个判断,这样的方法很好用,很经典Console.Write(i);

yudao = true;

这里的输出语句输出了一个数字,就是被判断不为零的第一个数字,所以要输出一下,然后将判断更改为另一面,就是true,跳出满足false条件的判断。

标志位:(个人定义的哈)

标记一个条件来判断,从而满足条件后跳出此标记的判断,并进入另一条语句。

其实没那么难,如果当时反应不过来就先干别的,回头再想,逻辑这东西如果不是天生的好,那么大家就都一样。

[展开全文]

授课教师

SiKi学院老师

课程特色

下载资料(1)
视频(118)
图文(2)