编写c程序实现从一个整数a中取出自右端开始的n~m位 。最低位假设为第0位

发布时间:2024-05-17 23:32 发布:上海旅游网

问题描述:

问题解答:

#include <stdio.h>
main()
{
long a,b=0;
int m,n;
scanf("%ld",&a);
scanf("%d%d",&m,&n);
long temp=a;
for(int i=0;i<n;i++) temp/=10;
for(;i<=m;i++)
{
static t=1;
b+=t*(temp%10);
temp/=10;
t*=10;
}
printf("%ld",b);
}

#include <stdio.h>
int ConverseData(int num)
{
int numb=num,i=0,*p=NULL,j,ret=0;
while(numb!=0)
{
i++;
numb=numb/10;
}
p=(int *)malloc(sizeof(int)*i);
numb=num;
i=0;
while(numb!=0)
{
p[i++]=numb%10;
numb/=10;
}
for(j=0;j<i;j++)
ret=ret*10+p[j];

return ret;

}
int GetSome(int num,int stat,int end)
{
int numb=num,i,ret=0,count=0;
int sav[6];
for(i=0;i<6;i++)
sav[i]=0;
while(numb!=0)
{
sav[count++]=numb%10;
numb=numb/10;
}
for(i=stat;i<=end;i++)
ret=ret*10+sav[i];
ret=ConverseData(ret);

return ret;

}
void main()
{
int t;
t=GetSome(1234,1,2);
printf("%d\n",t);

}不知道是不是这样的形式?!

热点新闻