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"。
各位有兴趣的读者可以自行设计程序实现,我将在下一篇文章揭晓该题的代码实现供参考!
扫码关注我,手把手带你撸代码如果你觉得文章让您增长了知识,
请点击右下方的“在看”