卡在将“++X”与 C 中的另一个字符串进行比较
Stuck in comparing "++X" with another string in C
我正在尝试将字符串作为输入,如果它等于 X++ 或 ++X,我想对它进行计数。为此,我编写了值代码。尽管它在 X++ 上工作正常,但在 X-- 上却不工作。我该如何解决这个问题?
#include<stdio.h>
#include<string.h>
int main() {
int n,count=0;
char c[5];
scanf("%d",&n);
for(int i=0;i<n;i++){
scanf("%s",c);
if(strcmp(c,"X++")==1 || strcmp(c,"++X")==1) count++;
else count--;
}
printf("%d",count);
return 0;
}
您可能想要将 strcmp(c,"X++")==1
更改为 strcmp(c,"X++")==0
,并将 strcmp(c,"++X")==1
更改为 strcmp(c,"++X")==0
。如果参数相等,strcmp()
将 return 0
,而不是 1
。您可以阅读更多关于 strcmp()
here.
我正在尝试将字符串作为输入,如果它等于 X++ 或 ++X,我想对它进行计数。为此,我编写了值代码。尽管它在 X++ 上工作正常,但在 X-- 上却不工作。我该如何解决这个问题?
#include<stdio.h>
#include<string.h>
int main() {
int n,count=0;
char c[5];
scanf("%d",&n);
for(int i=0;i<n;i++){
scanf("%s",c);
if(strcmp(c,"X++")==1 || strcmp(c,"++X")==1) count++;
else count--;
}
printf("%d",count);
return 0;
}
您可能想要将 strcmp(c,"X++")==1
更改为 strcmp(c,"X++")==0
,并将 strcmp(c,"++X")==1
更改为 strcmp(c,"++X")==0
。如果参数相等,strcmp()
将 return 0
,而不是 1
。您可以阅读更多关于 strcmp()
here.