请编写一个C函数,该函数可以实现将一个整数转为任意进制的字符串输出
2016-11-04 20:54
579 查看
/*****************************************************
copyright (C), 2014-2015, Lighting Studio. Co., Ltd.
File name:
Author:Jerey_Jobs Version:0.1 Date:
Description:
Funcion List:
*****************************************************/
#include <stdio.h>
int fun2(int num);
int fun16(int num);
int fun8(int num);
int main()
{
int num,kind; //定义变量num取用户输入整数,kind取用户需要变换的进制
printf("Enter the number : \n"); //提示用户输入
scanf("%d",&num);
printf("what kind of number do you want to change(2 or 16 or 8) :\n");
scanf("%d",&kind);
if(kind == 2) //根据用户需求进行变换
{
fun2(num);
}
else if(kind == 16)
{
fun16(num);
}
else if(kind == 8)
{
fun8(num);
}
else //当用户输入不正确时,给出报错信息
{
printf("error!\n");
}
return 0;
}
int fun2(int num) //二进制转换
{
int s[32] = {0};
int i,n = 0;
while(num != 0)
{
s[n++] = num % 2;
num = num / 2;
}
printf("二进制数为 :");
for(i = n - 1;i >= 0;i--)
{
printf("%d",s[i]);
}
printf("\n");
return 0;
}
int fun16(int num) //十六进制转换
{
int s[32] = {0};
int i,n = 0;
while(num != 0)
{
s[n++] = num % 16;
num = num / 16;
}
printf("十六进制数为 :");
for(i = n - 1;i >= 0;i--)
{
printf("%d",s[i]);
}
printf("\n");
return 0;
}
int fun8(int num) //八进制转换
{
int s[32] = {0};
int i,n = 0;
while(num != 0)
{
s[n++] = num % 8;
num = num / 8;
}
printf("八进制数为 :");
for(i = n - 1;i >= 0;i--)
{
printf("%d",s[i]);
}
printf("\n");
return 0;
}
copyright (C), 2014-2015, Lighting Studio. Co., Ltd.
File name:
Author:Jerey_Jobs Version:0.1 Date:
Description:
Funcion List:
*****************************************************/
#include <stdio.h>
int fun2(int num);
int fun16(int num);
int fun8(int num);
int main()
{
int num,kind; //定义变量num取用户输入整数,kind取用户需要变换的进制
printf("Enter the number : \n"); //提示用户输入
scanf("%d",&num);
printf("what kind of number do you want to change(2 or 16 or 8) :\n");
scanf("%d",&kind);
if(kind == 2) //根据用户需求进行变换
{
fun2(num);
}
else if(kind == 16)
{
fun16(num);
}
else if(kind == 8)
{
fun8(num);
}
else //当用户输入不正确时,给出报错信息
{
printf("error!\n");
}
return 0;
}
int fun2(int num) //二进制转换
{
int s[32] = {0};
int i,n = 0;
while(num != 0)
{
s[n++] = num % 2;
num = num / 2;
}
printf("二进制数为 :");
for(i = n - 1;i >= 0;i--)
{
printf("%d",s[i]);
}
printf("\n");
return 0;
}
int fun16(int num) //十六进制转换
{
int s[32] = {0};
int i,n = 0;
while(num != 0)
{
s[n++] = num % 16;
num = num / 16;
}
printf("十六进制数为 :");
for(i = n - 1;i >= 0;i--)
{
printf("%d",s[i]);
}
printf("\n");
return 0;
}
int fun8(int num) //八进制转换
{
int s[32] = {0};
int i,n = 0;
while(num != 0)
{
s[n++] = num % 8;
num = num / 8;
}
printf("八进制数为 :");
for(i = n - 1;i >= 0;i--)
{
printf("%d",s[i]);
}
printf("\n");
return 0;
}
相关文章推荐
- 请编写一个C函数,该函数可以实现将一个整数转为任意进制的字符串输出
- 请编写一个C函数,该函数可以实现将一个整数转为任意进制的字符串输出
- 请编写一个C函数,该函数可以实现将一个整数转为任意进制的字符串输出
- 4.2题目: 请编写一个C函数,该函数可以实现将一个整数转为任意进制的字符串输出
- 请编写一个C函数,该函数可以实现将一个整数转为任意进制的字符串输出
- 请编写一个C函数,该函数可以实现将一个整数转为任意进制的字符串输出
- 2.写一个C函数,该函数可以实现将一个整数转为任意进制的字符串输出
- c函数实现将一个整数转为任意进制的字符串输出
- 【剑指offer】C语言:实现函数可以将一个字符串转换为对应的整数,如+1234输出1234
- 【剑指offer】C语言:实现函数可以将一个字符串转换为对应的整数,如+1234输出1234
- 实现一个函数int my_atoi(char s[]),可以将一个字符串转换为对应的整数。
- 【C语言】【笔试题】实现一个函数int my_atoi(char s[]),可以将一个字符串转换为对应的整数。
- 【C语言】【笔试题】实现一个函数int my_atoi(char s[]),可以将一个字符串转换为对应的整数。
- 编写一个函数reverse_string(char * string) 实现:将参数字符串中的字符反向排列。 要求:不能使用C函数库中的字符串操作函数
- 编写程序:从键盘上输入若干个整数(以输入-1作为结束标识),输出这些数中的最大值和最小值,要求编写一个函数实现最大值和最小值的求取。
- 实现一个函数int my_atoi(char s[]),可以将一个字符串转换为对应的整数
- <笔试><面试>编写一个排序函数,实现,既可以排序整形数组,又可以排序字符串。
- <笔试><面试>编写一个排序函数,实现,既可以排序整形数组,又可以排序字符串。
- (用指针方法处理)有n个整数,使前面各数顺序向后移m个位置,最后m个数变成最前面m个数。编写一个函数实现上述功能,在主函数中输入n个整数,并输出调整后的n个数
- 【C语言】编写一个函数reverse_string(char * string) 实现:将参数字符串中的字符反向排列。要求:不能使用C函数库中的字符串操作函数。