错误error C2106: “=”: 左操作数必须为左值 代码如下 我刚开始学c语言,这个是什么意思?

#include <stdio.h>

int main()
{
int grade;
char pass[30];

printf("输入你的考试分数: ");
scanf(" %d", &grade);

pass = (grade >= 60) ? "通过" : "不通过";
printf(" %c\n", pass);

getchar();
getchar();
return 0;
}
把pass定义为整型1或者0可以运行,但是改成字符串就不行了是为什么?

第1个回答  2017-09-05
字符串数组不能用=来赋值
第2个回答  2017-09-05
#include <stdio.h>

int main(){
int grade;
char pass[30];  //////字符串

printf("输入你的考试分数: ");
scanf(" %d", &grade);

pass = (grade >= 60) ? "通过" : "不通过";//使用 strcpy来设置字符串
printf(" %c\n", pass);//字符串输出,使用%s

getchar();
getchar();
return 0;
}

第3个回答  2017-09-05
#include<stdio.h>
#include<string.h>

int main()
{
int grade;
char pass[30];

printf("输入你的考试分数: ");
scanf("%d", &grade);

if(grade>=60)
strcpy(pass,"通过");
else
strcpy(pass,"不通过");
printf("%s\n", pass);

getchar();
getchar();
return 0;
}本回答被提问者和网友采纳
相似回答