hdu2051bitset 进制转换水题

Bitset

Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 27453    Accepted Submission(s): 20221


Problem Description
Give you a number on base ten,you should output it on base two.(0 < n < 1000)
 

Input
For each case there is a postive number n on base ten, end of file.
 

Output
For each case output a number on base two.
 

Sample Input
 
  
1 2 3
 

Sample Output
 
  
1 10 11
 

进制转换

#include<stdio.h>
#include<iostream>
#include<algorithm>
#include<string.h>
#include<math.h>
using namespace std;
int main()
{
	int n;
	while(scanf("%d",&n)!=EOF)
	{
		int flag=0;
			for(int i=10;i>=0;i--)
			{
				if(n>=pow(2,i))
				{
					printf("1");
					n-=pow(2,i);
					flag=1;
				}
				else if(flag)
				{
					printf("0");
				}
			}
			printf("\n");
			
	}	
	

	
	return 0;
}

猜你喜欢

转载自blog.csdn.net/cao2219600/article/details/80085240