下面是创建一个用 C 编写的小型电子表格的初始框架代码。如果需要少于 7 行,它就可以正常工作,但如果需要 7 行或更多行,则无法正常工作。 (它在第 7 行创建了额外的列,然后挂起。非常感谢任何深入了解问题的帮助
#include <stdio.h>
int main() {
int x = 0, y = 0;
int height, width, *p;
char page[x][y];
char token[] = "** "; /** spaces for formatting **/
printf(" \n Enter number of rows and columns. separated by a space\t" );
scanf("%d %d", &height, &width);
for (y = 0; y < height; y++) {
printf("Row %d\t ", y);
page[x][y] = '\0'; /** prog fails at Row 2 if this line absent **/
for (x = 0; x < width; x++) {
if (y == 0)
printf(" Col %c ", (65 + x)); /** spaces for formatting **/
else {
p = &page[x][y];
*p = token;
printf("%d%c = ", y, (65 + x)); /** prog fails at Row 3 is these printf statements combined **/
printf("%s" , *p);
}
}
printf("\n\n");
}
return 0;
}
最佳答案
int x = 0, y = 0 ;
char page[x][y] ;
就 page
中可用元素的数量而言,您认为这有什么作用?您目前期望 height
和 width
变量对此有何影响?
您当前正在创建一个没有任何元素的页面
(这违反了约束)。您很幸运(好吧,真的很不幸,因为它隐藏了问题)程序可以做任何事情。
在分配 页面之前,建立从
。一旦以这种方式创建了height
和 width
输入到 x
和 y
的一些连接页面
,就无法调整它的大小。
关于c - 小C电子表格程序骨架问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52420673/