c語言按位輸出
❶ 用c語言把一個正數按位輸出
#include<iostream>
using namespace std;
int main()
{
int data = 2008;
while (data != 0)
{
cout << data%10;
data = data/10;
}
cout << endl;
return 0;
}
❷ 將一個正整數從右到左按位輸出 求c語言程序
#include<stdio.h>
int main()
{
int i,a,b,c;
printf ("input your num:\n");
scanf("%d",&i);
a=i/100; /*取百位*/
b=(i-a*100)/10; /*取十位*/
c=(i-a*100-b*10); /*個位*/
printf("%d %d %d",c,b,a);
}
我以三位整數為例
#include <stdio.h>
void fun(long); //函數聲明
void main()
{long n;
printf("請輸出一個正整數:");
scanf("%d",&n);
printf("原來數據:n=%1d\n",n);
fun(n);
printf("\n");
}
void fun(long n)
{
int m=0;
while(n)
{
m = n%10;
printf("%d\t",m);
n/= 10;
}
}
上面的不限個數
❸ c語言程序:輸入一個十進制整數,輸出該數值的二進製表示(使用按位運算符)
#include<stdio.h>
//main
intmain()
{
inta;
scanf_s("%d",&a);
charb[41]={0};
char*p=b;
inti=32;
while(i--)
{
*p++=(a>>i&0x1)+'0';
if(i%4==0)
*p++='';
}
printf_s("%s ",b);
return0;
}
❹ 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;
(4)c語言按位輸出擴展閱讀;
當一個運算對象兩側的運算符優先順序別相同時,則按運算符的結合性來確定表達式的運算順序。關於結合性的概念在其他高級語言中是沒有的,這是C語言的特點之一。
C語言也將 34 種運算符規定了不同的結合性。大多數運算符結合方向是「自左至右」,即:先左後右,也叫「左結合性」,例如 a-b + c,表達式中有-和+兩種運算符,且優先順序相同,按先左後右結合方向,先圍繞減號結合,執行 a-b 的運算,再圍繞加號結合,完成運算(a-b) + c。
❺ 怎麼在c語言中輸出按位與的結果編個程序出來
#include
#define
X
45
//第一個數
#define
Y
89
//第二個數
int
main(void)
{
int
i,c;
c=X&Y;
//兩個數按位與,結果用下面的辦法輸出
for(i=31;i>=0;i--)
{//c是32位數,思路就是要輸出哪位數,就先把這位數右移到最右邊,
//然後和1進行位與,這樣就把最右邊的位篩選出來了。
printf("%d",(c>>i)&1);
}
printf("\n");
return
0;
}
❻ c語言,int 按位轉字元型,加上列印信息就能正確輸出,否則出錯
abyte變數,在函數InttoByte中使用,在這個函數有效域內有效。
返回值為abyte的首地址,這個地址不會取消,但是在InttoByte函數結束時,其中使用的內存都會釋放,內容也會有不可預測的變動,這個時候,abyte的空間都釋放了,內容也不一定會保存。
所以返回之後,abyte的地址內的值已經變了,是不可以這樣的;
一般返回值為指針的情況,返回的地址一定是在調用函數的作用域中有效的,
比如在main函數中定義了char * ,然後在函數參數中有這個地址,並且函數中變更了char * 的內容並且返回這個指針,就不會擔心有這樣的問題。或者用全局變數也是可以的。
❼ c語言 按有效數字輸出
printf("%.4g", );
❽ C語言 遞歸實現順序輸出整數 要求實現一個函數,對一個整數進行按位順序輸出
比如要執行printdigits(1234),則執行
printdigits(1234/10);
printf("%d\n",1234%10);
要先執行printdigits(1234/10),即printdigits(123),變成執行
printdigits(123/10);
printf("%d\n",123%10);
printf("%d\n",1234%10);
要先執行printdigits(123/10),即printdigits(12),變成執行
printdigits(12/10);
printf("%d\n",12%10);
printf("%d\n",123%10);
printf("%d\n",1234%10);
要先執行printdigits(12/10),即printdigits(1),變成執行
printf("%d\n",1);
printf("%d\n",12%10);
printf("%d\n",123%10);
printf("%d\n",1234%10);
以上依次執行列印:1 2 3 4
❾ c語言中的按位順序輸出是什麼意思
意思就是比如輸入一個數123,你就按順序輸出1,2,3