给一个不多于5位的整数, 要求输出它是几位数, 每一个数字是什么, 再反向输出这个数
2012-10-01 00:11
267 查看
#include <stdio.h>
#include <stdlib.h> //exit的包含函数
void sort(int, int, int, int); //函数声明
int main()
{
int num;
printf("\n请输入一个不多于5位的正整数: ");
scanf("%d", &num);
//检查是不是不多于五位, 是的话退出程序并提示输入错误
if (num > 99999)
{
printf("\n你输入的数有误!程序即将退出!");
exit(0); //终止整个程序
}
if(num > 9999) //说明是五位数
{
printf("你输入的是一个5位数!\n");
sort(num, 5, 10000, 0);
exit(0);
}
if(num > 999)
{
printf("你输入的是一个4位数!\n");
sort(num, 4, 1000, 0);
exit(0);
}
if(num > 99)
{
printf("你输入的是一个3位数!\n");
sort(num, 3, 100, 0);
}
if(num > 9)
{
printf("你输入的是一个2位数!\n");
sort(num, 2, 10, 0);
}
else
{
printf("你输入的是一个1位数!\n");
sort(num, 1, 1, 0);
}
return 0;
}
//调用函数实现输出每一位, 再反向输出这个数
void sort(int num,int n, int t, int sum) //参数为数字的位数与t, sum的初始值
{
//num为输入的数字
//n为确定的位数
//t为确定位数后对应的倍数
//sum为了存放反向输出的数
int i = 1, w;
for (;i <= n;num = num/10, i++, t = t/10) //条件
{
w = num%10; //取出位数
printf("从右到左第%d位数字是: %d\n", i, w); //打印
sum = sum + w*t;
}
printf("反向输出这个数是: %d\n", sum);
}
**********************在vc++6.0中结果为**************************
请输入一个不多于5位的正整数: 68543
你输入的是一个5位数!
从右到左第1位数字是: 3
从右到左第2位数字是: 4
从右到左第3位数字是: 5
从右到左第4位数字是: 8
从右到左第5位数字是: 6
反向输出这个数是: 34586
Press any key to continue
#include <stdlib.h> //exit的包含函数
void sort(int, int, int, int); //函数声明
int main()
{
int num;
printf("\n请输入一个不多于5位的正整数: ");
scanf("%d", &num);
//检查是不是不多于五位, 是的话退出程序并提示输入错误
if (num > 99999)
{
printf("\n你输入的数有误!程序即将退出!");
exit(0); //终止整个程序
}
if(num > 9999) //说明是五位数
{
printf("你输入的是一个5位数!\n");
sort(num, 5, 10000, 0);
exit(0);
}
if(num > 999)
{
printf("你输入的是一个4位数!\n");
sort(num, 4, 1000, 0);
exit(0);
}
if(num > 99)
{
printf("你输入的是一个3位数!\n");
sort(num, 3, 100, 0);
}
if(num > 9)
{
printf("你输入的是一个2位数!\n");
sort(num, 2, 10, 0);
}
else
{
printf("你输入的是一个1位数!\n");
sort(num, 1, 1, 0);
}
return 0;
}
//调用函数实现输出每一位, 再反向输出这个数
void sort(int num,int n, int t, int sum) //参数为数字的位数与t, sum的初始值
{
//num为输入的数字
//n为确定的位数
//t为确定位数后对应的倍数
//sum为了存放反向输出的数
int i = 1, w;
for (;i <= n;num = num/10, i++, t = t/10) //条件
{
w = num%10; //取出位数
printf("从右到左第%d位数字是: %d\n", i, w); //打印
sum = sum + w*t;
}
printf("反向输出这个数是: %d\n", sum);
}
**********************在vc++6.0中结果为**************************
请输入一个不多于5位的正整数: 68543
你输入的是一个5位数!
从右到左第1位数字是: 3
从右到左第2位数字是: 4
从右到左第3位数字是: 5
从右到左第4位数字是: 8
从右到左第5位数字是: 6
反向输出这个数是: 34586
Press any key to continue
相关文章推荐
- 给一个不多于5位的正整数,要求:①求出它是几位数;②分别输出每一位数;③按逆序输出各位数字
- 给出一个不多于5位的整数,要求 1、求出它是几位数 2、分别输出每一位数字 3、按逆序输出各位数字,例如原数为321,应输出123
- 给出一个不多于5位的整数,要求 1、求出它是几位数 2、分别输出每一位数字 3、按逆序输出各位数字,例如原数为321,应输出123
- 给一个不多于5位的整数,要求(1)求出他是几位数(2)分别输出每一位数字(3)按逆序输出各位数字,例如原数为321,应输出123
- 给出一个不多于5位的整数,要求 1、求出它是几位数 2、分别输出每一位数字 3、按逆序输出各位数字,例如原数为321,应输出123
- (c++)给出一个不多于5位的整数,要求 1、求出它是几位数 2、分别输出每一位数字 3、按逆序输出各位数字,例如原数为321,应输出123
- 给出一个不多于5位的整数,要求 1、求出它是几位数 2、分别输出每一位数字 3、按逆序输出各位数字,例如原数为321,应输出123
- 【c语言】给一个不多于5位的正整数,要求: 1、求出它是几位数 2、分别输出每一位数字 3、按逆序输出各位数字
- 给一个不多于5位的正整数,要求:1、求出它是几位数;2、分别打印出每一位数字; 3、按逆序打印出各位数字,例如原数为321,应输出123。
- 【C语言】输入一个不多于5位的正整数,要求:(1)输出它是几位数,(2)按逆序输出各位数字,(3)按顺序输出各位数字
- 习题 4.9 给一个不多于5位的正整数,要求:1. 求出它是几位数;2. 分别输出每一位数字;3. 按逆序输出各位数字,例如原数为321,应输出123。
- 给一个不多于5位的正整数,要求:一、求它是几位数,二、逆序打印出各位数字
- 给一个不多于5位的正整数,要求:一、求它是几位数,二、逆序打印出各位数字。
- 给出一个不多于5位的正整数,(1) 求出它是几位数(2) 分别打印出每一位数字(3) 按逆序打印出各位数字,例如原数为321,应输出123
- 给一个不多于5位的正整数,要求:一、求它是几位数,二、逆序打印出各位数字
- 输入一个不多于5位的正整数。1、求出它是几位数;2、分别输出每一位数字;3、按逆序输出各位数字。
- 输入一个不多于5位的正整数,要求:一、求它是几位数,二、逆序打印出各位数字。
- 【程序24】 题目:给一个不多于5位的正整数,要求: 一、求它是几位数,二、逆序打印出各位数字。
- 给一个不多于5位的正整数,要求:求它是几位数并且逆序打印出各位数字。
- 给一个不多于5位的正整数,要求:一、求它是几位数,二、逆序打印出各位数字