选择题
37.
有如下程序:
#include<iostream>
#include<iomanip>
using namespace std;
int main(){
int s[]={123,234};
cout<<right<<setfill('*')<<setw(6);
for(int i=0;i<2;i++){cout<<s[i]<<endl;}
return 0;
}
运行时的输出结果是______。
A、
123
234
B、
***123
234
C、
***123
***234
D、
***123
234***
【正确答案】
B
【答案解析】
在输出语句中定义了输出的格式是字符宽度为6,并且向右对齐,不足的位用‘*’补齐。在C++中,输出格式的设置只对第一次输出有效,在完成了一个数据的输出后,宽度设置自动恢复为0(表示按数据实际宽度输出)。所以对于本题来说,在循环语句中输出数组s[0]中的元素时,按照规定的格式输出,其结果为***123,当输出s[1]时,输出格式已经恢复到按数据实际宽度输出,所以此时输出为234。
提交答案
关闭