K12教育赛事综合服务平台
聚乐之家官方网站
下载聚乐之家官方App
专注青少年竞赛题库网站
已知原C++代码如下,存在循环边界错误与可优化的重复计算问题:
int calculateTotal(char* str) { int total = 0; for(int i=0; i<=strlen(str); i++){ total += str[i]; } return total; }
以下哪个修改方案同时解决了上述两个问题?
int calculateTotal(char* str) { int total = 0; int len = strlen(str); for(int i=0; i<len; i++){ total += str[i]; } return total; }
int calculateTotal(char* str) { int total = 0; for(int i=0; i<strlen(str); i++){ total += str[i]; } return total; }
int calculateTotal(char* str) { int total = 0; int len = strlen(str); for(int i=0; i<=len; i++){ total += str[i]; } return total; }
int calculateTotal(char* str) { int total = 0; for(int i=1; i<=strlen(str); i++){ total += str[i]; } return total; }