1、解体整数

1.タイトル:解体整数

プログラミング要件:

  1. 入力:キーボードから数値(いくつかのテストは、入力数のビットの数は、1、2、3、4、5)
  2. 出力:それは出力エラー、または出力(1)ビットの数(2)が負である場合、シーケンス番号の正の出力(3)出力の数の逆の順序での
  3. :入力325、出力523
#include<stdio.h>
#include<math.h>
int main(){
	int n, m, p, count=0;
	scanf("%d", &n);
	m=n;
	p=n;						//n、m、p均为输入的数,count记录位数

//一、求出该数的位数,用n
	if(n<0){
		printf("error\n");
	}else{
		do{
			count++;
			n = n/10;
		}while(n!=0);
	printf("位数为%d\n", count);
	
//二、正序输出,用m
	printf("正序输出为:");
	int divide;
	divide = pow(10,count-1);	//以除法得m的最高位数字,需要先确定除数的大小,如:321/100 = 3
	do{
		printf("%d", m/divide);
		m = m%divide;			//m去掉它的最高位 
		divide = divide/10;
		if(divide!=0){			//该if语句可有可无。有,则可避免多输出结尾的一个空格
			printf(" ");
		}
	}while(divide!=0);			//******正序输出则不能用m!=0做判据,否则当输入100、10等数时,输出是不合预期的******
	printf("\n");
	
//三、逆序输出,用p
	printf("逆序输出为:");
	do{
		printf("%d", p%10);
		p = p/10;
		if(p!=0){
			printf(" ");
		}
	}while(p!=0);				//******逆序输出则可以用p!=0做判据******
	printf("\n");
	
	return 0;
}

説明:ノート、一部Notesのアスタリスクと

公開された16元の記事 ウォンの賞賛0 ビュー335

おすすめ

転載: blog.csdn.net/NAU_LHT/article/details/104144181