/** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * 比较版本号 * @param version1 string字符串 * @param version2 string字符串 * @return int整型 */ int compare(char* version1, char* version2 ) { // write code here int v1 = 0; int v2 = 0; int data1 = 0; int data2 = 0; while(version1[v1] != '\0' && version2[v2] != '\0') { data1 = 0; data2 = 0; while(version1[v1] != '.' && version1[v1] != '\0') { data1 *= 10; data1 += (version1[v1] - '0'); v1++; } if (version1[v1] != '\0') { v1++; } while(version2[v2] != '.' && version2[v2] != '\0') { data2 *= 10; data2 += (version2[v2] - '0'); v2++; } if (version2[v2] != '\0') { v2++; } if (data1 > data2) { return 1; } else if (data1 < data2) { return -1; } } while (version1[v1] != '\0') //版本号后面有可能全是零所以还要判断 { if (version1[v1] != '.' && version1[v1] != '0') { return 1; } v1++; } while (version2[v2] != '\0') { if (version2[v2] != '.' && version2[v2] != '0') { return -1; } v2++; } return 0; }