首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi1.cpp,该程序运行时有错,请改正其中的错误,使程序正常运行,并使程序的执行结果为: 1 2 3 4 5 4 3 2 1 1 2 3 4 3 2 1 1 2 3 2 1 1 2 1 1 注意:错误的语句在//
使用VC6打开考生文件夹下的源程序文件modi1.cpp,该程序运行时有错,请改正其中的错误,使程序正常运行,并使程序的执行结果为: 1 2 3 4 5 4 3 2 1 1 2 3 4 3 2 1 1 2 3 2 1 1 2 1 1 注意:错误的语句在//
admin
2016-10-28
44
问题
使用VC6打开考生文件夹下的源程序文件modi1.cpp,该程序运行时有错,请改正其中的错误,使程序正常运行,并使程序的执行结果为:
1 2 3 4 5 4 3 2 1
1 2 3 4 3 2 1
1 2 3 2 1
1 2 1
1
注意:错误的语句在//******error******的下面,修改该语句即可。
#include<iostream.h>
#include<iomanip.h>
void main()
{
int i,j,k;
for(i=5;i>=1;i--)
{
//********error********
for(j=1;j<=i;j++)
cout<<" ";
//********error********
for(k=1;k>=i;k++)
cout<<setw(3)<<k;
//********error********
for(k=i-1;k>0;k++)
cout<<setw(3)<<k;
cout<<endl;
}
}
选项
答案
(1)for(j=1;j<=5-i;j++) (2)for(k=i;k<=i;k++) (3)for(k=i-1;k>0;k--)
解析
(1)分析可知,两个循环负责输出两半数值,刚开始还有空格,而且空格书逐行增加,因此也必须用循环来实现输出空格,即内层第一个小循环负责输出空格,因此for(j=1,j<=i;j++)应改为for(j=1.j<=5-i.j++)。
(2)第二个小循环负责输出左半部分数值,外层大循环i从5变到1,而每行前半部分数值的最大值在减小,因此第二个循环的循环变量j与i之和满足一定关系,即i<=i,第2个标识处for(k=1;k>=i;k++)应改为for(k=1;k<=i;k++)。
(3)第三个小循环负责输出右半部分数值,数值从大变到小,因此循环变量k的初值为i-1,k逐次变小,即第3标识处for(k=i-1;k>0;k++)应改为for(k=i=1;k>0;k--)。
转载请注明原文地址:https://kaotiyun.com/show/DONp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下面几种调试方法中,不适合调试大规模程序的是()。
在结构化方法中,用数据流程图(DFD)作为描述工具的软件开发阶段是______.
.、.*、->、::、?:这五个运算符______重载。
数据库系统阶段的数据具有较高独立性,数据独立性包括物理独立性和______两个含义。
fun()函数的功能是:首先对a所指的N行N列的矩阵,找出各行中的最大的数,再求这N个最大值中的最小的那个数作为函数返回值。请填空完成此程序。#defineN100intfun(int(*A)[N]){in
设有以下程序段:inta[5]={0},*p,*q;p=a;q=a;则下列选项中,合法的运算是
一个关系数据库文件中的各条记录()。
在C++语言中,打开一个文件就是将这个文件与一个什么建立关联?
所谓数据封装就是将一组数据和与这组数据有关操作组装在一起,形成一个实体,这实体也就是【 】。
在C++语言中,封装是借助于什么达到的?
随机试题
下列选项中关于Ajax技术的说法错误的是()。
放大电路中的晶体三极管为什么要设置静态工作点?
施工组织设计和焊接工艺规程中不包括()。
某建设项目,基建拨款为2500万元,项目资本为600万元,项目资本公积金100万元,基建投资借款2000万元,企业债券基金800万元,待冲基建支出500万元,应收生产单位投资借款1800万元,基本建设支1500万元,则基建结余资金为()万元。
矿井水害恢复后,应全面整理()两个过程的图纸和资料。
细水雾灭火系统故障中稳压泵规定时间内不能恢复压力的处理办法不包括()。
甲捡到了一只母山羊饲养起来并积极寻找失主,后失主乙找到甲要羊。本案应如何处理?()
设A是4×3矩阵,且A的秩r(A)=2,而,则r(AB)=___________________
以下程序的输出结果是()。voidfun(int*a,inti,intj){intt;if(i<j){t=a[i];a[i]=a[j];a[j]=t;i++;j--;fu
下列选项中,不属于模块间耦合的是()。
最新回复
(
0
)