/*-------------------------------------------------------C语言部分------------------------------------------------------------------*/
/*1.将一个数的数码倒过来所得到的新数叫原数的反序数。如果一个数等于它的反序数,则称它为对称数。计算不超过1993的最大的二进制的对称数。*/
#include <stdio.h>
int count(int n)
{
int a[4],i = 0,flag; //flag为是否是对称数的标记,若为对称数为1,否则为0
while(n != 0) //获取n的四位数字分别放到a数组中
{
a[i] = n % 10; //获取n的末位数字
n = n / 10;
i++;
}
if(i == 2) //n为两位数的情况
{
if(a[0] == a[1])
flag = 1;
else
flag = 0;
}
else if(i == 3) //n为三位数的情况
{
if(a[0] == a[2])
flag = 1;
else
flag = 0;
}
else //n为四位数的情况
{
if(a[0] == a[3] && a[1] == a[2])
flag = 1;
else
flag = 0;
}
return flag;
}
void main()
{
int i,max = 0,flag;
for(i = 0;i < 1993;i++)
{
flag = count(i);
if(flag == 1 && i >= max) /
东北大学计算机专业研究生入学考试2005年真题
最新推荐文章于 2021-05-25 09:27:58 发布
本文包含三道C语言编程题,涉及对称数判断、字符串删除及邮票面值最大R值求解。此外,还涵盖数据结构部分,包括哈希表删除、二叉树祖先节点打印及有向图路径判断的算法设计。
摘要由CSDN通过智能技术生成