新手求助C语言,求大神解答

#include
#include
#include
#include
int main()
{
const int target;
int min,max,count,guess;
char c='Y';
srand(time(NULL));
while(1){
min=1;
max=100;
count=0;
target=rand()%max+1;
while(1){
guess=0;
printf("输入一个数字 %d %d\n",min,max);
fflush(stdin);
scanf("%d",&guess);
++count;
if(guessmax){
printf("the input is out of %d-%d\n",min,max);
continue;}
else{
if(target==guess){
printf("恭喜你!\nyou have guessed %d times in total.\n",count);
break;}
else if(target>guess){
min=guess;
printf("猜测的数字大于 %d\n",guess);}
else{
max=guess;
printf("猜测的数字小于 %d\n",guess);}}}
printf("是否继续?(Y-yes,N-no)\n");
fflush(stdin);
scanf("%c",&c);
if(toupper(c)!='Y')
break;}
return 0;
}

提示15行 左值指定 const 对象
是哪里错了,要怎么改

9个回答

 int main()
{
int target; //const不能修改,去掉
int min,max,count,guess;
char c='Y';
srand(time(NULL));
while(1){
min=1;
max=100;
count=0;
target=rand()%max+1; //const
while(1){
guess=0;
printf("输入一个数字 %d %d\n",min,max);
fflush(stdin);
scanf("%d",&guess);
++count;
if(guess>max || guess<min){//这里需要改
printf("the input is out of %d-%d\n",min,max);
continue;}
else{
if(target==guess){
printf("恭喜你!\nyou have guessed %d times in total.\n",count);
break;}
else if(target>guess){
min=guess;
printf("猜测的数字大于 %d\n",guess);}
else{
max=guess;
printf("猜测的数字小于 %d\n",guess);}}}
printf("是否继续?(Y-yes,N-no)\n");
fflush(stdin);
scanf("%c",&c);
if(toupper(c)!='Y')
break;}
return 0;
}
baidu_28336467
baidu_28336467 好牛叉
4 年多之前 回复

target是常量,不能被修改

  • 第15行是target=rand()%max+1;
  • 在第7行,你定义了const int target;
  • 所以就报这个错了
  • 如果target的确要被赋值的话,把第7行的const拿掉

报的什么错误,感觉const是恒定,后面又赋值了,这样可以么??我是围观者 - -

target是常量,数值不变

const int target这种好像在c++的类中是可以不直接初始化,其他的必须声明的时候就直接初始化

const int target,说明target是常量,不能修改

const类型的变量的值是不能被修改的

const int target; const定义的不能被修改,去掉const就好了

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问