< Back to forum

function in c/c++ for adding any two given numbers of an array

given below is my code to make a function which add two numbers of an array....bt its showing compilation error,,,,i.g ""   expected 'int' but argument is of type 'int *'    ""so where i am wrong...and please share the correct code.........

#include<stdio.h>
int sumfinder(int,int,int);
int main()
{
 int n;
 scanf("%d",&n);
 int a[n],r,n1,n2,i;
 scanf("%d %d",&n1,&n2);
 for(i=0;i<n;i++)
 {
  scanf("%d",&a[i]);
 }
 r=sumfinder(a,n1,n2);
 printf("%d",r);
 return 0;
}
int sumfinder(int z[],int x,int y)
{
 int c;
 c=z[x]+z[y];
 return (c);
}

Asked by: Abhishek_Chaudhary on April 7, 2019, 6:34 p.m. Last updated on April 7, 2019, 6:34 p.m.


Enter your answer details below:


Enter your comment details below:




1 Answer(s)

avatar

Your function prototype is wrong.

Since the first parameter is an array, it should be,

int sumfinder(int*,int,int);
OR
int sumfinder(int [],int,int);

 

Shubham_Kumar_Gupta last updated on April 7, 2019, 6:34 p.m. 0    Reply    Upvote   

Instruction to write good question
  1. 1. Write a title that summarizes the specific problem
  2. 2. Pretend you're talking to a busy colleague
  3. 3. Spelling, grammar and punctuation are important!

Bad: C# Math Confusion
Good: Why does using float instead of int give me different results when all of my inputs are integers?
Bad: [php] session doubt
Good: How can I redirect users to different pages based on session data in PHP?
Bad: android if else problems
Good: Why does str == "value" evaluate to false when str is set to "value"?

Refer to Stack Overflow guide on asking a good question.