标签:count 10 丢弃 int n% long 位数 逆序 统计数字
统计数字位数:
输入数字 丢弃位数 余下数字 丢弃个位数字
1234 个位 123 n/=10
123 十位 12
12 百位 1
1 千位 0
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
int main()
{
long long n;
long long m;
scanf("%lld", &n);
m = n;
int count = 0;
while (n != 0)
{
count++;
n /= 10;//丢弃个位数字
}
if (m ==0)//考虑n为0的情况
count = 1;
printf("%lld是个%d位数字\n", m, count);
return 0;
}
逆序输出整数的每一位
输入数字 丢弃位数 得到个位 丢弃个位
1234 4 n%10 n/=10
123 3
12 2
1 1
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
int main()
{
long long n;
scanf("%lld", &n);
if(n<0)
{
printf("-");
n = -n;
}
while (n != 0)
{
printf("%d",n%10);//得到个位数字并且输出(逆序)
n /= 10;//丢弃个位
}
return 0;
}
顺序输出整数的每一位
输入数字 丢弃位数 余下数字 得到最高位 丢弃最高位
12345 1 2345 n/10000 n%=10000
2345 2 345 n/1000 n%=1000
345 3 45 n/100 n%=100
45 4 5 n/10 n%=10
5 5 0 n/1 n%=1
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
int main()
{
long long n;
long long m;
scanf("%lld", &n);
m = n;
int count = 0;
while (n != 0)
{
count++;
n /= 10;
}
n = m;
int power = pow(10, count - 1);//得到10的倍数
while (n != 0)
{
printf("%lld", n / power);
n %= power;//丢掉最高位
power /= 10;
}
return 0;
}
//运用递归
void Show(int n)
{
if(n<10)
printf("%d",n);
else
{
Show(n/10);
printf("%d",n%10);
}
}
int main()
{
Show(123456);
return 0;
标签:count,10,丢弃,int,n%,long,位数,逆序,统计数字 来源: https://blog.csdn.net/m0_56511764/article/details/120930457
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。