当前位置:首页 » 编程语言 » c语言求一个不多于五位的数
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

c语言求一个不多于五位的数

发布时间: 2022-03-30 19:28:16

A. c语言 给一个不多于5位的正整数 用C语言写出

不对的原因,主要是if条件语句应该是用“==”而不是“=”,这是判断,不是赋值。其它的错误,scanf_s("%d",&a)改成scanf("%d",&a),printf用错了,printf打印应该是一个占位符对应一个要输出的内容,就是你代码中%d对应一个输出。

修改后的代码:

#include<stdio.h>

int main()

{

int a, b, c, d, e, f, w;

printf("输入一个不多于五位的整数:");

scanf("%d",&a);

//第一问,求出它是几位数

b = 10000 - a;

c = 1000 - a;

d = 100 - a;

e = 10 - a;

f = 0 - a;

while (a < 0 || a > 99999)

printf("输入错误,请重新输入 ");

if (b < 0)

{

printf("a是五位数 ");

w = 5;

}else if (c < 0){

printf("a是四位数 ");

w = 4;

}else if (d < 0){

printf("a是三位数 ");

w = 3;

}else if (e < 0){

printf("a是两位数 ");

w = 2;

}else if (f < 0){

printf("a是个位数 ");

w = 1;

}else

printf("输入错误,请重新输入 ");

//第二问,分别输出每一位数字

if (w == 5)

printf("%d %d %d %d %d ", a / 10000, a / 1000 % 10, a / 100 % 10, a / 10 % 10, a % 10);

if (w == 4)

printf("%d %d %d %d ", a / 1000 % 10, a / 100 % 10, a / 10 % 10, a % 10);

if (w == 3)

printf("%d %d %d ", a / 100 % 10, a / 10 % 10, a % 10);

if (w == 2)

printf("%d %d ", a / 10 % 10, a % 10);

if (w == 1)

printf("%d ", a % 10);

//第三问,按逆序输出各位数字

if (w == 5)

printf("%d %d %d %d %d ", a % 10, a / 10 % 10, a / 100 % 10, a / 1000 % 10, a / 10000);

if (w == 4)

printf("%d %d %d %d ", a % 10, a / 10 % 10, a / 100 % 10, a / 1000 % 10);

if (w == 3)

printf("%d %d %d ", a % 10, a / 10 % 10, a / 100 % 10);

if (w == 2)

printf("%d %d ", a % 10, a / 10 % 10);

if (w == 1)

printf("%d ", a % 10);

}

修正后的代码执行如下:

B. C语言编程:给一个不多于5位的正整数,

不多于五位的正整数,包括一位数到五位数,所有的数值。

即[1,99999].

以下代码,功能为获取一个不多于五位的正整数并输出。

intmain()
{
intn;
srand(time(NULL));
printf("%d",rand()%99999+1);
}

C. C语言题目) 给一个不多于5位的正整数,要求:

没看懂你想问什么,就解释一下你的备注提问的问题吧
1、int a[10]的意思是定义一个长度为10的整型向量,它可以存储10个整型的数值
2、这里int一个sum是为了下面用来计数,所以先将它赋值为0
3、这些东西是for循环里面的控制变量,总共有三个,用分号隔开。第一个就是分好前面的,表示循环起始条件是从i=0开始,两个分号中间的就是循环结束条件,因为不用设置所以就空着了,最后那个是变量的变化,i++的意思是i=i+1。

D. C语言编程,给定一个不多于5位的正整数,求① 求它是几位数② 分别输出每一位数字③ 按逆序输出各位数字

#include<stdio.h>
#include<stdlib.h>
void mian()
{
int num,i,temp[5];
printf("请输入一个低于5位的整数\n");
scanf("%d",&num);
for(i=0;i<5,i++)
{
temp[i]=num%10;
num=num/10;
}
for(i=0,i<5;i++)
{
if(temp[i]<0)
printf("这是一个%d位数",i);
}
while(temp[i]!=0)
{
printf("%d",temp[i]); i++;
}
}

E. C语言编程:给一个不多于5位的正整数,要求编程实现(1)求它是几位数(2)逆序输出各位数字

