-2
- この行(コードを参照してください)が実行されていない理由を知るのに手伝ってください。
- 私は3桁の最大Palindrome Numberを見つけようとしています。
#include <stdio.h>
int main()
{
long int n, reverse=0, rem,temp, max_palindrom = -1;
int i, j;
for (i = 100; i <= 999; i++)
{
for (j = 100; j <= 999; j++)
{
n = 1*j;
temp=n;
while(temp!=0)
{
rem=temp%10;
reverse=reverse*10+rem;
temp/=10;
}
if(reverse==n)
{
printf("DDDDD"); // < === not executing
}
}
}
printf("%d ", max_palindrom);
return 0;
}
printf( "DDDDD")が実行されないのはなぜですか?本質的に、条件「逆== n」は決して真にならないからです。どのようにそれは本当ですか? 'if(reverse == n)'の条件の上にprintf()文を挿入し、reverseとnの値をチェックします。これはあなたがデバッグする方法です。 –
ええ、私は、基本的にデバッグ作業を行う前にSOに投稿していますので、これをdownvotingしています。 –