C/C++语言经典实用趣味程序设计编程百例精解(3)

来源:互联网 发布:淘宝级别后面的雷锋侠 编辑:程序博客网 时间:2024/05/03 16:20

 


2008-08-08 14:23
1.4位反序数

#include<stdio.h>

int main()

{

int i;

for(i=1002;i<1111;i++) /*穷举四位数可能的值*/

if(i%10*1000+i/10%10*100+i/100%10*10+i/1000==i*9)

/*判断反序数是否是原整数的9倍*/

printf("The number satisfied stats condition is: %d/n",i);

/*若是则输出*/

}

个人优化


#include<stdio.h>
int main()
{
int i;
for(i=1009;i<1111;i+=10) //千位为1,个位则为9缩短步长
if(i%10*1000+i/10%10*100+i/100%10*10+i/1000==i*9)
printf("The number satisfied stats condition is: %d/n",i);
}

2.求车速

 

#include<stdio.h>

int main()

{

int t,a[5]; /*数组a存放分解的数字位*/

long int k,i;

for(i=95860;;i++) /*以95860为初值,循环试探*/

{

for(t=0,k=100000;k>=10;t++) /*从高到低分解所取i值的每位数*/

{ /* 字,依次存放于a[0]~a[5]中*/

a[t]=(i%k)/(k/10);

k/=10;

}

if((a[0]==a[4])&&(a[1]==a[3]))

{

printf("The new symmetrical number kelometers is:%d%d%d%d%d/n",

a[0],a[1],a[2],a[3],a[4]);

printf("The velocity of the car is: %.2f/n",(i-95859)/2.0);

break;

}

}

}

10.求素数

#include<stdio.h>

int main()

{

int n1,nm,i,j,flag,count=0;

do{

printf("Input START and END=?");

scanf("%d%d",&n1,&nm); /*输入求素数的范围*/

}while(!(n1>0&&n1<nm)); /*输入正确的范围*/

printf("………..PRIME TABLE(%d%d)…………/n",n1,nm);

if(n1==1||n1==2) /*处理素数2*/

{

printf("%4d",2);

n1=3;count++;

}

for(i=n1;i<=nm;i++) /*判定指定范围内的整数是否为素数*/

{

if(!(i%2))continue;

for(flag=1,j=3;flag&&j<i/2;j+=2)

/*判定能否被从3到整数的一半中的某一数所整除*/

if(!(i%j))flag=0; /*若能整除则不是素数*/

if(flag) printf(++count%15?"%4d":"%4d/n",i);

}

}

 

原创粉丝点击