2.给一个不多于5位的正整数,要求: ①求出它是几位数; ②分别输出每一位数字 ③按逆序输出各位数字。
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2.给一个不多于5位的正整数,要求: ①求出它是几位数; ②分别输出每一位数字 ③按逆序输出各位数字。相关的知识,希望对你有一定的参考价值。
#include <stdio.h>
void main()
int x,|1,|2,|3,|4,|5;/* |1 |2 |3 |4 |5代表各位数字*/ ;
printf("请输入一个不多于5位的正整数:");
scanf("%d",&x);
if (x<10)
printf("%d是一个1位数\n",x);
printf("个位数是%d\n",x);
else if (x<100)
printf("%d是一个2位数\n",x);
|1=x/10;
|2=x-|1*10;
printf("个位%d,十位%d\n",|1,|2);
printf("逆序输出:%d",|2*10+|1);
else if (x<1000)
printf("%d是一个3位数的数\n",x);
|1=x/100;
|2=(x-|1*100)/10;
|3=x-|1*100-|2*10;
printf("个位%d,十位%d,百位%d\n",|1,|2,|3);
printf("逆序输出:%d",|3*100+|2*10+|1);
else if(x<10000)
printf("%d是一个4位数的数\n",x);
|1=x/1000;
|2=(x-|1*1000)/100;
|3=(x-|1*1000-|2*100)/10;
|4=x-|1*1000-|2*100-|3*10;
printf("个位%d,十位%d,百位%d,千位%d\n",|1,|2,|3,|4);
printf("逆序输出:%d",|4*1000+|3*100+|2*10+|1);
else
return 0
哪有问题,谢谢
先定义一个整型变量a,键盘输入赋值给a,a对10求余,再a除以10,循环操作,直到a等于0,用一个数组依次储存余数,就是a各位上的数。
//参考代码#include<stdio.h>
int main()
int i=0,j,a,n[6];
scanf("%d",&a);
while(a)
n[i++]=a%10;
a/=10;
printf("它是%d位数\\n",i);
printf("正序输出各数:");
for(j=i-1;j>=0;j--)
printf("%d ",n[j]);
printf("\\n逆序输出各数:");
for(j=0;j<i;j++)
printf("%d ",n[j]);
return 0;
/*
1234
它是4位数
正序输出各数:1 2 3 4
逆序输出各数:4 3 2 1
*/ 参考技术A
#include <stdio.h>
void main()
int x,l1,l2,l3,l4,l5;/* l1 l2 l3 l4 l5代表各位数字*/ ;
printf("请输入一个不多于5位的正整数:");
scanf("%d",&x);
if (x<10)
printf("%d是一个1位数\\n",x);
printf("个位数是%d\\n",x);
else if (x<100)
printf("%d是一个2位数\\n",x);
l1=x/10;
l2=x-l1*10;
printf("个位%d,十位%d\\n",l1,l2);
printf("逆序输出:%d\\n",l2*10+l1);
else if (x<1000)
printf("%d是一个3位数的数\\n",x);
l1=x/100;
l2=(x-l1*100)/10;
l3=x-l1*100-l2*10;
printf("个位%d,十位%d,百位%d\\n",l1,l2,l3);
printf("逆序输出:%d\\n",l3*100+l2*10+l1);
else if(x<10000)
printf("%d是一个4位数的数\\n",x);
l1=x/1000;
l2=(x-l1*1000)/100;
l3=(x-l1*1000-l2*100)/10;
l4=x-l1*1000-l2*100-l3*10;
printf("个位%d,十位%d,百位%d,千位%d\\n",l1,l2,l3,l4);
printf("逆序输出:%d\\n",l4*1000+l3*100+l2*10+l1);
else
return 0;
参考技术B /*改了,最大的问师是 |是特殊符号,不能用的定义变量上,其它的都是小问题*/
#include <stdio.h>
void main()
int x,m1,m2,m3,m4,m5;/* m1 m2 m3 m4 m5代表各位数字*/ ;
printf("请输入一个不多于5位的正整数:");
scanf("%d",&x);
if (x<10)
printf("%d是一个1位数\n",x);
printf("个位数是%d\n",x);
else if (x<100)
printf("%d是一个2位数\n",x);
m1=x/10;
m2=x-m1*10;
printf("个位%d,十位%d\n",m2,m1);
printf("逆序输出:%d",m2*10+m1);
else if (x<1000)
printf("%d是一个3位数的数\n",x);
m1=x/100;
m2=(x-m1*100)/10;
m3=x-m1*100-m2*10;
printf("个位%d,十位%d,百位%d\n",m3,m2,m1);
printf("逆序输出:%d",m3*100+m2*10+m1);
else if(x<10000)
printf("%d是一个4位数的数\n",x);
m1=x/1000;
m2=(x-m1*1000)/100;
m3=(x-m1*1000-m2*100)/10;
m4=x-m1*1000-m2*100-m3*10;
printf("个位%d,十位%d,百位%d,千位%d\n",m4,m3,m2,m1);
printf("逆序输出:%d",m4*1000+m3*100+m2*10+m1);
else
return;
java中如何求出2008年的第1星期星期一是几号?
题目8: 2008年的第1星期星期一是几号?(视频下载) (全部书籍)
本章源码
import java.util.*;
public class Test {
public static void main(String[] args) {
Date date;
Calendar cal=Calendar.getInstance();
cal.set(Calendar.YEAR, 2008);
cal.set(Calendar.WEEK_OF_YEAR, 1);
cal.set(Calendar.DAY_OF_WEEK, Calendar.MONDAY);
。。。。。。。。。。
详情请见:http://www.mark-to-win.com/index.html?content=JavaBeginner/javaUrl.html&chapter=JavaBeginner/JavaBeginner2_web.html#CalculateDate2
以上是关于2.给一个不多于5位的正整数,要求: ①求出它是几位数; ②分别输出每一位数字 ③按逆序输出各位数字。的主要内容,如果未能解决你的问题,请参考以下文章
编写程序,输入一个不多于5位的正整数,要求:(1)输出它是几位数; (2)分别输出每一位数字?
给一个不多于5位的正整数,要求:一求它是几位数,二逆序打印出各位数字。
输入一个不多于5位的正整数,要求:一求它是几位数,二逆序打印出各位数字。
给出一个不多于5位的整数,要求 1求出它是几位数 2分别输出每一位数字 3按逆序输出各位数字,例如原数为321,应输出123