首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
给定程序NODI1.C中,函数fun的功能是:判断输入的任何一个正整数n,是否等于某个连续正整数序列之和。若是,则输出所有可能的序列,否则输出“不能分解”。 例如:当输入100时,输出: 100=9+10+11+12+13+14+15+16 100=18+
给定程序NODI1.C中,函数fun的功能是:判断输入的任何一个正整数n,是否等于某个连续正整数序列之和。若是,则输出所有可能的序列,否则输出“不能分解”。 例如:当输入100时,输出: 100=9+10+11+12+13+14+15+16 100=18+
admin
2019-04-04
44
问题
给定程序NODI1.C中,函数fun的功能是:判断输入的任何一个正整数n,是否等于某个连续正整数序列之和。若是,则输出所有可能的序列,否则输出“不能分解”。
例如:当输入100时,输出:
100=9+10+11+12+13+14+15+16
100=18+19+20+21+22
请改正函数fun中指定部位的错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。
试题程序:
#include<stdio.h>
void fun(int n)
{ int j,b,c,m,flag=0;
for(b=1;b<=n/2;b++){
/*********found*********/
n=m;
c=b;
while(m!=0&&m>=c){
/*********found*********/
m=m—c;c++
}
/*********found*********/
if(m!=0)
{printf("%d=",n);
for(j=b;j<c一1;j++)
printf("%d+",j);
printf("%d\n",j);
flag=1;
}
}
if(flag==0)
printf("不能分解\n");
}
main()
{ int n;
printf("请输入一个整数:");
scanf("%d",&n);
fun(n);
}
选项
答案
(1)m=n; (2)m=m—c;c++; (3)if(m==0)
解析
(1)每次循环,程序需要对n执行减去连续的正整数序列来判断n是否刚好为0,即n是否是连续的正整数序列之和,所以需要使用临时变量m寄存n的值,每次循环对m执行减运算操作,不满足继续下一轮。另外,程序声明变量m时,未初始化它的值,所以此处应该修改为:m=n。
(2)语法错误。C语言中每个语句必须以分号结束,所以应修改为:m=m—c;c++;。
(3)题目判断n是否是连续的正整数序列之和,若是,则输出所有序列,程序中m依次减去连续的正整数,当m为0时,表示m(即n)满足条件,再输出当前序列中的每个正整数,所以此处判断条件反了,应修改为:if(m==0)。
转载请注明原文地址:https://kaotiyun.com/show/WnRp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
以下程序运行后的输出结果是[]。main(){intx,a=1,b=2,c=3,d=4;x=(a<b)?a:b;x=(x<c)?x:c;x=(d>x)?x:d;pri
以下程序段打开文件后,先利用fseek函数将文件位置指针定位在文件末尾,然后调用ftell函数返回当前文件位置指针的具体位置,从而确定文件长度,请填空。FILE*myf;longf1;myf=【】("test.t""rb");
()是指用户的应用程序与数据库的逻辑结构是相互独立的,也就是说,数据的逻辑结构改变了,用户程序也可以不变。
数据库恢复是将数据库从______状态恢复到某一已知的正确状态。
设有定义:structcomplex{intreal,unreal;}datal={1,8},data2;则以下赋值语句中错误的是
有以下程序:int*f(int*x,int*y){if(*<*y)returnx;elsereturny;}main(){inta=7,b=8,*p,*q,*r;p=&a;q=&b;
下面函数调用语句含有实参的个数为func((exp1,exp2)(exp3,exp4,exp5));
设x、y、t均为int型变量,则执行语句:x=y=3;t=++x||++y;后,y的值为()。
下列程序的输出结果是()。#include“stdio.h”main(){structst{inty,x,z;}union{longi;intj;
随机试题
1个月男婴,出生后13天开始呕吐,进行性加重,呈喷射样,不含胆汁。近3天尿少,未排大便,查体有中度脱水征。应首先进行的检查是
慢性乙型病毒性肝炎抗病毒治疗的目的应排除
患者,男,9岁。两颗上颌中切牙受硬物撞击,牙齿酸痛,上、下牙咬合时有不适感,牙齿未见脱位,但釉质表面有裂纹。临床及X线检查.牙根组织未见明显折断.牙周间隙稍增宽。最恰当的诊断是()
消化性溃疡最常见的并发症为
【背景资料】某公司承建城市主干道改造工程,其结构为二灰土底基层、水泥稳定碎石基层和沥青混凝土面层,工期要求当年6月份完成拆迁,12月底完成施工。由于城市道路施工干扰因素多,有较大的技术难度,项目部提前进行了施工技术准备工作。水泥稳定碎石基层施工时,项目
简述学校教育在个体身心发展中起主导作用的原因。
学生在课堂上向你提出了一个意想不到的、略有价值的问题,你不能马上作出正确的回答。这时,正确的做法是()。
对于当前的纹身现象,四个学生从各自的角度表达了他们对诸子百家思想的理解。甲说:身体天然完整,纹身就是自虐;乙说:纹身影响仪容,是低俗身份人的爱好,有身份的人不会纹身;丙说:纹身费财又费力,何必呢?简简单单不很好吗;丁
A、Every6minutes.B、Every20minutes.C、Every30minutes.D、Everyhour.B短文中提到,定时休息非常重要,最好不要长时间不休息地连续工作。之后又提到,每隔20分钟休息一次是最好的。
Asmallpopulationmaymean______.Inadevelopedcountry,peoplewillperhapsgooutofworkifthebirthrate______.
最新回复
(
0
)