>choice = getData(int);
You're getting the error because getData needs an actual integer to be passed to it. Then again, making getData() take parameters which it doesn't actually use makes no sense, so you should change the prototype of the function to getData(void).

Your menu() function also makes no sense. You can't copy large arrays into single variables, as you're trying to do with strcpy() and the assignment operator.

>choice = getData(int);
You're getting the error because getData needs an actual integer to be passed to it. Then again, making getData() take parameters which it doesn't actually use makes no sense, so you should change the prototype of the function to getData(void).

Your menu() function also makes no sense. You can't copy large arrays into single variables, as you're trying to do with strcpy() and the assignment operator.

>theMenu[0].menuItem[LENGTH]=" [1] Chicken A";
That won't work either. You'll have to strcpy the strings into the character arrays, or point each node of menuItem to a string literal and then make menuItem a const char pointer (to make sure that you don't accidentally try to modify the string literal).

>theMenu[0].menuItem[LENGTH]=" [1] Chicken A";
That won't work either. You'll have to strcpy the strings into the character arrays, or point each node of menuItem to a string literal and then make menuItem a const char pointer (to make sure that you don't accidentally try to modify the string literal).

Ya a mistake on my part sorry I got it confused with

char arr[30]="Hello I am .....";

But that cannot be done on the later part I mean after initialization so best method is as you suggested "strcpy". This is the reason I love this forum.I get a chance to learn a new thing and also learn from my mistakes every now and then.Every one please note "A small mistake on one topic done by you will make this forum teach you two topics.Thanks Daniweb!!!"

I really think you need to relax your brain because you are going wrong again in this :

do{
printf("Would you like to place another order? (Y/N)");
scanf("%c",&end);
end = toupper(end);
}while (end != 'Y' && end != 'N');

Here the do while loop only works if you press in some garbage value or character apart from "y" and "n".That is not what you want.Just change it to

while(end!='N')

No, you're wrong, the OP is correct. The goal of the loop is to keep asking the user until valid input is entered (Y or N). The initial mistake was made by using OR instead of AND, because you want to keep looping while the input isn't Y AND the input isn't N. But the code is correct now.

As for the code that has been posted, the only thing I notice is that at the beginning of main() your variable declarations aren't all before execution begins. If you're compiling under C89, variable declarations always have to be at the beginning of an execution block.

As for the code that has been posted, the only thing I notice is that at the beginning of main() your variable declarations aren't all before execution begins. If you're compiling under C89, variable declarations always have to be at the beginning of an execution block.

what do you mean? i declared it before execution.. My problem is this 2 declarations again..

The error is Expression syntax in function overView.(points to the line where again is declared as a character. Second is Undefined symbol "again" in function overview(where scanf("%c",&again) is and undefined symbol 'n' in function overview, where i put limits for the user to input only 'y' or 'n'.

I have a 2d matrix with dimension (3, n) called A, I want to calculate the normalization and cross product of two arrays (b,z) (see the code please) for each column (for the first column, then the second one and so on).
the function that I created to find the ...

Write a C program that should create a 10 element array of random integers (0 to 9). The program should total all of the numbers in the odd positions of the array and compare them with the total of the numbers in the even positions of the array and indicate ...