首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
给定程序MODI1.C中,函数fun的功能是:判断输入的任何一个正整数n,是否等于某个连续正整数序列之和。若是,则输出所有可能的序列,否则输出“不能分解”。 例如:当输入100时,输出: 100=9+10+11+12+13+14+15+16 100=18
给定程序MODI1.C中,函数fun的功能是:判断输入的任何一个正整数n,是否等于某个连续正整数序列之和。若是,则输出所有可能的序列,否则输出“不能分解”。 例如:当输入100时,输出: 100=9+10+11+12+13+14+15+16 100=18
admin
2017-02-24
59
问题
给定程序MODI1.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/mMDp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
下面程序的运行结果是______。#include<stdio.h>intf(inta[],intn){if(n>1)returna[0]+f(a+1,n-1);elsereturna[0];}main(){intaa[10]=
在下列语句中,其含义为“q为一个指针的函数,该指针指向整型数据”的定义语句是()。
下列程序的运行结果为()。#include<stdio.h>voidabc(char*str){inta,b,i,j;for(i=j=0;str[i]!=’\0’;i++)if(str[i]!=’a’)str[j++]=str[j];
有以下语句,则对a数组元素的引用不正确的是(0≤i≤9)inta[10]={0,1,2,3,4,5,6,7,8,9},*p=a;
在执行下述程序时,若从键盘输入6和8,则结果为main(){inta,b,s;scanf("%d%d",&a,&b);S=aif(a<B)s=b;S*=S;printf("%d",s);}
设有如下三个关系表下列操作中正确的是
在结构化程序设计中,模块划分的原则是
以下程序的功能是建立一个带有头结点的单向链表,链表结点中的数据通过键盘输入,当输入数据为-1时,表示输入结束(链表头结点的data域不放数据,表空的条件是ph->next==NULL),请填空。#includestructlist{intd
以下程序的功能是:求出数组x中各相邻两个元素的和依次存放到a数组中,然后输出。请填空。main(){intx[10],a[9],I;for(I=0;I
以下程序的运行结果是【】。#includemain(){FILE*fp;inta[10]={1,2,3,0,0},i;fp=fopen("d2.dat","wb");fwtite(a,sizeof(int),5
随机试题
在工程质量统计分析方法中,寻找影响质量主次因素的方法一般采用()。
关于不作为犯罪,下列哪些选项是正确的?()(2013/2/51)
根据《建设工程监理合同(示范文本)》,属于监理人义务的有()。
水泥混凝土路面在混凝土摊铺前应全面检查模板的间隔、润滑及()等项内容。
企业提供劳务交易的结果在资产负债表‘日能够可靠估计时,提供劳务收入的确认方法是()。
在衡量财政收入规模的指标中,综合反映政府占有和支配社会资源程度的指标是()。
准备参加入警考试的黄某认为,我国公安机关的基本职能包括:政治镇压职能、打击违法犯罪职能、专政职能和民主职能。我国公安机关的基本职能是()。
我国已有或正在建设的航天发射场不包括()。
下列关于中国古代法制思想和法律制度的说法,哪些是正确的()。
负责管理项目的需求、范围、进度、成本、质量、人力资源、沟通、风险和采购,意味着项目整合管理()的特征。
最新回复
(
0
)