int i;
int b = 0;
int a[20];
for (i = 0; i < 20; i++){
a[i] = b+1;
cout << a[i];}
}
//我知道这是一个简单的程序,但它没有给出预期的输出,也没有单步执行程序或打印出结果
答案 0 :(得分:3)
您的循环一直在分配a[i]
而不更改b
。由于b
保持为零,所有a
都将为1
(因为b
为零,b+1
为1
)。< / p>
如果您想分配顺序值,请使用循环索引i
,或在循环体中更改b
:
for (i = 0; i < 20; i++) {
a[i] = i+1;
}
或
for (i = 0; i < 20; i++) {
a[i] = ++b; // Adds 1 to b, and changes b for the next iteration.
}
答案 1 :(得分:0)
您正在打印错误的变量。这应该有效:
int i;
int a[20];
for (i = 0; i < 20; i++){
a[i] = i+1;
cout << a[i];}
答案 2 :(得分:0)
如果您想通过b
分配
int i;
int b = 1;
int a[20];
for (i = 0; i < 20; i++){
a[i] = b;
cout << a[i];
b++;}