首页 > 解决方案 > “表达式不可赋值”

问题描述

我试图找到数组的第二大值以创建平衡,“largest_value”是第一个,“large_value”是第二个,当我执行它时它说“表达式不可分配”..我只是开始学习..任何帮助都会很棒。

#include<iostream>
#include<stdlib.h>
int main(){
int i=0,N=0,a;
int largest_value, large_value,temp,temp1;
int* array=NULL,b;
std::cout<<"Enter the Number of elements";
std::cin>>N;
array = new int[N];

//reading the elements.
for(i=0;i<N;i++){
    std::cin>>array[i];
}

//comparing elements.
largest_value=0;
for(i=0;i<N;i++){
    array[i]=temp;
    if(temp > largest_value)
        largest_value=temp;
        a = i;
}
large_value=0;

//picking the second best.
for(i=0;i<N;i++){
    (largest_value - array[i]) = large_value;
    if(temp < large_value)
        large_value = temp;
        b = i;
}       
std::cout<<"the Equlibrium is b/w" <<a << "and" <<b;     

}

标签: c++arrayspointers

解决方案


(largest_value - array[i]) = large_value;

分配以相反的方式工作 a=b 将 b 的值分配给变量 a


推荐阅读