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等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)