输入一个正整数,按照逆序显示输出各位数字。例如:输入2389,则输出为9832”可是我调试的时候他说我的d没赋

来源:百度知道 编辑:UC知道 时间:2024/06/24 16:43:58
using System;
using System.Collections.Generic;
using System.Text;

namespace ConsoleApplication48
{
class Program
{
static void Main(string[] args)
{
int i,j,k,h,s,d;
Console.WriteLine("请输入一个四位整数。");
i = int.Parse(Console.ReadLine());
for (j = 1; j <= 9; j++)
{
for (k = 1; k <= 9; k++)
{
for (h = 1; h <= 9; h++)
{
for (s = 1; s <= 9; s++)
{
if (j * 1000 + k * 100 + h * 10 + s == i)
d = s * 1000 + h * 100 + k * 10 + j;
Console.WriteLine("经过逆序后的整数为{0}",d);
}
}
}
}<

改成下面这样:

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

namespace ConsoleApplication48
{
class Program
{
static void Main(string[] args)
{
int i,j,k,h,s,d;
Console.WriteLine("请输入一个四位整数。");
i = int.Parse(Console.ReadLine());
for (j = 1; j <= 9; j++)
{
for (k = 1; k <= 9; k++)
{
for (h = 1; h <= 9; h++)
{
for (s = 1; s <= 9; s++)
{
if (j * 1000 + k * 100 + h * 10 + s == i)
{
d = s * 1000 + h * 100 + k * 10 + j;
Console.WriteLine("经过逆序后的整数为{0}",d);
return;
}
}
}
}
}

}
}
}

或者是声明d的时候,给他赋个初值 int d = 0;

你的错误在于你的这一句:
if (j * 1000 + k * 100 + h * 10 + s == i)
d = s * 1000 + h * 100 + k * 10 + j;
Console.WriteLine("经过逆序后的整数为{0}",d);

你的if后面少了{和}所以Console.write语句总会被执行,此时D未赋值,所

VB 随机产生一个三位正整数,然后逆序输出,产生的数与逆序数同时显示 输入一个不多于5位数的正整数,求它的位数和逆序数。 输入一个四位正整数,编写程序将其逆序输出 输入一个等腰三角形,整型数逆序输出 c语言输入一个不多于5位正整数要求:求出它是几位数;分别打印出每一位数字;按逆序输出各位数字。 用C语言编一个程序,逆序输出一个正整数!eg: 1234->4321 任意输入一个正整数,显示该数各位所对应的大写汉字. vf题 :编程 在屏幕上输入一个字符串,回车后显示这个字符串的逆序(如“abc”--回车后"cba")谢谢 编写一个程序,接收用户输入的消息,并按照用户请求多次显示消息 用javascript写一个程序要求输入正整数负数0用对话框显示相应的判断结果