基于visual Studio2013解决C语言竞赛题之0518回文数

原创 2013年12月04日 22:19:31



题目


解决代码及点评

/*
功能:打印所有不超过 n( n<256)的其平方具有对称性的数(也称回文数)

 
*/

#include<stdio.h>
#include<stdlib.h>

int judgReOrd(int);
int getBit(int);		//返回整数值的位数

void main(){
	for (int i = 0; i < 256; i++)
	{
		int flag = judgReOrd(i*i);			//进入函数判断是否为回文数 1为回文,0为非回文
		if (flag == 1)
			printf("%d * %d = %d \n",i,i,i*i);
	}
	system("pause");
}

int judgReOrd(int n){
	int a[10] = { 0 };
	int t = getBit(n);
	for (int i = 0; i < t; i++){			//将每一位数传给数组a

		a[i] = n % 10;
		n /= 10;
	}
	/*for (int i = 0; i < t; i++){

		printf("%d",a[i]);
	}*/
	
	int flag = 1;							//标示符flag 1位回文
	for (int i = 0; i<t / 2; i++){			//利用数组下标判断是否为回文数

		if (a[i] != a[t-1-i]){
			flag = 0;
			break;
		}
	}
	return flag;
}

int getBit(int n){
	int x = 0;
	while (n > 0){
		x++;
		n /= 10;
	}
	return x;
}



代码编译以及运行

由于资源上传太多,资源频道经常被锁定无法上传资源,同学们可以打开VS2013自己创建工程,步骤如下:

1)新建工程

2)选择工程

3)创建完工程如下图:

4)增加文件,右键点击项目

5)在弹出菜单里做以下选择

6)添加文件

7)拷贝代码与运行


程序运行结果





版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

基于visual Studio2013解决C语言竞赛题之0304整除数

题目解决代码及点评 #include #include void main() { int a; printf("please input a\n"); scanf_s("%d",&a); ...

基于visual Studio2013解决C语言竞赛题之1035最大数

题目解决代码及点评/* 35. 用随机函数求出10组三位正整数,每组十个数, 调用一函数打印出每组数,并编一函数求出每组中的最大数。 */ #include #include #define N...

基于visual Studio2013解决C语言竞赛题之0416完数

题目解决代码及点评/************************************************************************/ /* 16. 一个数如果恰好等...

基于visual Studio2013解决C语言竞赛题之0413同构数

题目解决代码及点评/************************************************************************/ /* 13. 一个数恰好等于它...

基于visual Studio2013解决C语言竞赛题之1082迷宫

题目解决代码及点评/************************************************************************/ /* 82. 试编写一个程序寻...

基于visual Studio2013解决C语言竞赛题之1021九九乘法表

题目解决代码及点评/* 功能:请编程序按如下格式打印一个直角三角形的九九乘法表: 1 2 3 4 5 6 7 8 9 4 6 ...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:基于visual Studio2013解决C语言竞赛题之0518回文数
举报原因:
原因补充:

(最多只允许输入30个字)