这个我刚好做过,你看看。
#include<stdio.h>
void main()
{
long int a;
int n,b,c,d,e,f;
printf("\n请输入一个整数(0~99999):");
scanf("%d",&a);
if(a>9999)
n=5;
else if(a>999)
n=4;
else if(a>99)
n=3;
else if(a>9)
n=2;
else n=1;
printf("\n这个数的位数=%d",n);
f=a/10000;e=a%10000/1000;d=a%10000%1000/100;c=a%10000%1000%100/10;
b=a%10000%1000%100%10;
printf("\n万位为%d\n千位为%d\n百位为%d\n十位为%d\n个位为%d\n",f,e,d,c,b);
switch(n)
{
case 5:printf("%d%d%d%d%d",f,e,d,c,b);
printf("\n反序数字为:");
printf("%d%d%d%d%d",b,c,d,e,f);break;
case 4:printf("%d%d%d%d",e,d,c,b);
printf("\n反序数字为:");
printf("%d%d%d%d",b,c,d,e);break;
case 3:printf("%d%d%d",d,c,b);
printf("\n反序数字为:");
printf("%d%d%d",b,c,d);break;
case 2:printf("%d%d",c,b);
printf("\n反序数字为:");
printf("%d%d",b,c);
case 1:printf("%d",b);
printf("\n反序数字为:");
printf("%d",b);
}
} 注:f是求万位的数字,后面的以此类推。

F. 设计一个C语言程序:给一个不多于5位的正整数,要求:求出它是几位数;分别输出每

看你怎么求。
如果是通过模除 和除法的方式,必然会得到7, 不可能得到8.
如果中间有转为浮点数的话 就不一定了。

G. c语言编程:给一个不多于五位的正整数,用if-else语句求出它是几位数

可以参考下面的代码:

#include <stdio.h>

void main()

{ intnum; printf("请输入一个不大于5位数的正整数:");

scanf("%d",&num);

if(num>99999||num<1)

printf("您的输入有误! ");

else { if(num<10)

printf("您输入的是1位数! ");

else if(num<100)

printf("您输入的是2位数! ");

else if(num<1000)

printf("您输入的是3位数! ");

else if(num<10000) printf("您输入的是4位数! ");

else printf("您输入的是5位数! "); } }

(7)c语言求一个不多于五位的数扩展阅读:

if语句的一般形式如下:

if(表达式)语句1

[else语句2]

if语句中的“表达式”可以是关系表达式、逻辑表达式,甚至是数值表达式。其中最直观、最容易理解的是关系表达式。所谓关系表达式就是两个数值进行比较的式子

if 语句的执行流程:首先判断关键词 if 后括号内条件表达式的值,如果该表达式的值为逻辑真(非 0),则执行 if 体,接着执行 if 体后的其他语句;否则,若该表达式的值为逻辑假(0),则不执行该 if 体,直接执行 if 体后的其他语句。

H. 个C语言程序,给一个不多于5位的正整数,要求:求出它是几位数;分别

#include<stdio.h> #include<math.h> int main() { long int num; int indiv,ten,hundred,thousand,ten_thousand,place; printf("intput a interger(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("位数=%d\n",place); printf("每位数字为:"); ten_thousand=num/10000; thousand=(int)(num-ten_thousand*10000)/1000; hundred=(int)(num-ten_thousand*10000-thousand*1000)/100; ten=(int)(num-ten_thousand*10000-thousand*1000-hundred*100)/10; indiv=(int)(num-ten_thousand*10000-thousand*1000-hundred*100-ten*10); printf("方向数字为\n:"); switch(place) { case 5:printf("%d %d %d %d %d\n",indiv,ten,hundred,thousand,ten_thousand);break; case 4:printf("%d %d %d %d\n",indiv,ten,hundred,thousand); break; case 3:printf("%d %d %d\n",indiv,ten,hundred); break; case 2:printf("%d %d\n",indiv,ten);break; case 1:printf("%d\n",indiv);break; } } 是这个样子了,如果有错,可能是我打错了吧,基本是没什么错误的

I. c语言输入一个不多于5位正整数要求:求出它是几位数;分别打印出每一位数字;按逆序输出各位数字。

#include <stdio.h>
int main(void)

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

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