如何用C语言实现输入1个5位以内的正整数 分别输出每位数

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何用C语言实现输入1个5位以内的正整数 分别输出每位数相关的知识,希望对你有一定的参考价值。

#include<stdio.h>
void
main()

int
num;
printf("请输入一个不大于5位的数:");
scanf("%d",&num);
if(num>99999)
printf("您的输入有误!\n");
else

if(num<10)

printf("您输入的是1位数:%d\n",num);

else
if(num<100)

printf("您输入的是2位数:第一位是%d,第二位是%d\n",num/10,num%10);

else
if(num<1000)

printf("您输入的是3位数:第一位是%d,第二位是%d,第三位是%d\n",num/100,num/10%10,num%10);

else
if(num<10000)

printf("您输入的是4位数:第一位是%d,第二位是%d,第三位是%d,第四位是%d\n",num/1000,num/100%10,num/10%10,num%10);

else

printf("您输入的是5位数:第一位是%d,第二位是%d,第三位是%d,第四位是%d,第五位是%d\n",num/10000,num/1000%10,num/100%10,num/10%10,num%10);


参考技术A 经本人验证:
一楼同志虽然有两种方法,但是第一个太繁琐,第二个不能运行
还有错误。二楼的方法就比较好了,程序简单易懂。
运行结果:输入
12345
结果
5
4
3
2
1

C语言编程:输出一个3位整数的逆序数,如输入123,输出321.

#include&lt;stdio.h&gt;

main()

int x,b0,b1,b2,s;

printf("inputx:");

scanf("%d",&x);

b2=x/100;

b1=(x-b2*100)/10;

b0=x%10;

s=b0*100+b1*10+b2;

printf("s=%d\\n",s);

运行结果:

扩展资料:

main函数用法

C++中的main函数

C++继承了C语言的大部分特性,因此保留了“程序总是从main函数开始执行,且总是默认从main函数的return语句或结尾处结束运行”这一传统,但是要注意,C++中的main函数要想作为程序执行的出入口,必须写在全局(Global)范围,

不能写成某个结构体或某个类的成员。虽然main函数可以作为结构体或者类的成员函数,但相应地会失去作为程序出入口的功能。

C++中全局main函数的书写格式与C语言完全相同,功能也完全相同,且同一C++程序同样只能有一个全局main函数。

Java中的main函数

Java同样是以main函数作为程序执行出入口的,但Java作为“更纯洁”的面向对象语言,它的main函数与C/C++有很大的不同。

首先,返回值的概念淡化,在Java Application中main不允许返回值,因此int main是被禁止的,必须使用void main,int main仅限在JavaBean中使用。

其次,Java中所有的函数必须属于类,没有什么全局函数一说,因此main函数不能是全局成员,必须是某个类的成员。

第三,由于main函数变成了类的成员函数,因此要想直接被系统调用,还必须使用public static使其成为静态函数并具有公开权限。

第四,main函数的参数被简化,只需要提供字符串数组即可,不需要提供参数个数(这是由于Java的数组具有下标检查功能的原因)

Java Application中的main函数一般格式如下(类名可以自定义,但保存为Java源码时,主文件名必须与类名相同,否则可能无法运行)

public class MainDemo

public static void main(String[]args)

//TODO:在此处写入主函数的内容

Java Applet的运行机制与Java Application完全不同,因此不需要main函数

C#中的main函数

C#中的main函数与Java大同小异,同样必须是类成员,同样使用字符串数组作唯一参数,同样是静态函数,同样的void main,

与之不同的是:main的首字母变成了大写,即"Main函数“,且是否限定为public级别已经无所谓了(默认没有public,但某些场合可能还是需要public)

另外,需要注意的是,C#中不再有”类名必须与主文件名同名“的限制,即使类名不和主文件名相同,程序照样可以运行。

C#应用程序中的main函数默认是这样的(注意main的首字母已是大写)

C#和C/C++、java不同的是C#不在拘泥于必须从main()函数开始执行,C#是属于事件触发。

class Program

static void Main(string[]args)

参考技术A

我这个是c++的答案。

看了一下,别人要么没用到c++专属的cin、cout……要么是错的...(而且这个几位数都可以,如输入100010,则输出10001,如输入-12300,则输出-123……)看看我这个吧:

#include<iostream>
using namespace std;
int main()

int n,p=0,g=0;
cin>>n;
if(n<0)

cout<<"-";
n=n*-1;

if(n%10>0)
p=1;
while(n)

if(n%10==0&&g==0)


else

cout<<n%10;
p=1;
g++;

n=n/10;
 
 return 0;

希望能帮到你。

参考技术B #include<stdio.h>
void main()
int x,a,b,c;
scanf("%d",&x);
a=x/100;
b=x/10%10;
c=x%10;
x=c*100+b*10+a;
printf("%d",x);
本回答被提问者采纳
参考技术C #include <stdio.h>
int main()

int n;
do
scanf(“%d", &n );
while( n<100|| n>999 ) ;
do
printf("%d", n%10 );
n/=10;
while(n);
printf("\n");
return 0;
参考技术D #include <stdio.h>
void main()
int num1,a,b,c,num2;
printf("Enter a number");
scanf("%d",num1);
a=num1/100;
b=num1%100/10;
c=num1%10;
num2=c*100+b*10+a;
printf("\nThe result is:%d",num2);

以上是关于如何用C语言实现输入1个5位以内的正整数 分别输出每位数的主要内容,如果未能解决你的问题,请参考以下文章

C语言任意输入一个有五位数字的正整数,逆序输出每一数位上的数字 如输入12345 输出5 4 3 2 1

编写程序,输入一个不多于5位的正整数,要求:(1)输出它是几位数; (2)分别输出每一位数字?

2.给一个不多于5位的正整数,要求: ①求出它是几位数; ②分别输出每一位数字 ③按逆序输出各位数字。

给定一个不多于5位的正整数,求它是几位数并且按逆序分别输出每一位数字的C语言程序如何编写?

用c语言编程实现输出100以内的所有是3的倍数,或者含有3的正整数。要求输出时所有的数都以逗号隔开

c语言编程:输入一个正整数n,产生n个1000以内的随机数,统计其中这些随机数中偶数的个数,并输出统计结果.