c 语言自行实现字符串常用库函数_C语言经典100题(35)

1

上期答案揭晓

首先给大家看看上一篇文章C语言经典100题(34)中第三部分编程题的答案:

#include int getLen(int num)    //计算该数一共有多少位(长度){    int flags = 0;    for (num; num >0 ; num/=10)      {        flags++;       }    return flags;   //返回位数(长度)}int getIndex(int len)   //len是数的位数{    int i=0;    int res = 1;    for (i = 0; i < len ; i++)    {        res=res*10;        }    return res;    //返回10^i}int main(){    int num,temp,LastNum;    printf("please input a num:\n");    scanf("%d",&num);    int len = getLen(num);    int i=0;       for(i = 0; i    {        temp=num%10;   //提取每个位的数        num=num/10;        LastNum+=temp*getIndex(len-i-1);   //这里是个累加过程    }    printf("the resault=%d\n",LastNum);}

2

今日知识分享

库函数 - isxdigit()

描述

C 库函数 int isxdigit(int c)检查所传的字符是否是十六进制数字。

十六进制一般用数字 0 到 9 和字母 A 到 F(或 af)表示,其中 AF 表示 10~15: 0 1 2 3 4 5 6 7 8 9 a b c d e f A B C D E F。

声明

下面是 isxdigit() 函数的声明。

int isxdigit(int c);

参数

  • c -- 这是要检查的字符。

返回值

如果 c 是一个十六进制数字,则该函数返回非零值(true),否则返回 0(false)。

实例

下面的实例演示了 isxdigit() 函数的用法。

#include #include int main(){   char var1[] = "tuts";   char var2[] = "0xE";   if( isxdigit(var1[0]) )   {     printf("var1 = |%s| 是十六进制数字\n", var1 );   }   else   {     printf("var1 = |%s| 不是十六进制数字\n", var1 );   }   if( isxdigit(var2[0] ))   {     printf("var2 = |%s| 是十六进制数字\n", var2 );   }   else   {     printf("var2 = |%s| 不是十六进制数字\n", var2 );   }   return(0);}
让我们编译并运行上面的程序,这将产生以下结果:
var1 = |tuts| 不是十六进制数字var2 = |0xE| 是十六进制数字

3

今日经典编程题

题目:字符串反转,如将字符串 "www.nowcoder.com" 反转为 "moc.redocwon.www"。

各位有兴趣的读者可以自行设计程序实现,我将在下一篇文章揭晓该题的代码实现供参考!

扫码关注我,手把手带你撸代码 07b3088c79e080cd8a38b39f7b72b614.png

如果你觉得文章让您增长了知识,

请点击右下方的“在看

   52a9493ba31a3efaf36cb84dd187a280.gif
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值