![]() |
| | #1 |
| Registered User Join Date: Nov 2008
Posts: 4
| This is what I'm supposed to do, Write a table_diff fuction that compares two arrays of integers and returns the subscript of the first place they differ. If the arrays are the same, the function should return -1 ex: 345 & 345 --> -1 (same) 345 & 346 --> 2 (differ at index 2) 1234 & 123 --> 3 (differ at index 3) But what im having trouble with is writing the function to read the two arrays in. Im not sure if i can do it in one single while loop or if i need two? This is what i have, any help is appreciated! Code: int table_fill(int a[], int b[],int max)
{
int value;
int r;
int *ptra = a;
int *ptrb = b;
int *endptra = ptra - max;
int *endptrb = ptrb - max;
printf("please enter values \n\n");
while((r = scanf("%i", &value)) != 1 && ptra < endptra)
{
*(ptra++) = value;
if (r==1)
printf("No room after reading values\n\n");
else if(r != EOF)
printf("invalid char");
}
while((r = scanf("%i\n", &value))!= 1 && ptrb < endptrb){
*(ptrb++) = value;
if (r==1)
printf("No room after reading values\n\n");
else if(r != EOF)
printf("invalid char");
}
}
|
| ssmokincamaro is offline | |
| | #2 |
| and the Hat of Guessing Join Date: Nov 2007
Posts: 8,740
| Maybe it's required for the assignment, but why write a function that reads into two arrays? Why not write a function that reads into one array, and then call it twice? |
| tabstop is offline | |
| | #3 |
| and the hat of vanishing Join Date: Aug 2001 Location: The edge of the known universe
Posts: 21,214
| > (r = scanf("%i", &value)) != 1 I'd say you would want == 1 here. I'd also put the loop in another function, and just call it twice with different parameters. > printf("No room after reading values\n\n"); What's this supposed to mean?
__________________ If you dance barefoot on the broken glass of undefined behaviour, you've got to expect the occasional cut. Up to 8Mb PlusNet broadband from only £5.99 a month! |
| Salem is offline | |
| | #4 |
| Registered User Join Date: Nov 2008
Posts: 4
| Yeah its required for this assignment. Ah yeah that would make sense, thanks! So you would suggest writing a function to read in each array? |
| ssmokincamaro is offline | |
| | #5 |
| Registered User Join Date: Nov 2008
Posts: 4
| Oh and I'm supposed to do an error check, but was unsure how to do it. Its supposed to check to see if there is enough room in the array and check to see if a invalid character was entered |
| ssmokincamaro is offline | |
| | #6 |
| and the hat of vanishing Join Date: Aug 2001 Location: The edge of the known universe
Posts: 21,214
| > So you would suggest writing a function to read in each array? I believe I just did. > Its supposed to check to see if there is enough room in the array and check to see if a invalid character was entered The 'room' is the ptra < endptra test The 'valid' is the == test However, what you don't do at the moment is clean up the input stream if scanf() returns something other than 1
__________________ If you dance barefoot on the broken glass of undefined behaviour, you've got to expect the occasional cut. Up to 8Mb PlusNet broadband from only £5.99 a month! |
| Salem is offline | |
| | #7 |
| Registered User Join Date: Nov 2008
Posts: 4
| Ok i'll give that a shot right now, thanks Salem! If my memory serves me correctly, I think I used ( in an older program) while(getchar() != '\n'); to flush it out? |
| ssmokincamaro is offline | |
| | #8 |
| Registered User Join Date: Sep 2008
Posts: 45
| Code: while(((r = scanf("%i", &value)) != 1 && ptra < endptra)
|
| blurx is offline | |
![]() |
| Tags |
| arrays.while, pointers, scanf |
| Thread Tools | |
| Display Modes | |
|
Similar Threads | ||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| "sorting news" assignment | prljavibluzer | C Programming | 7 | 02-06-2008 06:45 AM |
| Arrays as function arguments :( | strokebow | C Programming | 10 | 11-18-2006 03:26 PM |
| Bisection Method function value at root incorrect | mr_glass | C Programming | 3 | 11-10-2005 09:10 AM |
| Problem with Visual C++ Object-Oriented Programming Book. | GameGenie | C++ Programming | 9 | 08-29-2005 11:21 PM |
| Read In From Many Files In One Function | djwicks | C Programming | 12 | 03-24-2005 07:39 AM |