如何在数组中保存单词

时间:2016-12-13 22:31:25

标签: c arrays arraylist

我正在制作一个关于餐厅菜单的学校项目。 我必须将所有项目名称分别保存在一个数组中,并将它们的价格保存在不同的数组中。

输出应该是这样的:

 1. Burger  19.2
 2. Fries   21.21
 ....

代码:

#include <stdio.h>
#include <stdlib.h>
#define TOTALITEM 3
int main()
{
    const char *menu[TOTALITEM] = {"Burger", "Fries", "wings"};
    double menuPrice[TOTALITEM] = {19.2, 21.21, 51.2};
    for (int i = 0; i < TOTALITEM; i++)
    {
        printf("\n%i. %c", i+1,menu[i]);
        printf("\t\t %.2lf", menuPrice[i]);
    }
}

2 个答案:

答案 0 :(得分:0)

如果您首先使用指针数组,则必须分配单词或字符串的内存大小。使用stdlib.h库和malloc()函数。

char *menu[TOTALITEM];
int i;
for (i = 0; i < TOTALITEM; i++)
{
     menu[i] = (char*) malloc(size_of_word);
}

menu[0] = "Burger";
menu[1] = "Fries";
menu[3] = "wings";

答案 1 :(得分:0)

%c更改为%-8s。                     –风向标