1.要求输入一个整数,将整数上为偶数的数取出,并按照原来从高位到低位相反的顺序组成一个新数,例如,输入一个整数27638496,输出为64862;
源代码:
#include<stdio.h>
#include<stdlib.h>
#include<conio.h>
void fun(long s,long *t)
{
int d;
long s1 = 1;
*t = 0;//初始化必不可少
while(s > 0)
{
d = s % 10;//求数s的个位数
if(d % 2 == 1)//如果个位数为奇数
{
*t = d * s1 + *t;//作为一个新数的某位数
s1 *= 10;//控制位,比如千位,百位,十位
}
s /= 10;//更新s的最新个位数
}
}
void main()
{
long s,t;
system("CLS");
printf("\n Please enter s:");
scanf("%ld",&s);
fun(s,&t);
printf("The result is : %ld\n",t);
}
2.将长整数中各位上为奇数的数依次取出,构成一个新数并输出,例如输入87653142,输出7531
源代码:
#include<stdio.h>
#include<stdlib.h>
#include<conio.h>
void fun(long s,long *t)
{
int d;
long s1 = 1;
*t = 0;//初始化必不可少
while(s > 0)
{
d = s % 10;//求数s的个位数
if(d % 2 == 1)//如果个位数为奇数
{
*t = d * s1 + *t;//作为一个新数的某位数
s1 *= 10;//控制位,比如千位,百位,十位
}
s /= 10;//更新s的最新个位数
}
}
void main()
{
long s,t;
system("CLS");
printf("\n Please enter s:");
scanf("%ld",&s);
fun(s,&t);
printf("The result is : %ld\n",t);
}