c語言輸出數字各位數
A. c語言,如何輸出每一位數字
要輸出整型數值的每一位數字,關鍵在於將每一個數字提取出來。
方法有很多,實現方式更是多種多樣,以最常見的兩種方式舉例說明:
一、傳統方法,通過除法和模除,取出每一位,並輸出。
參考代碼如下:
#include<stdio.h>
voidoutput(intn)
{
inta[10];
intl=0;
/*
循環獲取每一位的值,並存到數組a中。
其中l表示已經獲取到的位數。
由於每次獲取的是個位n%10,所以存在數組a中的是各個位數的逆序。
*/
while(n)
{
a[l++]=n%10;
n/=10;
}
//反序輸出每一位值。
while(--l>=0)
printf("%d",a[l]);
}
intmain()
{
intn;
scanf("%d",&n);//輸入n值。
output(n);//輸出各個位。
return0;
}
二、轉為字元串,然後輸出字元串各個字元。
由於在C語言中,有很多庫函數,比如itoa, sprintf等,都可以很方便的將整數轉為字元串,而逐位輸出字元串各個位元組值是很簡單的,所以可以通過轉為字元串,再輸出的方式輸出各個位的值。
參考代碼:
#include<stdio.h>
voidoutput(intn)
{
chara[11];
inti;
sprintf(a,"%d",n);//轉為字元串。
for(i=0;a[i];i++)//遍歷字元串。
printf("%c",a[i]);//輸出各個位值。
}
intmain()
{
intn;
scanf("%d",&n);//輸入n值。
output(n);//輸出各個位。
return0;
}
B. C語言中如何輸出任意一個數字的每一位數字
比較常用的思路就是不斷的除10,比如隨便一個數字12345
12345/10=1234
12345%10=5
再把 1234/10=123
1234%10=4
這樣就把這個數字按位拆開。
#include
#include
int main()
{
int iNumber;
cout << "請輸入一個數字:" << endl;
cin >> iNumber;
//定義一個棧
int stack;
int top=-1;
while (iNumber % 10)
{
stack[++top]=iNumber % 10);
iNumber = iNumber / 10;
}
printf("從高到低依次是: ")
for(;top>=0;top--)
{
printf("%d ",stack[top]);
}
system("pause");
return 0;
(2)c語言輸出數字各位數擴展閱讀;
當一個運算對象兩側的運算符優先順序別相同時,則按運算符的結合性來確定表達式的運算順序。關於結合性的概念在其他高級語言中是沒有的,這是C語言的特點之一。
C語言也將 34 種運算符規定了不同的結合性。大多數運算符結合方向是「自左至右」,即:先左後右,也叫「左結合性」,例如 a-b + c,表達式中有-和+兩種運算符,且優先順序相同,按先左後右結合方向,先圍繞減號結合,執行 a-b 的運算,再圍繞加號結合,完成運算(a-b) + c。
C. C語言中如何將一個數字的各位數字以數組方式輸出
#include <stdio.h> #include <string.h> int main() { char a[100]; int n,i; scanf("%s",a); n=strlen(a); for(i=0;i<n;i++) printf("%c ",a[i]); }
D. C語言怎麼順序輸出各位數字啊
其實輸出的是正整數,但是你要把他當做字元串來處理,因為後面的輸出的方式就是字元串輸出的方式,所以不妨把這個連續數字的東西當做一個字元串來處理,這樣比較容易。代碼如下:
#include <stdio.h>
#include<stdlib.h>
int main()
{
char n[100];
int i;
printf("enter a number:");
i=0;
while(1)
{
n[i]=getchar();
if (n[i]=='\n')break;
printf("%s ",n[i]); //注意裡面有個空格,達到了空一格格的目的
i++;
}
}
E. 用C語言做:怎麼將一個數(不限位數)的各位數字輸出
用字元數組裝,然後遍歷輸出每個數字字元,例子:
#include
<stdio.h>
int
main()
{
char
a[1000];
int
i;
gets(
a
);
for
(
i
=
0;
a[i];
++i
)
printf(
"%c
",
a[i]
);
}
F. 用c語言如何表示出一個數的個位,百位,十位
如果n是個多位十進制數,那麼n%10是個位數字,n/10%10是十位數字,n/100%10是百位數字,依此類推。
設一個數為n,則在C語言中其個位、十位、百位、千位依次這樣計算:n/1%10,n/10%10,n/100%10,n/1000%10
代碼如下:
#include<stdio.h>
int main(){
int n = 123456;
int unitPlace = n / 1 % 10;
int tenPlace = n / 10 % 10;
int hundredPlace = n / 100 % 10;
int thousandPlace = n / 1000 % 10;
printf("個位:%d
十位:%d
百位:%d
千位:%d
", unitPlace, tenPlace, hundredPlace, thousandPlace);
getchar();
return 0;
}
(6)c語言輸出數字各位數擴展閱讀:
C語言包含的各種控制語句僅有9種,關鍵字也只有32 個,程序的編寫要求不嚴格且以小寫字母為主,對許多不必要的部分進行了精簡。實際上,語句構成與硬體有關聯的較少,且C語言本身不提供與硬體相關的輸入輸出、文件管理等功能,如需此類功能,需要通過配合編譯系統所支持的各類庫進行編程,故c語言擁有非常簡潔的編譯系統。