c++取整数每位数字

c++取整数每位数字,第1张

Note1:

a%10就取得a的末位数, a/10就删除末位

输入a之後:

b=1;

while(a!=0) { b=b(a%10); a=a/10; }

出了while的b就是答案了

Note2:

main里面写public不行的

#include <stdioh>

#include <stringh>

void main()

{

char str[1000];

int i,n;

gets(str);

n=strlen(str);

for(i=0;i<n;i++)

{

if(str[i]<48||str[i]>57||(int)str[0]==48)

{

printf("\n输入有误,不是整数。\n\n");

break;

}

else if(i>=n-1) 

printf("\n输入的整数是%d位数。\n\n",n);

}

}

运行示例:

拿这个数依次除以这个千、百、十等等,,注意是依次除,求得的整数便是对应位数的各个位数。比如1982除以1000得到1余数982;然后982除以100得到9余数82;然后82除以10得到8余数2;然后2除以1得到2

int n;

char str[32];

puts("Input a integer:");

gets(str);

sscanf(str,"%d",&n);

printf("%d length: %d",n,str[0]=='-'(strlen(str)-1):strlen(str)) ;

getchar();

这个应该能看懂吧

int sort(int a[])

{

int i;

for(i=0;n!=0;i++)

{

a[i]=n%10;

n/=10;

}

return i;

}

void output(int a[], int num)

{

int i;

printf("正向输出:“);

for(i=num-1;i>=0;i--)

printf("%d,", a[i]);

printf("\n");

}

void output_r(int a[], int num)

{

int i;

printf(“逆向输出:“);

for(i=0;i<num;i++)

printf("%d,", a[i]);

printf("\n");

}

int main()

{

int n;

int i, a[10];

scanf(%d", n);

i=sort(a);

printf("位数:%d\n", i);

output(a, i);

output_r(a,i);

}

以上就是关于c++取整数每位数字全部的内容,包括:c++取整数每位数字、C语言怎么判断,整数的位数、如何取出一个数的各个位数,比如143,个位是3,十位是4,百位是1等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9266794.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-26
下一篇 2023-04-26

发表评论

登录后才能评论

评论列表(0条)

保存