gpt4 book ai didi

c - 在c中正确声明变量

转载 作者:行者123 更新时间:2023-11-30 15:56:19 25 4
gpt4 key购买 nike

对于 C 程序员来说,下面的内容肯定会显得非常简单,但我正在编写一个小程序来建模一些名为五子棋的游戏。对于用户来说,您必须输入一个整数 N,它对应于由“N 乘 N”个整数组成的“N 乘 N”方格。

所以代码运行得很好,但我有一些简单的问题:当我输入“N乘N”整数时,我做了一些

    int N;
scanf("%d",&N);
char c[N][N];
while (i<N){
scanf("%s\n",&c[i]);
i++;
}

然后我将每个 c[i] 的 char 转换为 int进行一些涉及 c[i][j] 的计算,这是很不自然的。但如果我必须声明 int c[N][N] ,不可能检索相同的整数 c[i][j]就像我在 while 循环运行时输入的那样。

有没有人有想法声明 int c[N][N] ,输入整数,然后计算与整数计算时相同的c[i][j]

最好,纽本

最佳答案

您不必读取 char 然后将其转换为 int。您可以简单地读取整数:

for(int i = 0; i < N; ++i)
scanf("%d", &c[i]); //of course c has to be int** type

您确定只想读取 N 个整数吗?整个数组不是 NN 吗?如果您想将 NN 个对象读取到数组,代码应如下所示:

int N, i, j;
scanf("%d",&N);
int c[N][N];

for(i = 0; i < N; ++i)
{
for(j = 0; j < N; ++j)
{
scanf("%d", &c[i][j]);
/* do something */
}
}

关于c - 在c中正确声明变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11352140/

25 4 0
文章推荐: c# - 将 Parameter 存储/转换为 Parameter 包括 Parameter