① c语言回文数
#include<stdio.h>
main()
{intn,i,j,k,l,m,sum,a[100],b[100];
while(1){
scanf("%d",&n);
for(i=0;i<n;i++)
scanf("%d",&a[i]);
for(i=0;i<n;i++){
m=a[i];k=0;l=0;sum=0;
b[0]=m%10;sum=b[0];
while(m){
m/=10;
k++;
b[k]=m%10;
sum+=b[k];
}
for(j=0;j<k/2;j++)
if(b[k-j-1]==b[j])l++;
if(l>=k/2)printf("%d
",sum);
elseprintf("NO
");
}
printf("
");
}
}
如图所示,望采纳。。。。。。
② C语言 求哪些是回文数
函数的定义不要放在某个函数之内。
修改把图中红色框内代码单独放在main函数外面。
③ C语言求解回文数问题
已作修改:
#include<stdio.h>
main()
{ int a,b[10]= {0},tag=1,i=0;
int j,k;
scanf("%d",&a);
while(a>0)
{ b[i++]=a%10;
a/=10;
}
k=i-1;
for(j=0; j<i; j++)
{ if(b[j]!=b[k])
{ tag=0;
break;
}
k--;
}
if(tag==1)
puts("yes");
else
puts("no");
}
其实该程序大可不必写得这么复杂。另一种写法:
#include<stdio.h>
main()
{ int a,b=0,a1;
scanf("%d",&a);
for(a1=a;a>0;a/=10)
b=b*10+a%10;
puts(b==a1?"yes":"no");
}
④ c语言里的 回文数是什么
就是左右到中间加起来一样的数
如 12321,4004
⑤ C语言回文算法
我前几天刚好做过类似题,这里才3位数比较简单,已经调试并运行过了,绝对准确!
main()
{
int
n,i,a[5];
for(i=10;i<=200;i++)/*回文数至少为两位数,即大于9*/
{
if(i/100>=1)/*三位数得情况*/
{
a[0]=i/100;/*百位数*/
a[1]=i%100/10;
a[2]=i%10;
if(a[0]==a[2])printf("\n%d",i);
}
else
/*两位数得情况*/
{
a[0]=i/10;
a[1]=i%10;
if(a[0]==a[1])printf("\n%d",i);
}
}
}
⑥ C语言编程回文数
main()
{
int x,n,i,j,a[20],c;
long sum;
scanf("%d",&n);
for (x=1;x<=n;x++)
{ sum=x*x;
for(i=1;i<20;i++)
a[i]=0;
for (i=1;i<20;i++)
{a[i]=sum%10;
sum=sum/10;
if (sum==0) break;
}
if (i%2==0) {c=0; for (j=1;j<=i/2;j++) {if(a[j]!=a[i+1-j]) c=1;}
if (c==0){printf("%d %d\n",x,x*x);}}
else {c=0; for (j=1;j<=(i-1)/2;j++) {if (a[j]!=a[i+1-j]) c=1;}
if (c==0){printf("%d %d\n",x,x*x);}}
}
}
⑦ C语言求回文数
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
intsvalue(long);
voidmain()
{
longi,j,k;
for(i=11;i<1000;i++)
{
j=i*i;
k=j*i;
if(svalue(i)&&svalue(j)&&svalue(k))
printf("%ld %ld %ld ",i,j,k);
else
continue;
}
}
intsvalue(longm)
{
inta[9]={0,0,0,0,0,0,0,0,0};//1000的立方为1000000000
inti=0,j=0;
a[0]=m/100000000;
a[1]=m%100000000/10000000;
a[2]=m%10000000/1000000;
a[3]=m%1000000/100000;
a[4]=m%100000/10000;
a[5]=m%10000/1000;
a[6]=m%1000/100;
a[7]=m%100/10;
a[8]=m%10;
for(i=0;i<9;i++)
{
if(0==a[i])
{
j++;
}
elseif(0!=a[i])
{
break;
}
}
for(i=j;i<9;i++)
{
if(a[i]!=a[8+j-i])
{
return0;
}
}
return1;
}
⑧ c语言如何求回文数
1、首先打开vc6.0,新建一个控制台项目。
⑨ C语言怎么判断一个数是否是回文数
所谓回文数,就是说一个数字从左边读和从右边读的结果是一模一样的,比如12321。
以下是判断一个数是否为回文数的代码:
⑩ C语言编回文数
#include <stdio.h>
#include <stdlib.h>
int huiwen(char *str) /* 回文子函数 */
{
int len=strlen(str);
int i=0;
for(i=0; i<len/2; i++) {
if(*(str+i) != *(str+len-1-i)) return 1;
}
return 0;
}
int main()
{
int i=0;
char str[5];
int hw6[10000] = {0};
int cnt=0;
int max=0;
printf("所有回文数:\n");
for(i=9999; i>=100; i--) {
memset(str, 0, 5);
sprintf(str, "%d", i);
if(huiwen(str) == 0) {
printf("%d\n", i); /* 这里把所有回文数打印出来 */
if(i % 6 == 0) {
hw6[cnt++] = i; /* 记录下被6整除的回文数 */
if(max == 0)
max = i; /* 最大被6整除的回文数,只会被执行一次 */
}
}
}
printf("能被6整除的回文数:\n");
for(i=0; i<cnt; i++) {
printf("%d\n", hw6[i]);
}
printf("最大回文数: %d\n",max);
}