Dev-c ++编译错误对象

时间:2013-09-25 15:58:39

标签: c

#include <stdio.h>
#include<stdlib.h>
int main(void){
int n1,k1;
int tot;
    scanf("%d",k1);
    scanf("%d",n1);

    tot=((k1=1)?((n1(n1+1))/2):((n1(n1+1))/2)-((k1(k1+1))/2));
    return 0;
}

这段代码错了?

使用Dev c ++编译它,给我错误“被称为对象不是函数”引用

 tot=((k1=1)?((n1(n1+1))/2):((n1(n1+1))/2)-((k1(k1+1))/2));

1 个答案:

答案 0 :(得分:1)

首先,您应该使用scanf运算符将指向变量的指针传递给&函数:

scanf("%d",&k1);
scanf("%d",&n1);

其次,你应该纠正表达式语法中的错误:

  • 使用==代替=来检查相等性
  • 如果要执行复制,
  • 明确使用*运算符。

tot=((k1==1)?((n1*(n1+1))/2):((n1*(n1+1))/2)-((k1*(k1+1))/2));