1141: 进制转换 C语言

1141: 进制转换
时间限制: 1 Sec 内存限制: 128 MB
提交: 11523 解决: 4446
[状态] [讨论版] [提交] [命题人:admin]
题目描述
将十进制整数n转换成二进制,并保存在字符数组中,最后输出。要求定义并调用convert()函数, 将十进制整数n对应的二进制数存入字符数组str中。

void convert(int n, char str[]);

输入
输入一个非负整数n,n<2^31。

输出
输出一个01字符串,即n对应的二进制数,不含前导0。输出占一行。

样例输入 Copy
13
样例输出 Copy
1101

#include <stdio.h>

// 函数原型声明 
void convert(int n, char str[]);
 
// 进制转换 
int main() {
    
    
	int n;
	char str[10000];
	scanf("%d", &n);
	convert(n, str);
	return 0;
}


// 函数实现十进制转换为二进制 
void convert(int n, char str[]){
    
    
	int i = 0, j = 0;
	if(n == 0)
		printf("0");
		while(n > 0){
    
    
			str[i++] = n % 2 + '0';
			n /= 2;
		}
		for(j = i - 1; j >= 0; j--)
			printf("%c", str[j]); 
}

猜你喜欢

转载自blog.csdn.net/m0_45306379/article/details/121612049