离谱啊,想知道这个代码错在哪里,还有数组的字符比较问题
#include
#include
int solution(int m, char (*str)[]){
int result=0;
for(int i=0;iif((*str)[i]=="ak")
result+=1;
else if((*str)[i]=="m4a1")
result+=1;
else if((*str)[i]=="skr")
result+=1;
}
// TODO: 请在此编写代码
return result;
}
int main() {
int n;
scanf("%d", &n);
char (*str)[100];
str = (char(*)[100])malloc(n * sizeof(char *));
for (int i = 0; i < n; i++)
{
scanf("%s", str[i]);
}
int result = solution(n, str);
printf("%d", result);
return 0;
}
题目要求是:
字符串比较要用strcmp函数,不能用==
另外if((*str)[i]=="ak")也是错误写法,应该是 strcmp(str[i],"ak") == 0