【c語言】輸入一個整數,將每一位數字輸出


 程序需求:輸入一個整數,將每一位數字輸出
  編程思路:將每一位輸出來,我們可以先獲取這個數的最高權位是多少
  t = number; 將從鍵盤上獲取的數 拷貝一份給t 
  while(t>=10) 中 主要的作用是獲取最高位數 power*=10 每執行一次就*10 t/=10 對一個數整除
  假如我們輸入一個數字:
  123 執行完成之后,power 中存儲的是100 
  我們知道了最高位是百位 那么就可以用/ %獲取各個位上的數字
        digit = number/power;
        printf("%d\n",digit);
        number%=power;
        power/=10;

     上面這3句話的作用是將        
     123/100 digit = 1 123%100 = 23  100/10=10              鍵盤上輸出: 1
     23/10  digit = 2  23%10=3  10/10=1                     鍵盤上輸出: 2
     1>=1  3/1 digit = 3 3%1 = 0  1/10 = 0                  鍵盤上輸出: 3
     到此程序不符合條件 跳出程序結束 釋放cpu的使用權 釋放存儲空間

#include<stdio.h>
/*
  程序作用:輸入一個整數,將每一位數字輸出
  編程思路:將每一位輸出來,我們可以先獲取這個數的最高權位是多少
  t = number; 將從鍵盤上獲取的數 拷貝一份給t 
  while(t>=10) 中 主要的作用是獲取最高位數 power*=10 每執行一次就*10 t/=10 對一個數整除
  假如我們輸入一個數字:
  123 執行完成之后,power 中存儲的是100 
  我們知道了最高位是百位 那么就可以用/ %獲取各個位上的數字
		digit = number/power;
		printf("%d\n",digit);
		number%=power;
		power/=10;

     上面這3句話的作用是將        
	 123/100 digit = 1 123%100 = 23  100/10=10              鍵盤上輸出: 1
	 23/10  digit = 2  23%10=3  10/10=1                     鍵盤上輸出: 2
	 1>=1  3/1 digit = 3 3%1 = 0  1/10 = 0                  鍵盤上輸出: 3
	 到此程序不符合條件 跳出程序結束 釋放cpu的使用權 釋放存儲空間
**/
void main(){
	
	int digit,number,power,t;
	printf("enter an integer:");
	scanf("%d",&number);
	number = number<0?-number:number;
	//獲取從鍵盤上輸入數的最高位 3456 是1000
	power = 1;//最高位
	t = number;
	while(t>=10){
		power*=10;
		t/=10;
	};
	//遍歷輸出從鍵盤上獲取的數據 各個上的位數
	printf("the digits are:");
	while(power>=1){
		digit = number/power;
		printf("%d\n",digit);
		number%=power;
		power/=10;
	}	

}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM