C语言函数错误
它将打印编译器错误“[error]FIVE undeclared(首次在此函数中使用)”C语言函数错误,c,C,它将打印编译器错误“[error]FIVE undeclared(首次在此函数中使用)” 请帮帮我,我上周才开始写C语言。符号不比较字符串。使用: if(class=5 || class=five || class=Five || class==FIVE ){ goto Okay; } 你已经定义了 if (strcmp(class, java3)==0 || ... 换句话说,您已经将其定义为字符串。但是为了比较字符串,您需要使用strcmp()而不是= #define java5 "FI
请帮帮我,我上周才开始写C语言。符号不比较字符串。使用:
if(class=5 || class=five || class=Five || class==FIVE ){
goto Okay;
}
你已经定义了
if (strcmp(class, java3)==0 || ...
换句话说,您已经将其定义为字符串。但是为了比较字符串,您需要使用strcmp()
而不是=
#define java5 "FIVE"
您的代码有一些错误:永远不要使用
goto
;不要使用C
或C++
关键字作为变量名,如class
;无需同时使用退出(0)
和返回0
if ( (strcmp(class, java5) == 0) || (strcmp(class, java4) == 0) ||... ){
....
}
#包括
#包括
#定义java2“5”
#定义java3“五”
#定义java4“五”
#定义java5“五”
int main()
{
字符输入[10];
printf(“几个让你高兴的问题\n\n\n”);
printf(“Java中有多少类\n”);
扫描频率(“%s”,输入);
如果((strcmp(input,java2)==0)| |(strcmp(input,java3)==0)| |(strcmp(input,java4)==0)| |(strcmp(input,java5)==0))
{
printf(“欢迎使用。\n\n”);
}
其他的
{
printf(“回答不正确!\n\n”);
}
系统(“暂停”);
返回0;
}
希望有帮助。不要将charecter数组与==进行比较,而是使用strcmp函数 也不要使用goto关键字这是一个糟糕的编码习惯,而不是像这样使用标志 int标志=0; 如果(条件) { flag=1; } 如果(标志==1) {
}对于字符串比较,请使用
strcmp()
。使用==
测试指针本身。还未定义“代码>类< /代码>(如果您使用该程序的语言,将与C++关键字冲突),这使得它成为一个不可编译的代码。使用<代码> STRMP()/<代码> <代码> >包含< <代码>,并且永远不要使用<代码> Goto < /Cord> >我想直接跳转到另一行。除了goto,我还能用什么呢?你的代码也使用了=
,这是赋值,不是比较。你应该接受答案。@Adelabufred我很高兴我帮了忙。如果您接受我的答案,我将不胜感激,只要它对您有用:)@Adelabufred如果它有效,请接受答案,这样它就不会在问题提要中显示为未回答。
if ( (strcmp(class, java5) == 0) || (strcmp(class, java4) == 0) ||... ){
....
}
#include <stdio.h>
#include <string.h>
#define java2 "5"
#define java3 "five"
#define java4 "Five"
#define java5 "FIVE"
int main()
{
char input[10];
printf("Few question to cheer you up \n\n\n");
printf("How many class are there in Java\n");
scanf("%s", input);
if ( (strcmp(input, java2) == 0) || (strcmp(input, java3) == 0) || (strcmp(input, java4) == 0) || (strcmp(input, java5) == 0) )
{
printf("Welcome. \n\n");
}
else
{
printf("Incorrect answer! \n\n");
}
system("pause");
return 0;
}