Hzu挑战自我


私信TA

用户名:gxhzxyjsj

访问量:90764

签 名:

2023终究会过去,期待2024!

等  级
排  名 8
经  验 26243
参赛次数 58
文章发表 157
年  龄 0
在职情况 教师
学  校 贺州学院
专  业 软件工程

  自我简介:

弱鸡一个,继续努力!

解题思路:把一个十进制数转换为一个32位二进制数保存到字符数组中,然后判断是否对称即可,用一个变量统计对称个数。

注意事项:

参考代码:

#include<stdio.h>
#include <string.h>
#define N 40
int judge(char a[])  //判断是否对称
{
	int i,j,len;
	len=strlen(a);
	for(i=0,j=len-1;i<j;i++,j--)
		if(a[i]!=a[j])
			return 0;
	return 1;
} 
int main()
{
	char a[N]; 
	unsigned int n;  //注意必须定义无符号整数
	int i,count=0;
	while(scanf("%u",&n)!=EOF)
	{
		for(i=0;i<32;i++)  //转换为二进制数字符串
		{
			a[i]=n%2+'0';
			n=n/2;
		} 
		a[i]='\0';
		if(judge(a))  //对称则加1
			count++;		
	}
	printf("%d",count);
    return 0;
}


 

0.0分

1 人评分

看不懂代码?想转换其他语言的代码? 或者想问其他问题? 试试问问AI编程助手,随时响应你的问题:

编程语言转换万能编程问答  

代码解释器

代码纠错

SQL生成与解释

  评论区