<1>判断输入的数是一个几位数
创新互联公司-专业网站定制、快速模板网站建设、高性价比上高网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式上高网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖上高地区。费用合理售后完善,十余年实体公司更值得信赖。
这里利用一个简单的while循环即可实现
while (x)
{
if (x / 10 != 0)
suu++;
x = x / 10;
}
<2>按序或逆序输出其各位数字
首先使用数组将数字每一位取出存入数组
for (i = 0; i <= suu; i++)
{
if (n == 1)
a[suu] = n;
a[i] = n % 10;
n = n / 10;
}
最后利用for循环语句将其正反输出即可
完整源代码如下:
#include
#include
int main()
{
int n,suu=1,x,i;
int a[5];//数据最多五位
printf("请输入一个五位以内的正整数\n");
scanf("%d", &n);
x = n;
while (x)//判断位数
{
if (x / 10 != 0)
suu++;
x = x / 10;
}
printf("所输入的数字是一个%d位数\n", suu);
for (i = 0; i <= suu; i++)//各位数存入
{
if (n == 1)
a[suu] = n;
a[i] = n % 10;
n = n / 10;
}
printf("按序输出为:\n");
for (i = suu-1; i >= 0; i--)//按序输出
printf("%4d", a[i]);
printf("\n按逆序输出为:\n");
for (i = 0; i <= suu-1; i++)//按逆序输出
printf("%4d", a[i]);
printf("\n");
system("pause");
return 0;
}