我是靠谱客的博主 魁梧舞蹈,最近开发中收集的这篇文章主要介绍C语言思想14,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述



/* 函数trans将无符号整数n翻译成d(2<=d<=16)进制表示的字符串s */
#include<stdio.h>
#include<stdlib.h>
#define M sizeof(unsigned int)*8
int trans(unsigned n, int d, char s[])
{
static char digits[] ="0123456789ABCDEF"; /* 十六进制数字的字符 */   提供显示的图像元素
char buf[M+1];
int j, i = M;
if(d<2||d>16)                                 异常处理
{
s[0]=''; /* 不合理的进制,置s为空字符串 */
return 0; /* 不合理的进制,函数返回0 */
}
buf[i]='';
do
{
buf[--i]=digits[n%d];/*译出最低位,对应字符存入对应工作数组中*/
n/=d;
}while(n);               主要算法思想,取余数
/* 将译出在工作数组中的字符串复制到s */
for(j=0;(s[j]=buf[i])!='';j++,i++);
/* 其中控制条件可简写成s[j]=buf[i] */
return j;
}
/* 主函数用于测试函数 trans() */
main()
{
unsigned int num = 253;
int scale[]={2,3,10,16,1};
char str[33];
int i;
system("cls");    清空不需要显示的图像
for(i=0;i<sizeof(scale)/sizeof(scale[0]);i++)
{
if(trans(num,scale[i],str))
printf("%5d = %s(%d)n",num,str,scale[i]);
else
printf("%5d => (%d) Error! n",num,scale[i]);
}
printf("n Press any key to quit...n");

getchar();

getchar();

}

最后

以上就是魁梧舞蹈为你收集整理的C语言思想14的全部内容,希望文章能够帮你解决C语言思想14所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(43)

评论列表共有 0 条评论

立即
投稿
返回
顶部