閱讀以下說明和C 程序代碼,將應填入 (n) 處的字句寫在答題紙的對應欄內。
【說明】
下面C 程序代碼的功能是:對于輸入的一個正整數n(100≤n<1000),先判斷其是否是回文數(正讀反讀都一樣的數)。若不是,則將 n 與其反序數相加,再判斷得到的和數是否為回文數,若還不是,再將該和數與其反序數相加并進行判斷,依此類推,直到得到一個回文數為止。例如,278 不是回文數,其反序數為 872,相加后得到的 1150還不是回文數,再將1150與其反序數511相加,得到的1661是回文數。
函數int isPalm(long m)的功能是:將正整數m的各位數字取出存入數組中,然后判斷其是否為回文數。若m是回文數則返回1,否則返回0。
【C 程序代碼】
#include <stdio.h>
#include <stdliB.h>
int isPalm(long m)
{ /*判斷m是否為回文數*/
int i = 0, k = 0;
char str[32];
while (m > 0) { /*從個位數開始逐個取出m的各位數字并存入字符數組str*/
str[k++] = (1) + ’0’;
m = m / 10;
}
for(i = 0; i < k/2; i++) /*判斷str中的k個數字字符序列是否是回文*/
if ( str[i] != str[ (2) ] ) return 0;
return 1;
}
int main( )
{
long n, a, t;
printf("input a positive integer:"); scanf("%ld",&n);
if (n < 100 || n > =1000) return -1 ;
while( (3) ) { /*n不是回文數時執(zhí)行循環(huán)*/
printf("%ld -> ", n);
for(a = 0, t = n; t > 0; ) { /*計算n的反序數并存入a*/
a = (4) *10 + t % 10; t = t / 10;
} /*end of for*/
n = (5) ; /*與反序數求和*/
} /*end of while*/
printf("%ld\n",n);
system("pause"); return 0;
}