C语言求123几位数编程,c语言编写程序?

c5bc608291bcc07bce3a8286262fef5c.png

2006-10-27

一个两位数的正整数,如果将它的个位数字与十位数字对调,则产生另一个正整数,我们把后者叫做前者的对调数。现给定一个两位的正整数,请找到另一个两位的正整数,使得这两位正整数之和等于它们各自的对调数之各。例如,12+32=23+21。编写程序,把具有这种特征的一对两位正整数都找出来

public class Test

{

private static int getExchangeNumber( int iNum )

{

String sNum = String。 valueOf( iNum );

return Integer。parseInt( "" + sNum。charAt( 1 ) + sNum。charAt( 0 ) );

}

private static void getTheNumber( int iNum )

{

String sNum = String。 valueOf( iNum );

if( sNum。length() != 2 )

{

Sy...全部

public class Test

{

private static int getExchangeNumber( int iNum )

{

String sNum = String。

valueOf( iNum );

return Integer。parseInt( "" + sNum。charAt( 1 ) + sNum。charAt( 0 ) );

}

private static void getTheNumber( int iNum )

{

String sNum = String。

valueOf( iNum );

if( sNum。length() != 2 )

{

System。out。println( "错误的输入!" );

return;

}

if( sNum。

charAt( 1 ) == '0' || sNum。charAt( 0 ) == sNum。charAt( 1 ) )

{

System。out。println( "没有符合条件的数!" );

return;

}

String sNewNum = "" + sNum。

charAt( 1 ) + sNum。charAt( 0 );

int iNewNum = Integer。parseInt( sNewNum );

int iSum = iNum + iNewNum;

int iCount;

if( ( (iSum) % 2 == 0 ) )

iCount = (iSum)/2;

else

iCount = (iSum)/2 + 1;

for( int i=12; i<=iCount; i++ )

{

int iExNum = getExchangeNumber( i );

if( i + iExNum == iSum )

{

System。

out。println( iExNum );

if( i != iNum && i != iExNum )

System。out。println( i );

}

}

}

public static void main( String[] args )

{

if( args。

length == 0 )

{

System。out。println( "请输入一个两位的整数!" );

return;

}

else

{

try

{

int i = Integer。

parseInt( args[0] );

getTheNumber( i );

}

catch( Exception e )

{

System。out。

println( "请输入一个两位的整数!" );

}

}

}

}。收起

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值