首页 > 试题广场 >

您怀疑以下的程序可能有问题。您能找出什么错误? #in

[问答题]
您怀疑以下的程序可能有问题。您能找出什么错误?
#include <stdio.h>
int main (void)
{                                                      /* 第3行 */
int i, j, list (10);                           /* 第4行 */
for (i = 1, i <= 10, i++)                /* 第6行 */
{                                                 /* 第7行 */
list[i] = 2*i + 3;                      /* 第8行 */
for (j = 1, j > = i, j++)            /* 第9行 */
printf (" %d", list[j]);        /* 第10行 */
printf ("\n");                          /* 第11行 */
}                                                      /* 第12行 */

推荐
第4行:应该是list[10]。
第6行:逗号应该为分号。
第6行:i的范围应该是从0到9,而不是从1到10.
第9行:逗号应该为分号。
第9行:>=应该是<=。否则,当i为1时,循环永远不会结束。
第10行:在第9行和第10行之间应该有一个花括号。一个花括号结束复合语句,另一个结束程序。在这两个花括号之间应该有这样一行代码:return 0;。
下面是一个正确的版本:
#include <stdio.h>
int main (void)
{                                                      /* 第3行 */
int i, j, list [10];                           /* 第4行 */

for (i = 0; i < 10; i++)                /* 第6行 */
{                                                 /* 第7行 */
list[i] = 2*i + 3;                      /* 第8行 */
for (j = 1; j <= i; j++)            /* 第9行 */
printf (" %d", list[j]);        /* 第10行 */
printf ("\n");                          /* 第11行 */
}
return 0;
}
发表于 2018-03-25 10:10:39 回复(0)