c语言如何用指针指向一个数的某一位吖?
答案:3 悬赏:30 手机版
解决时间 2021-01-21 19:48
- 提问者网友:相思似海深
- 2021-01-21 00:53
c语言如何用指针指向一个数的某一位吖?
最佳答案
- 五星知识达人网友:廢物販賣機
- 2021-01-21 02:28
main()
{
int n=1023,a,b,c,d,*pb=&b,*pd=&d;
a=n/1000;b=n/100%10;c=n/10%10;d=n%10;
*pb=*pb+*pd; *pd=*pb-*pd; *pb=*pb-*pd;
n=a*1000+b*100+c*10+d;
printf("%d",n); // 输出1320
}追答只要把数字拆散成若干个一位数,就可以用指针来指向他们了
{
int n=1023,a,b,c,d,*pb=&b,*pd=&d;
a=n/1000;b=n/100%10;c=n/10%10;d=n%10;
*pb=*pb+*pd; *pd=*pb-*pd; *pb=*pb-*pd;
n=a*1000+b*100+c*10+d;
printf("%d",n); // 输出1320
}追答只要把数字拆散成若干个一位数,就可以用指针来指向他们了
全部回答
- 1楼网友:長槍戰八方
- 2021-01-21 04:28
不能,只能通过除法计算追问但是这个题目怎么做?用指针实现百位和个位调换追答整型数据?追问嗯追答如果费用要用指针的话,麻烦点可以通过字符和整型数据之间转化来实现,不过感觉完全没必要。
通过简单的计算很简单比如对于一个数x(三位以上)
a=x%10 个位
b=x/10%10十位
c=x/100%10 百位
x=x-x%1000
x=x+a*100+b*10+c
通过简单的计算很简单比如对于一个数x(三位以上)
a=x%10 个位
b=x/10%10十位
c=x/100%10 百位
x=x-x%1000
x=x+a*100+b*10+c
- 2楼网友:轮獄道
- 2021-01-21 03:47
用掩码来获取单位数追问比如不懂追答
比如要获取变量x的二进制第n位,可以使用如下代码int get = (1<如果作为十进制处理,比如要获取变量x的第n位,如下:int get = (x/((int)pow(10,n-1))) % 10;
指针运算的时候只能对二进制进行处理,除非...
比如交换十位和百位#include
#include
#include
#include
int main()
{
char c[999];
scanf("%[0-9]",c);
int l = strlen(c);
char* a = c+l-2;
char* b = c+l-3;
*a += *b,*b = *a-*b,*a-=*b;
printf("%s",c);
}
比如要获取变量x的二进制第n位,可以使用如下代码int get = (1<
指针运算的时候只能对二进制进行处理,除非...
比如交换十位和百位#include
#include
#include
#include
int main()
{
char c[999];
scanf("%[0-9]",c);
int l = strlen(c);
char* a = c+l-2;
char* b = c+l-3;
*a += *b,*b = *a-*b,*a-=*b;
printf("%s",c);
}
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