A. 给一个不多于5位的正整数,求出它是几位数分别打出每一位数字按逆顺序打出各位数字请用c语言编程。
给你个简单的应付差使。
#include <stdio.h>
#include <stdlib.h>
int main()
{
int input;
int i;
unsighed char tempstr[20];
scanf("%d",input);
sprintf(tempstr , "%d" , input );
if (strlen(tempstr)>=5)
printf("error input\r\n");
for (i=0;i<strlen(tempstr);i++)
{
printf("%c",tempstr[i]);
}
for (i=0;i<strlen(tempstr);i++)
{
printf("%c",tempstr[5-i];
}
}
搞定。在线写的,要是有语法错误,自己略微修改一下就可以了。
}
B. c语言编程:给一个不多于五位的正整数,用if-else语句求出它是几位数
#include
int
main()
{
int
count;
printf("Please
input
a
number:");
scanf("%ld",&count);
if(count>=10000&&count<=99999)
printf("这是个5位数!");
else
if(count>=1000&&count<=9999)
printf("这是个4位数!");
else
if(count>=100&&count<=999)
printf("这是个3位数!");
else
if(count>=10&&count<=99)
printf("这是个2位数!");
else
if(count>=0&&count<=9)
printf("这是个1位数!");
else
printf("不在范围内!");
return
0;
}
C. C语言:输入一个不多于5位的正整数,求它是几位数。要求:将判断一个数的位数操作定义为一个函数
#include<stdio.h>
#defineN5
intmain(){
intlen(intx);
inti,x;
for(i=0;i<N;i++){
scanf("%d",&x);
printf("Thelengthof%dis%d ",x,len(x));
}
return0;
}
intlen(intx){
intans=0;
while(x){
ans++;
x/=10;
}
returnans;
}
D. 用C语言编程:给出一个不多于5位的正整数,判断它是几位数
思路是:①判断这个数是否小于10000并且大于0(检查输入的正确性)②假设输入数字是a,判断a是否等于1000、100、10。③判断a%1000是否大于0,如果是,则这个数是四位数,如果不是,判断a%100是否大于0,如果是,则这个数是三位数,判断a%10是否大于0,如果是,则这个数是两位数,如果以上情况都不是,就是一位数。
注释:a%1000的结果表示a除以1000后的余数(小学数学里的除法余数概念),如果大于0,说明有余数,说明a至少大于1000.如果等于0,说明a小于或等于1000
E. 设计一个C语言程序:给一个不多于5位的正整数,要求:求出它是几位数,分别输出每个数。
C语言程序:
#include
int Digit(int n)
{
return n > 0 ? 1 + Digit(n/10) : 0;
}
void rprint(int n)
F. C语言编程:给一个不多于5位的正整数,要求1求它是几位数2逆序打印出各位数字
/*给一个不多于5位的正整数,要求:一、求它是几位数,二、逆序打印出各位数字。*/
#include <stdio.h>
int main()
{
int a[5],num,k,i=0;
printf("请输入一个不多于五位的正整数:");
scanf("%d",&num);
if(num<=0)
printf("请输入一个正整数");
while(num>0)
{
k=num%10;
a[i]=k;
++i;
num=num/10;
}
if(i>=6)
printf("请输入一个不多于五位的正整数!");
else
{
printf("这是一个%d位数;\n",i);
printf("逆序打印为:");
for(int j=0;j<=(i-1);j++)
{
printf(" %d",a[j]);
}
}
return 0;
}
G. C语言题目,设计一个程序,: 给出一个不多于5位数的正整数,判断它是几位数!
#include <stdio.h>
main()
{ long int num;
int indiv,ten,hundred,thousand,ten_thousand,place;printf("请输入一个整数(0~99999):");
scanf("%ld",&num);
if (num>9999) place=5;
else if(num>999) place=4;
else if(num>99) place=3;
else if(num>9) place=2;
else place=1;
printf("place =%d\n", place);
H. C语言 给出一个不多于5位的正整数。1.输出它是几位数 2.输出每一位数字 3.按逆序输出各位数字,
#include "stdio.h"
void main()
{
int x,a,b,c,d,e,n,j;
printf("请输入一个不多于5位的正整数\n");
scanf("%d",&x);
a=x/10000;
b=x/1000-a*10;
c=x/100-a*100-b*10;
d=x/10-a*1000-b*100-c*10;
e=x-a*10000-b*1000-c*100-d*10;
if(a!=0)n=5;
else if(a==0 && b!=0)n=4;
else if(a==0 && b==0 && c!=0)n=3;
else if(a==0 && b==0 && c==0 && d!=0)n=2;
else n=1;
if(a>9)printf("输入的数大于5位!\n");
else
{
if(n==1) printf("该数字是%d位数,个位%d\n",n,e);
else if(n==2) printf("该数字是%d位数,十位%d,个位%d\n",n,d,e);
else if(n==3) printf("该数字是%d位数,百位%d,十位%d,个位%d\n",n,c,d,e);
else if(n==4) printf("该数字是%d位数,千位%d,百位%d,十位%d,个位%d\n",n,b,c,d,e);
else if(n==5) printf("该数字是%d位数,万位%d,千位%d,百位%d,十位%d,个位%d\n",n,a,b,c,d,e);
if(n==5)j=e*10000+d*1000+c*100+b*10+a;
else if(n==4)j=e*1000+d*100+c*10+b;
else if(n==3)j=e*100+d*10+c;
else if(n==2)j=e*10+d;
else j=e;
printf("该数的逆序是%d\n",j);
}
}
楼主是新手吧?
你在判断语句里写的n=5之类的是赋值语句
if(n=5) 表示的是如果把5赋值给n 成功了,则执行if后的语句
而if(n==5)才是判断n 是否等于5
I. 给定一个不多于5位的正整数,求它是几位数并且按逆序分别输出每一位数字的C语言程序如何编写
#include<stdio.h>
int main()
{int x,x1,i,n,a[6]={0};
scanf("%d",&x);
x1=x;
for(n=0;x;n++)
{
a[n]=x%10;
x/=10;
}
printf("%d是%d位数 ",x1,n);
for(i=0;i<n;i++)
printf("%d ",a[n-1-i]);
printf(" 逆序输出是:");
for(i=0;i<n;i++)
printf("%d ",a[i]);
return 0;
}
J. 给一个不多于五位的正整数,要求求出它是几位数,c语言
首先我要说的是,可以这么写,但你写的不对,必须把0-999种情况都写出来,所以说你怎么好意思说不笨。
我给你一种比较正常的写法给你参考,用循环来判断
intmain(intargc,constchar*argv[])
{
intb=-1;//用于存储位数,初始值为-1表示输入不合条件
intx;//不超过5位,用整型即可
scanf("%d",&x);//输入该整数
if(x>0&&x<=99999)//根据题意用if限制输入条件
{
//循环判断位数
while(x>0)
{
x/=10;
b++;
}
}
printf("bit(s)=%d ",b);//输出位数
return0;
}