c语言编译:问题,给出一个不多于5位的正整数,要求按逆序输出各位数字,例如321,应输出123

作者&投稿:虿霄 (若有异议请与网页底部的电邮联系)
c语言编程:给一个不多于5位的正整数,要求(1)求出它是几位数(2)分别输出每一位数字(3)按逆序~

#includevoid main(){ int n,i=0; int j=0; while(1) { printf("请输入一个小于5位数的整数:"); scanf("%d",&n); if(n>=10000) printf("输入错误,请重新输入:"); else break; } while(n) { i=i*10+n%10; n=n/10; j++; } printf("输入数字为%d位数
",j); printf("逆序后:%d
",i);}

#include
int main(void)

{
long int x;
int y,i=1;
printf("请输入一个不超过100000的整数:"); // <------请把,x去掉
scanf("%ld",&x);
if (x>99999||x<1) printf("你所输入的数据超出计算范围
");
else
{
while (x!=0) // <------请把 do 去掉
{
y=x%10;
printf("%d",y);
x=x/10;
i=i+1;
}

printf("
这个数共有%d位
",i);
}
return 0; // <------这里return 0;放最外层计较好
}

楼主的意思只是想“逆序输出”,无所谓将其转换为相应的整形数值吧?如果是这样的话,下面的代码是最简便的了:

#include <stdio.h>
#include <conio.h>

void main(){
int a;
do{
printf("\nInput a(>0):"); scanf("%d",&a);
}while(a<=0);//防止用户输入非正整数
while(a>0){
printf("%d",a%10); //输出a的个位数
a/=10; //将a整除10
}
getch();
}

已编译调试通过,运行OK:

#include "stdio.h"
#include "stdlib.h"
void main()
{
int num,s,y;
int i = 0,j=0,szNum[10];//最多能存储10位数
printf("please input the number : \n");
scanf("%d",&num);
if(num<0)
{
printf("输入错误!");
return;
}
s = num/10;
if(s>0)
{
while(s>0)
{
s = num/10;
y = num%10;
szNum[i] = y;
num = s;
i=i+1;
}
printf("the number is %d bits ",i);
for(j=0;j<i;j++)
{
printf("%d ",szNum[j]);
}
printf("\n");
}
else
{
y = num%10;
szNum[0] = y;
printf("the number is %d bits ",1);
printf("%d ",szNum[0]);

}

getche();
}

根据xiaomai1020的程序修改而得。感谢xiaomai1020。已在vc下调试通过。
#include<stdio.h>
#include<math.h>
void main()
{
int i,j,a,c,flag1,flag2;
printf(
请参考

比较粗糙。。。

#include <iostream>
using namespace std;

int inverseOut(int wait);

int main()
{
int wait;
int result;

cout << "please input the postive integer:";//请输入正整数
cin >> wait;

result = inverseOut(wait);
cout << "inverse:" << result;

cin.get();
cin.get();
return 0;
}

int inverseOut(int wait)
{
int temp = 0;

do
{
temp = temp*10 + wait%10;
wait /= 10;
}while (wait != 0);

return temp;
}


C语言编译为什么会出现这个问题: #include nesting level is 363 deep...
楼上正解,你这个就是这个问题 所以一般在c语言的多个文件处理里面都要使用#define来解决这个问题,将包含的头文件采用预编译手段,具体的话你可以查下,毕竟你不给程序出来

C语言 条件编译问题
include <stdio.h> include <stdlib.h> define CHANGE 0 \/\/1表示翻译,0表示不翻译 int main(void){ char a[100];int i;char c;printf("Please input the string\\n");for (i = 0; i < 100; i++){ scanf("%c", &a[i]);if (a[i]== '\\n'){ a[i] = '\\0';break;...

关于C语言问题,VC不能编译和组建文件怎么办?语句是对的,组建不了,无法...
方法一:因此问题可以按照以下方法解决:打开vc界面 点击VC“TOOLS(工具)”—>“Option(选择)” —>“Directories(目录)”重新设置“Excutable Fils、Include Files、 Library Files、Source Files”的路径。很多情况可能就一个盘符的不同 (例如你的VC装在C,但是这些路径全部在D),改过来就OK了。

易语言 独立编译 问题
1.独立编译 这种编译方法编译的程序和我们通常下载的单个小程序是一样的,在其他任何一台计算机不论是否安装了易语言,只要操作系统支持就可以运行.不过使用独立编译时需要注意的一点事,通常这种编译方法编译的文件由于他本质上是吧支持库文件等和应用主程序捆绑,在运行时释放,因此有时杀软会误认为是病毒吧...

单片机C语言keil编译出现错误,寄存器容量不足,怎么改正,急!!!
我用keil2,keil4编译都没有问题的。重新建一个工程,再试下。下图就是用keil4编译的结果。估计是没有破解。或者破解的不对。

易语言独立编译出现问题
这个文件是易语言的支持库文件,和源码是分开的,它存在于易语言软件的文件夹,请和你的朋友索取此文件,并放在你易语言支持库目录

易语言编译dll文件出现的问题求解?
失败不用管,照样可以运行的,因为编译时会在源码路径下找这些dll,但源码路径下没有,因为这些dll存在于系统中,所以找不到,也就会出现这些错误。看起来你用的易语言是4.xx版,推荐使用新版,因为新版bug比较少,而且编译出来的文件比较小

易语言静态编译问题 支持库不支持静态编译怎么办
您好,出现这个情况很有可能是因为你从官方网址下载的,官方的软件需要注册才能编译,注册价格新手还是算了吧,建议百度搜索“易语言完美破解版”,下载后可以编译

单片机C语言编译错误:requires ANSI-style prototype
需要要把调用的子函数放到main前面,或者在main函数前面先把需要调用的子函数定义声明一下。requires ANSI-style prototype的意思是:需要ANSI样式原型。

易语言静态编译出现问题
易语言文件夹下有个tools文件夹,里面有个link.ini文件,打开,找到linker= 看下后面的路径是不是和你电脑上的易语言路径是一样的,不是的话改成你现在的路径。

隆回县15571584797: c语言问题,求大神解答!给一个不多于5位的正整数.①求出它是几位数.②分别输出每一位数字.③按逆序输出各位数字.例如原数位465,应输出5 6 4.... -
狂宣捷佰:[答案] #include#include#includeint main(){int num,tmp,i,j;int n[5]={0};//用于存储num分解后的每位上的数字,由于num不超过5位,所以数组有5个单元就可以了 int *sq_ls_num;printf("请输入一个不多于5位的正整数: ");sc...

隆回县15571584797: 用c语言来写给一个不多于5位的正整数,要求:①求出它是几位数;②分别输出每一位数字;③按逆序输出各位数字,例如原数为321,应输出123. -
狂宣捷佰:[答案] 说实话,其实我很不想写,分太少 #include long fun(long s) { int sum = 0; long fin = 0,flag = 0; int a[20] = ; for(int i =1; (s/i) != 0; i = i * 10) ++sum; int temp = i; for(int j = 0; j < sum; j++) { temp = temp / 10; a[j] = s / temp; s = s % temp; } for(int k = 0; ...

隆回县15571584797: C语言解答?编写代码?题目:给出一个不多于5位的整数,要求:1,求出它是几位数.2,分别输出每一位数 -
狂宣捷佰: 供参考. #include "stdafx.h" #include "stdio.h"// #include "string.h"// #include "stdlib.h"// void main(void){/*主程序*/int n,lax,i;char ax[10]={NULL,};printf("请输入一个不大于5位的十进制正整数!\nn=");scanf("%d",&n);lax=...

隆回县15571584797: c语言问题求助 求思路输入一个不多于5位数的正整数,要求:①求出它是几位数?②分别打印出每一位上的数字;③按逆序打印出该数字;④能够处理负数... -
狂宣捷佰:[答案] #include "stdio.h" void main() { char str[100]; int i; gets(str); printf("长度为%d\n",strlen(str)); for(i=0;iprintf("%-2c",str[i]); printf("\n"); for(i=strlen(str)-1;i>=0;i--) printf("%c",str[i]); } 这个可以满足要求

隆回县15571584797: C语言编程:给一个不多于5位的正整数, -
狂宣捷佰: 不多于五位的正整数,包括一位数到五位数,所有的数值. 即[1,99999]. 以下代码,功能为获取一个不多于五位的正整数并输出. int main() {int n;srand(time(NULL));printf("%d", rand()%99999+1); }

隆回县15571584797: c语言编译:问题,给出一个不多于5位的正整数,要求 (1)求出它是几位数 (2)分别输出每一位数字 -
狂宣捷佰: 已编译调试通过,运行OK:#include "stdio.h"#include "stdlib.h" void main() { int num,s,y; int i = 0,j=0,szNum[10];//最多能存储10位数 printf("please input the number : \n"); scanf("%d",&num); if(num<0) { printf("输入错误!"); return; } ...

隆回县15571584797: c语言编程:给一个不多于5位的正整数,要求(1)求出它是几位数(2)分别输出每一位数字(3)按逆序 -
狂宣捷佰: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23#include<stdio.h> voidmain() {intn,i=0;intj=0;while(1){printf("请输入一个小于5位数的整数:");scanf("%d",&n);if(n>=10000)printf("输入错误,请重新输入:");elsebreak;}while(n){i=i*10+n%10;n=n/10;j++;}printf("输入数字为%d位数\n",j);printf("逆序后:%d\n",i); }

隆回县15571584797: 给1个不多于5位的正整数要求1求出它是几位数2分别打印出每一位数字3按逆序打印出各位数字用C语言编程 -
狂宣捷佰:[答案] #include "stdio.h"void main(){unsigned long int a=0;//用int可能会溢出//int flag=0;int b[5];//以下部分用于判断数据的位数//while(flag==0){printf("Input the number\n");scanf("%ld",&a);if(a>0&&a=10&&a=100...

隆回县15571584797: C语言: 给一个不多于5为的正整数 要求:1.求出它是几位数 2.分别打印出每一位数字 -
狂宣捷佰: 1. 求出它是几位数#include <stdio.h>int main(){ int n,m; printf("请输入一个正整数:"); scanf("%d",&n); if(n<=0) { printf("输入错误!\n"); } else { m=0; while(n>0) { m++; n=n/10; } printf("这是一个%d位数!\n",m...

隆回县15571584797: 用C语言编程:给一个不多于5位的正整数,要求如下: -
狂宣捷佰: #includeint main() { int a,b,c,d,e,p,n; scanf("%d",&n); if (n>9999) p=5; else if(n>999) p=4; else if(n>99) p=3; else if(n>9) p=2; else p=1; printf("位数:%d\n",p); a=n/10000; b=(int)(n-a*10000)/1000; c=(int)(n-a*10000-b*1000)/100; d=(int)(n-a...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网