㈠ c语言中 输出一个数的个位数 并指出它是几位数
#include <stdio.h>
#include <string.h>
#define MAX 32 //你能输入最大的数的位数
int main(void)
{
char a[MAX] = {0};
int lenth = 0;
printf("请输入这个数\n");
scanf("%s",a);
lenth = strlen(a);
printf("个位数是%c, 这是一个%d位数\n", a[lenth-1], lenth);
return 0;
}
㈡ c语言中如何求一个整数的各位数
用取余和取模的方法。比如a:a%10得到是各位。a/10得到的是去除个位的那些数,声明一个变量来存储这个数。如此循环就可以了。你可以提前声明一个足够大的一维数组来存放正整数的各个位。希望对你有帮助。上面那位的程序可以借鉴,但是不全,改一下。
㈢ 如何用C语言表示一个三位数的个十百位
1.引入头文件#include "stdafx.h"和#include "stdafx.h"
㈣ 在c语言中一个三位数的个位 十位 百位怎么表示
unsigned int number; /* 代表那个三位数 */
unsigned char ge,shi,; /* 代表提取结果:个,十,百 */
例子:
说明:因为7!=5040>999,所以a,b,c必然小于7。当然也可以把循环条件设置为<=9,让电脑去处理,不影响结果。
运算结果:
**三位阶乘和数有:145 **
#include<stdio.h>
long Fact(int n); /*自定义函数说明*/
void main()
{
int hundred, ten, one, m, n;
printf("三位阶乘和数有:");
for (hundred = 1;hundred <= 6;hundred++)
for (ten = 0;ten <= 6;ten++)
for (one = 0;one <= 6;one++)
{
m = hundred * 100 + ten * 10 + one;
n = Fact(hundred) + Fact(ten) + Fact(one);
if (m == n) /*阶乘和条件判别*/
printf("%d
", n);
}
}
long Fact(int n)
{
int i;
long s = 1;
for (i = 1;i <= n;i++)
s *= i;
return(s);
}
拓展资料
作用:C语言的运算非常灵活,功能十分丰富,运算种类远多于其它程序设计语言。在表达式方面较其它程序语言更为简洁,如自加、自减、逗号运算和三目运算使表达式更为简单,但初学者往往会觉的这种表达式难读,关键原因就是对运算符和运算顺序理解不透不全。
当多种不同运算组成一个运算表达式,即一个运算式中出现多种运算符时,运算的优先顺序和结合规则显得十分重要。在学习中,对此合理进行分类,找出它们与数学中所学到运算之间的不同点之后,记住这些运算也就不困难了。
㈤ 用c语言编程:输入一个四位数,求出它的个位、十位、百位、千位
C代码:---------------------
int a;
scanf("%d",&a);
printf("个位:%d,十位:%d,百位:%d,千位:%d",a%10,a%100/10,a%1000/100,a/1000)
--------------------------------
VC++中代码如下:
#include "stdafx.h"
#include <stdlib.h>
int main(int argc, char* argv[])
{
int a;
scanf("%d",&a);
printf("个位:%d,十位:%d,百位:%d,千位:%d",a%10,a%100/10,a%1000/100,a/1000);
system("pause");
return 0;
}
C语言有以下几种取整方法:
1、直接赋值给整数变量。如:
int i = 2.5; 或 i = (int) 2.5;
这种方法采用的是舍去小数部分,可以用于你的问题。
2、C/C++中的整数除法运算符"/"本身就有取整功能(int / int),而下面介绍的取整函数返回值是double。整数除法对正数的取整是舍去小数部分,但是整数除法对负数的取整结果和使用的C编译器有关。
3、使用floor函数。floor(x)返回的是x的整数部分。如:
floor(2.5) = 2
floor(-2.5) = -3
4、使用ceil函数。ceil(x)返回的是不大于x的最小整数。如:
ceil(2.5) = 2
ceil(-2.5) = -2
floor和ceil对于正数没有区别,但是对于负数结果不同。floor()是向负无穷大舍入,floor(-2.5) = -3;ceil()是向正无穷大舍入,ceil(-2.5) = -2。
㈥ 怎样用c语言实现取一个数字的个位
取一个数字的个位,可以分为取整数的个位,和浮点数的个位两种情况:
1)取一个整数的个位,可以直接求余
例如 变量 int num=127;
num%10 就可以得到个位的7
2)取浮点数的个位
因为%是不能对浮点数直接运算的,因此需要强制取整之后执行
例如变量 double num=27.83;
((int)num)%10 就可以得到个位的7
㈦ 用c语言写表达式提取任意位数整数n的个位数,十位数,百位数~~
int a,b,c,n;
scanf("%d",&n);
个位数a=n%10
十位数b=(n-a)%100
百位数c=(n-a-b)%1000