你这代码的运行结果是:
创新互联是一家集网站建设,长清企业网站建设,长清品牌网站建设,网站定制,长清网站建设报价,网络营销,网络优化,长清网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。
a.exe
11 101 111
这明显有问题啊,11~999,怎么可能就这三个,下面是我写的回文数的程序,供你参考下吧
#include stdio.h
#define N 1000 //定义符号常量
//判断是否为回文数的函数
int isHuiwenNumber(int n)
{
int sum,tmp;
tmp=n;
sum=0;
while(n) //从低位到高位分解n的每位的数字,然后依次相加
{
sum=sum*10+n%10;
n/=10;
}
if(tmp == sum) //如果重新每位求和的值等于原值,则该数为完数,返回1,否则返回0
return 1;
else
return 0;
}
int main()
{
int i,count;
for(i=11,count=0;iN;i++)
{
if(isHuiwenNumber(i)) //调用函数,如果条件为真,执行if语句体
{
printf("%-6d",i); //输出回文数
count++;
if(count % 20 == 0) //每行输出20个后便换行
printf("\n");
}
}
return 0;
}
#includestdio.h
int main(){
int m[16], n, i, t, count=0;
long unsigned a, k;
printf("No. number it's square(palindrome)\n");
for( n=1; n256; n++ ) /*穷举n的取值范围*/
{
k=0; t=1; a=n*n; /*计算n的平方*/
for( i=0; a!=0; i++ ) /*从低到高分解数a的每一位存于数组m[1]~m[16]*/
{
m[i] = a % 10;
a /= 10;
}
for(; i0; i--)
{
k += m[i-1] * t; /*t记录某一位置对应的权值 */
t *= 10;}
if(k == n*n)printf("%2d%10d%10d\n", ++count, n, n*n);
}
return 0;
}
扩展资料:
C语言在编写的时候需要说明的是:
1、一个C语言源程序可以由一个或多个源文件组成。
2、每个源文件可由一个或多个函数组成。
3、一个源程序不论由多少个文件组成,都有一个且只能有一个main函数,即主函数。是整个程序的入口。
4、源程序中可以有预处理命令(包括include 命令,ifdef、ifndef命令、define命令),预处理命令通常应放在源文件或源程序的最前面。
5、每一个说明,每一个语句都必须以分号结尾。但预处理命令,函数头和花括号“}”之后不能加分号。(结构体、联合体、枚举型的声明的“}”后要加“ ;”)。
6、标识符,关键字之间必须至少加一个空格以示间隔。若已有明显的间隔符,也可不再加空格来间隔。
参考资料:
百度百科-回文数
//首先我认为回文不一定是奇数个;也有可能是偶数个;只要这个字符串
//正读跟反读都一样 那它就是回文 所以不应该把字符串的个数当成是判断回文串的
//一个条件。
#include stdio.h
#include string.h
#include conio.h
bool huiWen(const char *p);
int main()
{
char test[225];
gets(test);
if(huiWen(test))
{
printf("是回文!\n");
}
else
{
printf("不是回文!\n");
}
getch();
return 0;
}
bool huiWen(const char *p)
{
int i=0,n=strlen(p);
while(p[i]==p[n-i-1] in-i-1) //只要相等且还未相遇则继续循环
{
i++;
}
return ((in-i-1)? false:true); //若in-i-1表示中途遇到不相等的字符而退出循环
}