❶ c語言輸入一個整數怎麼分別輸出它的每位上的數字
可以通過除法運算符( / )和求余運算符( % )結合循環來實現分別輸出一個整數的每位數字。
具體實現方法可以參考如下程序及注釋說明:
#include<stdio.h>
voidmain()
{
intdata;
inttemp;
printf("請輸入一個整數:");
scanf("%d",&data);//接收用戶輸入的整數,並賦值給變數data
printf("%d從最低位到最高位分別為:",data);
while(data>0)//當data=0或小於0時,退出循環,此時所以位數都已取出
{
temp=data%10;//取出data的最低位
printf("%d",temp);//輸出最低位
data/=10;//將去掉data的最低位,次低位變為最低位
}
}
❷ c語言中如何實現輸入一個整數實現倒序輸出
1、新建一個工程和.c文件,輸入頭文件和主函數
❸ 用C語言編寫程序從鍵盤輸入一個正整數數n,輸出n!
編程實現計算n!,也就是n*(n-1)*(n-2)*....*1,可以通過遞歸函數來實現,具體實現方法:
#include <stdio.h>
int Func(int n)
{
if(n < 2)
return 1;
else
return n*Func(n-1);
}
void main()
{
int n =0,m=0;
printf("請輸入一個正整數:")
scanf("%d",&n);
m=Func(n);
printf("%d!=%d
",n,m);
}
在以上程序代碼中,Func()為遞歸函數,主函數main()中接收鍵盤輸入整數值後,調用Func()遞歸函數,首層m=n*(n-1)!,繼續遞歸調用,m=n*(n-1)(n-2)!,這樣逐層遞歸,直到計算出N!。
程序輸出結果如下:
(3)c語言里請輸入一個整數擴展閱讀:
所謂n的階乘就是從1到n的乘積,所以除了遞歸法來實現以外,其實我們也可以通過一個for循環,從1到n依次求積同樣可以達到計算n!的目地。
具體實現代碼如下:
#include <stdio.h>
int main() {
int n,i,s=1;
scanf("%d",&n);
for(i=1;i<=n;i++)//for循環求累積
s=s*i;
printf("%d ",s);
return 0;
}
/*
運行結果:(例如求5的階乘)
5
120
*/
❹ C語言編程:輸入一個整數,求各位數字之和..
求整數各位和,將整數各個位分離出來的方法(除10取模)很常用。
函數如下
int intsum(int n)
{
int sum = 0;
while(n) //不斷分離最低位
{
sum += n%10;
n /= 10;
}
return sum;
}
❺ C語言:請編寫一個程序,輸入一個整數n(0
#include<stdio.h>
#include<math.h>
int
main()
{
int
n;
printf("請輸入一個十進制的整數\n");
scanf("%d",&n);
int
time
=
0;
int
a
=
0;
while(n!=0){
if(n%2==0)
a
=
a;
if(n%2==1)
a
=
a
+
pow(10,time);
time++;
n=n/2;
}
printf("%d",a);
return
0;
}
❻ . c語言編程:輸入一個正整數,統計該數的各位數字中零的個數,並求各位數字中的最大者。
#include <stdio.h>
int main()
{
int n,t,count=0,max=0;
printf("請輸入正整數n: ");
scanf("%d",&n);
while(n)
{
t=n%10;
if(t==0)
count++;
else if(t>max)
max=t;
n=n/10;
}
printf("count=%d,max=%d ",count,max);
return 0;
}
count:0的個數。
max:各位數字中的最大者
(6)c語言里請輸入一個整數擴展閱讀:
while 循環的格式是:
while (表達式)
{
語句;
}
當表達式為真,則執行下面的語句;語句執行完之後再判斷表達式是否為真,如果為真,再次執行下面的語句;然後再判斷表達式是否為真……就這樣一直循環下去,直到表達式為假,跳出循環。這個就是 while 的執行順序。
❼ C語言中,輸入一個整數,求這個整數的數字之和
可以利用字元數組來存放整數的各位數值,即將整數當成一串字元來輸入。
如果要輸入12345678901234567890,則定義一個char型數組a[20],將用戶輸入的整數當成一串字元存入字元數組a中。
具體實現方法可以參考如下程序段:
char a[20];
scanf("%s", a); // 輸入12345678901234567890,即可將該整數輸入到字元數組a當中
// 則數組a中各元素值為a[0]='1', a[1]='2', a[2]='3', ....... , a[19]='0'
// 在進行運算的時候將字元轉換為數字即可(即a[i]-'0')