Ⅰ c語言編程如何將一位正整數,從高位到低位分開輸出。如1235,輸出:1,2,3,5。
把 正整數 當字元串處理就行了。 char n[20]; scanf("%s",n); for(i ~ n[i]!='\0') printf("%c ", n[i]);
Ⅱ C語言,輸入一個整數,從高位開始逐位分割並輸出它的各位數字
1、首先,定義三個整型變數,保存整數、各位上的數、整數的位數。
Ⅲ 出輸入一個數,從高位到低位順序輸出每一位的數,每行只顯一個數。用C語言
#include<stdio.h>
int main()
{
int i=0;
char s[10000];
gets(s);
while(s[i]!=0)
{
printf("%c\n",s[i]);
i++;
}
return 0;
}
/*
*親測可用,如有幫助,請點擊下方採納,謝謝
*/
Ⅳ 輸入一個正整數,按照從高位到低位的順序輸出各位數字。
誤解下題意可以用下面這種方法:
#include<stdio.h>
int main()
{
int x;
scanf("%d",&x);
printf("%d\n",x);
return 0;
}
輸入了什麼,我就輸出什麼;滿足題意。
下面是一個精確的計算過程程序:(用的C++不太習慣用C)
#include <iostream>
using namespace std;
int main()
{
int x;
cin>>x;
int i=0;
int c[20]={0};
while(x!=0)
{
c[i++]=x%10;
x/=10;
}
for(int j=i-1;j>=0;j--)
cout<<c[j];
cout<<endl;
return 0;
}
VC6.0編譯通過;所有本人的測試均正確;
Ⅳ c語言的題目,大家幫幫忙,最後按照高位到低位順序輸出每一位數字的值
剛幫人做
#include<stdio.h>
void main()
{
int n,a[20],i,len=0;
printf("請輸入一個整數:");
scanf("%d",&n);
while(n)
{
a[len++]=n%10;
n/=10;
}
for(i=len-1;i>=0;--i)
printf("%d ",a[i]);
printf("\n");
}
Ⅵ 編寫一個遞歸函數outd,將一正整數中的各位數字由高位到低位輸出,c語言
#include <stdio.h>
void haha(int
a)
{
if(a/10 ==0)
{
printf("%d
",a%10);
}
else
{
haha(a/10);
printf("%d
",a%10);
}
}
int main(void)
{
long int
a;
scanf("%ld",&a);
haha(a);
printf("
");
}
Ⅶ C語言 輸入一個正整數,按照從高位到低位的順序輸出各位數字
因為要求從高位輸出,第一個循環求出輸入得數多少位,並用power保存相關信息(如:輸入1,power=1,輸入123,power=100,輸入1234,power=10000,輸入12345,power=10000)。
循環結束後還要再
power=power/10;//因為循環將這個數為一位數的時候多成了10,即輸入1,算出power=10,
//但實際power應該為1
第二個循環,digit=number/power;獲得當前的最高位,最高位獲得到了,接下來就是求次高位,所以
number%=power;//原來的數去掉最高位數字後得到的數
power/=10;//原來的數減少一位,power保存的數也應當縮小10
Ⅷ c語言習題,輸入一個正整數,按照從高位到低位的順序輸出各位數字。
辛苦打來,望採納,謝謝!
#include<stdio.h>
intmain()
{
inta;
intflag=0;
scanf("%d",&a);
if(a/1000000000)
{
printf("%d ",a/1000000000);
flag=1;
}
if(a%1000000000/100000000||flag)
{
printf("%d ",a%1000000000/100000000);
flag=1;
}
if(a%100000000/10000000||flag)
{
printf("%d ",a%100000000/10000000);
flag=1;
}
if(a%10000000/1000000||flag)
{
printf("%d ",a%10000000/1000000);
flag=1;
}
if(a%1000000/100000||flag)
{
printf("%d ",a%1000000/100000);
flag=1;
}
if(a%100000/10000||flag)
{
printf("%d ",a%100000/10000);
flag=1;
}
if(a%10000/1000||flag)
{
printf("%d ",a%10000/1000);
flag=1;
}
if(a%1000/100||flag)
{
printf("%d ",a%1000/100);
flag=1;
}
if(a%100/10||flag)
{
printf("%d ",a%100/10);
flag=1;
}
if(a%10||flag)
{
printf("%d ",a%10);
flag=1;
}
}
不要超過int的范圍就行了
Ⅸ c語言習題,輸入一個正整數,按照從高位到低位的順序輸出各位數字。怎麼做
輸入時由代碼限制只能是正整數,並賦與int型變數n,否則退出;
用一個for循環計算輸入之數的十進制長度,用1之後的0的個數表示並賦與臨時變數t,如10000表示輸入了一個4位十進制正整數;
用一個while循環先後由t/=10和n/t%10來求得從高位至低位的各位數字並輸出。
代碼如下:
#include"stdio.h"
intmain(intargc,char*argv[]){
intn,t;
printf("Pleaseenterapositiveinteger... n=");
if(scanf("%d",&n)!=1||n<1){//保證輸入是正整數,否則退出
printf("Inputerror,exit... ");
return0;
}
printf("Theresultareasfollows: ");
for(t=10;n/t;t*=10);//求出十進制數n的長度,用1後0的個數表示,如1000表示3位數
while(t/=10)
printf("%d",n/t%10);//t/=10與n/t%10配合從高至低輸出各位上的數字
printf(" ");
return0;
}
運行樣例如下:
Ⅹ c語言中輸入一個整數,從高位逐個輸出
將輸入的整數進行判斷屬於幾位數,然後依次除以10的對應倍數,取整即可。