找资料找试卷就是这么简单
快捷登录 微信扫码登录
考试资料首页> 软件水平考试> 初级程序员

阅读以下说明和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不是回文数时执行循环*/

  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;

 }

上传者:舍得老师 查看答案数:20049
相关推荐
7天畅享卡
¥9.80
季卡
¥49.90
推荐
年卡
¥99.80
paylogo
支付0.00