㈠ 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