myatoi, mystcmp, mystrcasecmp,mystrncmp

来源:互联网 发布:校园网络设计方案ppt 编辑:程序博客网 时间:2024/05/29 17:17
/****************************************int atoi(char *s):不能转换则返回0将字符串s转为int整数atoi(“123”) :结论为123atoi(“12ab”):结论为12atoi(“ab”):结论为0*****************************************///***********myatoi**********************#include <stdio.h>#include <ctype.h>int myatoi(char *str){int sum = 0, i;for(i = 0; str[i]; i++ ){if(isdigit(str[i])){sum = sum * 10 + (str[i] - '0');}else {break;}}return sum;}int main(void){char src[1024];gets(src);printf("%d\n", myatoi(src));return 0;}/**********************************************akaedu@akaedu-G41MT-D3:~/lin/722_str$ ./myatoi 56895689akaedu@akaedu-G41MT-D3:~/lin/722_str$ ./myatoi 59da59akaedu@akaedu-G41MT-D3:~/lin/722_str$ ./myatoi ad0akaedu@akaedu-G41MT-D3:~/lin/722_str$ ./myatoi ad560***********************************************/<pre name="code" class="cpp">//************************mystrcmp***************#include <stdio.h>int mystrcmp(char *s1, char *s2){int i;for(i = 0; (s1[i] == s2[i]); i++){if(!s1[i]){  // !s1[i] // ( s1[i] == '\0')return 0;}}return s1[i] > s2[i] ? 1: -1;}int main(void){char src1[1024];char src2[1024];gets(src1);gets(src2);printf("%d\n", mystrcmp(src1, src2) );return 0;}/*akaedu@akaedu-G41MT-D3:~/lin/722_str$ ./mystrcmp abcabc0akaedu@akaedu-G41MT-D3:~/lin/722_str$ ./mystrcmp ababc-1akaedu@akaedu-G41MT-D3:~/lin/722_str$ ./mystrcmp abcab1*/
//************************mystrncmp********************//*****************************************************#include <stdio.h>int mystrncmp(char *s1, char *s2, int n){int i;for(i = 0; (s1[i] == s2[i]); i++){n--;if((n == 0) || !s1[i]){  // !s1[i] // ( s1[i] == '\0')return 0;}//printf("i:%d n:%d\n", i, n);}return s1[i] > s2[i] ? 1: -1;}int main(void){char src1[1024];char src2[1024];gets(src1);gets(src2);printf("%d\n", mystrncmp(src1, src2, 3) );return 0;}/*akaedu@akaedu-G41MT-D3:~/lin/722_str$ ./mystrncmphellohelwzi:0 n:2i:1 n:10akaedu@akaedu-G41MT-D3:~/lin/722_str$ ./mystrncmphewlhelli:0 n:2i:1 n:11akaedu@akaedu-G41MT-D3:~/lin/722_str$ ./mystrncmpheelhewli:0 n:2i:1 n:1-1*/
//*********************mystrcasecmp********************//*****************************************************#include <stdio.h>#include <ctype.h>int mystrcasecmp(char *src1, char *src2){int i;for(i = 0; ( toupper(src1[i]) == toupper(src2[i]) ); i++){if(!src1[i]){return 0;}}return src1[i] > src2[2] ? 1: -1;}int main(void){char str1[1024];char str2[1024];gets(str1);gets(str2);printf("%d\n", mystrcasecmp(str1, str2));return 0;}/*abcAB 1akaedu@akaedu-G41MT-D3:~/lin/722_str$ ./mystrcasecmp sdSD0akaedu@akaedu-G41MT-D3:~/lin/722_str$ ./mystrcasecmp sssAAAAA1akaedu@akaedu-G41MT-D3:~/lin/722_str$ ./mystrcasecmp fgFGG-1*/




0 0
原创粉丝点击