【发布时间】:2016-07-15 20:39:59
【问题描述】:
我有以下程序来获取五个用户输入的名称并将它们打印出来。
我需要逐个询问每个名称,然后提示用户打印名称列表或将另一个名称添加到列表中。名称必须存储在二维数组中,但我不明白为什么不能用常规数组完成。
我的代码可以毫无问题地接受名称,但无法打印任何内容。它包括打印测试以监视错误发生的位置。测试号 6 不打印,所以printf("Name: %s", names[x][y]); 肯定有问题
错误是什么?
#include <stdio.h>
int main() {
int x;
int y;
char names[5][51] = {{'\0'},{'\0'}};
printf("Enter the names: ");
for (x = 0; x <5; x++) {
printf("\nPrintTest 1");
for (y = 0; y < 1; y++) {
printf("\nPrintTest 2");
scanf("%50s",&names[x][y]);
}
}
printf("\nPrintTest 3");
for (x = 0; x < 5; x++) {
printf("\nPrintTest 4");
for (y = 0; y < 1; y++) {
printf("\nPrintTest 5");
printf("Name: %s", names[x][y]);
printf("\nPrintTest 6");
}
}
}
【问题讨论】:
标签: c arrays multidimensional-array