1. Not finding help here? Sign up for a free 30min tutor trial with Chegg Tutors
    Dismiss Notice
Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Some help with C programming questions

  1. Mar 7, 2008 #1
    I have a few questions:

    1. Reversing the elements of an array involves swapping the corresponding elements of the array: the first with the last, the second with the next to the last, and so on, all the way to the middle of the array.

    Given an array a , an int variable n containing the number of elements in a , and two other int variables, k and temp , write a loop that reverses the elements of the array.

    Do not use any other variables besides a , n , k , and temp .

    I have:

    for (temp=n;temp>0; temp--;)

    {

    for (k=0; k<n;k++)

    a[k] = a[temp-1];

    }

    the compiler yells at me and I dont know whats up...just for everyone to know this is a Codelab assignment.


    2. You are given two int variables j and k , an int array zipcodeList that has been declared and initialized, an int variable nZips that contains the number of elements in zipcodeList , and an int variable duplicates .

    Write some code that assigns 1 to duplicates if any two elements in the array have the same value, and that assigns 0 to duplicates otherwise.
    Use only j , k , zipcodeList , nZips , and duplicates .

    I have: duplicates=0;

    for (j=0; j<(nZips); j++)
    {
    for (k=0; k<(nZips); k++)

    { if (zipcodeList[j] == zipcodeList[k])
    duplicates=1;

    }

    }

    yet the feedback comes back i am not assigning 0 to duplicates if they dont match...




    3. Given an array arr of type int , along with two int variables i and j , write some code that swaps the values of arr and arr[j] . Declare any additional variables as necessary.

    I wrote:

    int x=j;

    arr=arr[j];

    arr[j]=arr;

    - but the feedback comes that only one variable is changing...I don't understand why..




    I know it's a lot but if someone can help me on any of them I would appreciate it a lot!

    Thanks!
     
  2. jcsd
  3. Mar 7, 2008 #2
    1. for (temp=n;temp>0; temp--;)

    You have a semicolon too many there. There should be exactly two semicolons in a for(a;b;c) clause.

    2. This will always return 1, because when j == k then zipcodeList[j]==zipcodeList[k], always.

    3. On line two you assign arr[j] to arr. On line three you assign arr to arr[j]. But you destroyed the value of arr on line two, didn't you? You overwrote it with arr[j]. So assigning arr to arr[j] afterwards does nothing.
     
Know someone interested in this topic? Share this thread via Reddit, Google+, Twitter, or Facebook

Have something to add?



Similar Discussions: Some help with C programming questions
  1. Help with a C Program (Replies: 2)

  2. C program help (Replies: 31)

  3. C program help (Replies: 3)

  4. Help in C programming (Replies: 1)

Loading...