Solved

finding the minimum of two numbers

Posted on 2009-04-04
10
1,253 Views
Last Modified: 2012-05-06
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
}

Open in new window

0
Comment
Question by:prebek
10 Comments
 
LVL 84

Accepted Solution

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

Assisted Solution

by:Infinity08
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

by:Infinity08
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
Are your AD admin tools letting you down?

Managing Active Directory can get complicated.  Often, the native tools for managing AD are just not up to the task.  The largest Active Directory installations in the world have relied on one tool to manage their day-to-day administration tasks: Hyena. Start your trial today.

 

Expert Comment

by:mayank13
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

by:Infinity08
ID: 24178908
My suggestion :

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

Expert Comment

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

Author Closing Comment

by:prebek
ID: 31566664
thanks buddy
0

Featured Post

PRTG Network Monitor: Intuitive Network Monitoring

Network Monitoring is essential to ensure that computer systems and network devices are running. Use PRTG to monitor LANs, servers, websites, applications and devices, bandwidth, virtual environments, remote systems, IoT, and many more. PRTG is easy to set up & use.

Question has a verified solution.

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

This tutorial is posted by Aaron Wojnowski, administrator at SDKExpert.net.  To view more iPhone tutorials, visit www.sdkexpert.net. This is a very simple tutorial on finding the user's current location easily. In this tutorial, you will learn ho…
Summary: This tutorial covers some basics of pointer, pointer arithmetic and function pointer. What is a pointer: A pointer is a variable which holds an address. This address might be address of another variable/address of devices/address of fu…
Video by: Grant
The goal of this video is to provide viewers with basic examples to understand and use nested-loops in the C programming language.
The goal of this video is to provide viewers with basic examples to understand how to create, access, and change arrays in the C programming language.

776 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question