## Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people, just like you, are talking about what matters.

• Help others & share knowledge
• Earn cash & points
Solved

# finding the minimum of two numbers

Posted on 2009-04-04
1,255 Views
I am trying to make a function that finds the minimum of two integers. I compuled the code below without errors but when I run the program I get a "bus error." Any one know what I did incorrectly?
``````#include <stdio.h>
double min(double x, double y);
int main ()
{

int numberone, numbertwo;
printf("Enter a number: ");
scanf("%d", numberone);
printf("\nEnter a another number: ");
scanf("%d", numbertwo);
printf("\nThe smaller of those two integers is %d", min(numberone, numbertwo));

return 0;
}

double min(double x, double y)
{
if (x < y)
y = x;
if (y < x)
x = y;
return x;
// I should be able to return either value since they will be the same by the end
// of the function
}
``````
0
Question by:prebek

LVL 84

Accepted Solution

ozo earned 250 total points
ID: 24069396
scanf("%d", &numberone);
0

LVL 53

Assisted Solution

Infinity08 earned 250 total points
ID: 24069400
You forgot the & in :

scanf("%d", &numberone);

(and the same for the other scanf)
0

LVL 53

Expert Comment

ID: 24070484
prebek, usually, when two experts post the same solution at about the same time, it's customary to either split the points among both posts, or to accept the first post as the answer (since it was fastest). As I mentioned elsewhere, I'll ask to get this re-opened for this reason.
0

Expert Comment

ID: 24105938
1. You should use scanf ( %d, &<variable>) to read input.
2. You can optimize your minimum finding code by just one line using ternary operator ( ? : ) :

#include <stdio.h>
// double min(double x, double y);    <----- no need for this function.
int main ()
{

int numberone, numbertwo;
printf("Enter a number: ");
scanf("%d", numberone);
printf("\nEnter a another number: ");
scanf("%d", numbertwo);
// printf("\nThe smaller of those two integers is %d", min(numberone, numbertwo));   <----- replacing
printf("\nThe smaller of those two integers is %d",
((numberone>numbertwo)?numberone:numbertwo)) ;
return 0;
}

/*  No need for this function.
double min(double x, double y)
{
if (x < y)
y = x;
if (y < x)
x = y;
return x;
// I should be able to return either value since they will be the same by the end
// of the function
}
*/
0

LVL 53

Expert Comment

ID: 24178908
My suggestion :

http:#24069396 (ozo) : because he was quite a bit faster than me :)
0

LVL 84

Expert Comment

ID: 24181145
I might suggest split, since the answers seem close enough that they were most likely produced independently
0

Author Closing Comment

ID: 31566664
thanks buddy
0

## Featured Post

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

### Suggested Solutions

Have you thought about creating an iPhone application (app), but didn't even know where to get started? Here's how: ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ Important pre-programming comments: I’ve never tri…
Windows programmers of the C/C++ variety, how many of you realise that since Window 9x Microsoft has been lying to you about what constitutes Unicode (http://en.wikipedia.org/wiki/Unicode)? They will have you believe that Unicode requires you to use…
The goal of this video is to provide viewers with basic examples to understand opening and reading files in the C programming language.
The goal of this video is to provide viewers with basic examples to understand and use conditional statements in the C programming language.