Weird bug ?

This is a discussion on Weird bug ? within the C Programming forums, part of the General Programming Boards category; I made a progam to calculate the surface of a cirkel. But when i open it, and a give the ...

  1. #1
    Registered User
    Join Date
    Jun 2007
    Posts
    1

    Weird bug ?

    I made a progam to calculate the surface of a cirkel. But when i open it, and a give the dia meter and press enter, the progam close. This is the code;
    Code:
    #include <stdio.h>
    #define PI 3.14
    int main()
    {
    int diameter;
    double straal;
    double oppervlakte;
    
    printf("Geef de diameter van de cirkel:\t");
    scanf("&#37;d", &diameter);
    
    straal = diameter / 2;
    oppervlakte = PI * (straal * straal);
    
    printf(" De oppervlakte is \t%d", oppervlakte);
    return 0;
    }
    (don't look at the dutch words)
    Do you know a solution?

  2. #2
    CSharpener vart's Avatar
    Join Date
    Oct 2006
    Location
    Rishon LeZion, Israel
    Posts
    6,484
    1. diameter / 2 uses integer division - I don't think you want it
    2. printf(" De oppervlakte is \t&#37;d", oppervlakte);

    oppervlakte is double - suitable format for printf is %f

    3. See the FAQ why the Window of the program will close on exit and how to prevent it - for example run it from the command prompt
    The first 90% of a project takes 90% of the time,
    the last 10% takes the other 90% of the time.

  3. #3
    Woof, woof! zacs7's Avatar
    Join Date
    Mar 2007
    Location
    Australia
    Posts
    3,459
    A little bit of indenting wouldn't hurt either

  4. #4
    Frequently Quite Prolix dwks's Avatar
    Join Date
    Apr 2005
    Location
    Canada
    Posts
    8,048
    Surely you can find a more accurate value for pi. From memory, pi is 3.14159265358979. Even typing "pi" into google gives you 3.14159265.

    And if you want lots of digits, go here: http://3.141592653589793238462643383...974944592.com/

    Note that over fifteen or twenty digits is overkill because that's what a double is accurate to.
    dwk

    Seek and ye shall find. quaere et invenies.

    "Simplicity does not precede complexity, but follows it." -- Alan Perlis
    "Testing can only prove the presence of bugs, not their absence." -- Edsger Dijkstra
    "The only real mistake is the one from which we learn nothing." -- John Powell


    Other boards: DaniWeb, TPS
    Unofficial Wiki FAQ: cpwiki.sf.net

    My website: http://dwks.theprogrammingsite.com/
    Projects: codeform, xuni, atlantis, nort, etc.

Popular pages Recent additions subscribe to a feed

Similar Threads

  1. weird bug in the scanf command
    By transgalactic2 in forum C Programming
    Replies: 13
    Last Post: 10-24-2008, 04:26 PM
  2. Debugging a rare / unreproducible bug..
    By g4j31a5 in forum A Brief History of Cprogramming.com
    Replies: 18
    Last Post: 08-05-2008, 01:56 PM
  3. ATL bug of CComPtr?
    By George2 in forum Windows Programming
    Replies: 6
    Last Post: 04-07-2008, 08:52 AM
  4. Weird bug
    By Hunter2 in forum Windows Programming
    Replies: 1
    Last Post: 08-12-2002, 04:45 PM
  5. Weird bug in the forum
    By SilentStrike in forum A Brief History of Cprogramming.com
    Replies: 2
    Last Post: 01-16-2002, 06:16 AM

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21