文档库 最新最全的文档下载
当前位置:文档库 › VFP程序改错答案

VFP程序改错答案

VFP程序改错答案
VFP程序改错答案

程序改错

1、下列中有8大题,081班做前4题,082班做后四题。

2、程序改错题的要求是:原有语句不变,将正确语句用红色字体写在错误语句的右

侧,在修改程序时,不允许修改程序的总体框架和算法,不允许增加或减少语句数目。

3、交作业时,文件名类似为“公事管08212***”,发到相应的班级文件夹下的题号

文件夹下。

1、程序改错(5分)

下列程序的功能是计算分数数列2/1,3/2,5/3,……,m/n,m+n/m的前20项之和。要求:

①项目中有一个程序文件Pcode,将下列程序输入到其中并进行修改;

②在修改程序时,不允许修改程序的总体框架和算法,不允许增加或减少语句数目。

nSum=0

m=2 &&数列中第一项的分子

n=1 &&数列中第一项的分母

FOR x=1 TO 20

nSum=nSum+m/n

y=m

m=m+n

n=y

ENDDO(endfor)

WAIT WINDOWS '前20项之和为'+STR(nSum,10,2)

2、程序改错(5分)

下列程序的功能是统计所有的“水仙花数”的个数,“水仙花数”是指一个三位数,其各位数字立方和等于该数本身,例如:153=13+53+33)。要求:

①项目中有一个程序文件Pcode,将下列程序输入到其中并进行修改;

②在修改程序时,不允许修改程序的总体框架和算法,不允许增加或减少语句数目。

nCount=0

FOR n=100 TO 999 &&

n1=VAL(SUBS(STR(n,3),3,1))

n2=VAL(SUBS(STR(n,3),2,1))

n3=VAL(SUBS(STR(n,3),1,1))

IF n=n1^3+n2^3+n3^3

nCount=nCount+1

ENDIF

ENDFOR

WAIT WINDOWS '“水仙花数”的个数为',nCount

3、程序改错(5分)

下列程序的功能是统计一个字符串中包括多少个汉字(假设这些汉字均属于GB2312字符集),其基本算法是从字符串中依次取一个字符,如果其ASCII码值大于127,则为一个汉字内码的第一个字节。要求:

①项目中有一个程序文件Pcode,将下列程序输入到其中并进行修改;

②在修改程序时,不允许修改程序的总体框架和算法,不允许增加或减少语句数目。

cString='微软(Microsoft)公司开发的视窗(Windows)操作系统' &&赋初值

nCount=0

DO WHILE LEN(cString)!=0

IF ASC(LEFT(cString,1))>127

nCount=nCount+1

cString=SUBSTR(cString,3)

ELSE

cString=SUBSTR(cString,2)

ENDIF

ENDDO

WAIT WINDOWS '汉字个数为'+STR(nCount)

4、程序改错(5分)

下列程序用于计算数列1,1/2,1/3,1/4,1/5,……,1/n之和,当某一数列项的值小于0.01时停止计算。要求:

①项目中有一个程序文件Pcode,将下列程序输入到其中并进行修改;

②在修改程序时,不允许修改程序的总体框架和算法,不允许增加或减少语句数目。

SET DECIMAL TO 2

n=1

nSum=0

DO WHILE .T.

IF 1/n<0.01

exit

ENDIF

nSum=nSum+1/n

n=n+1

ENDDO

WAIT WINDOWS '该数列之和为'+STR(nSum,10,2)

5、程序改错(5分)

下列程序的功能是:将一个字符串中的各个单词的首字母组成其缩写形式(大写字母),其中,

字符串由多个英文单词组成且各单词之间用一个空格分隔,例如,对于字符串“central processing unit”,生成其缩写形式“CPU”。其基本算法为:字符串左边加一个空格,然后依次检查字符串的每一个字符,如果该字符为字母且左边为空格,则该字母为首字母。要求:

①项目中有一个程序文件Pcode,将下列程序输入到其中并进行修改;

②在修改程序时,不允许修改程序的总体框架和算法,不允许增加或减少语句数目。

cString='central processing unit' &&赋初值

cString=SPACE(1)+UPPER(cString)

cResult=SPACE(0)

FOR n=2 TO len(cString)

c=SUBSTR(cString,n,1)

IF BETWEEN(c,'A','Z') AND SUBSTR(cString,n-1,1)=SPACE(1)

cResult=cResult+c

ENDIF

ENDFOR

WAIT WINDOWS '缩写形式为'+cResult

6、程序改错(5分)

下列程序的功能是将二进制数转换成十进制数表示。要求:

①项目中有一个程序文件Pcode,将下列程序输入到其中并进行修改;

②在修改程序时,不允许修改程序的总体框架和算法,不允许增加或减少语句数目。

nNumber=1011001 &&赋初值(认定它为二进制数)

cNumber=ALLTRIM(STR(nNumber))

nResult=0

FOR n=LEN(cNumber) TO 1 step -1

c=LEFT(cNumber,1)

IF c='1'

nResult=nResult*2+1

ELSE

nResult=nResult*2

ENDIF

cNumber=SUBSTR(cNumber,2)

ENDFOR

WAIT WINDOWS '十进制数表示为'+STR(nResult)

7、程序改错(5分)

下面的程序是用于将十进制数转换成二进制数表示。要求:

①项目中有一个程序文件Pcode,将下列程序输入到其中并进行修改;

②在修改程序时,不允许修改程序的总体框架和算法,不允许增加或减少语句数目。

nNumber=37 &&赋初值(十进制数)

cResult=SPACE(0)

IF nNumber!=0

DO WHILE nNumber>0

n=MOD(nNumber,2) &&余数

nNumber=INT(nNumber/2)

cResult=STR(n,1)+cResult

ENDDO

ELSE

cResult='0'

ENDIF

WAIT WINDOWS '二进制数表示为'+ cResult

8、程序改错(5分)

下列程序的功能用于计算1~100之间的质数的个数(注:质数是指只能被1和自身整除的自然数)。要求:

①项目中有一个程序文件Pcode,将下列程序输入到其中并进行修改;

②在修改程序时,不允许修改程序的总体框架和算法,不允许增加或减少语句数目。

nCount=0

FOR m=1 TO 100

bzs=.T.

FOR n=2 TO 9

IF MOD(m,n)=0 AND m#n

bzs=.F. &&不是质数

exit

ENDIF

ENDFOR

IF bzs

nCount=nCount+1

ENDIF

ENDFOR

WAIT WINDOWS '1~100之间的质数的个数为'+STR(nCount)

应用文改错题及答案

2018年全国统一高考生物试卷(新课标Ⅱ) 一、选择题:本题共6小题,每小题6分,共36分,在每小题给出的四个选项中,只有一项是符合题目要求的。 1.(6.00分)下列关于人体中蛋白质功能的叙述,错误的是() A.浆细胞产生的抗体可结合相应的病毒抗原 B.肌细胞中的某些蛋白质参与肌肉收缩的过程 C.蛋白质结合Mg2+形成的血红蛋白参与O2运输 D.细胞核中某些蛋白质是染色体的重要组成成分 2.(6.00分)下列有关物质跨膜运输的叙述,正确的是() A.巨噬细胞摄入病原体的过程属于协助扩散 B.固醇类激素进入靶细胞的过程属于主动运输 C.神经细胞受到刺激时产生的Na+内流属于被动运输 D.护肤品中的甘油进入皮肤细胞的过程属于主动运输 3.(6.00分)下列有关人体内激素的叙述,正确的是() A.运动时,肾上腺素水平升高,可使心率加快,说明激素是高能化合物B.饥饿时,胰高血糖素水平升高,促进糖原分解,说明激素具有酶的催化活性C.进食后,胰岛素水平升高,其既可加速糖原合成,也可作为细胞的结构组分D.青春期,性激素水平升高,随体液到达靶细胞,与受体结合可促进机体发育4.(6.00分)有些作物的种子入库前需要经过风干处理。与风干前相比,下列说法错误的是() A.风干种子中有机物的消耗减慢 B.风干种子上微生物不易生长繁殖 C.风干种子中细胞呼吸作用的强度高 D.风干种子中结合水与自由水的比值大 5.(6.00分)下列关于病毒的叙述,错误的是() A.从烟草花叶病毒中可以提取到RNA B.T2噬菌体可感染肺炎双球菌导致其裂解 C.HIV可引起人的获得性免疫缺陷综合征

D.阻断病毒的传播可降低其所致疾病的发病率 6.(6.00分)在致癌因子的作用下,正常动物细胞可转变为癌细胞。有关癌细胞特点的叙述错误的是() A.细胞中可能发生单一基因突变,细胞间黏着性增加 B.细胞中可能发生多个基因突变,细胞的形态发生变化 C.细胞中的染色体可能受到损伤,细胞的增殖失去控制 D.细胞中遗传物质可能受到损伤,细胞表面的糖蛋白减少 必考题: 7.(8.00分)为研究垂体对机体生长发育的作用,某同学用垂体切除法进行实验。在实验过程中,用幼龄大鼠为材料,以体重变化作为生长发育的检测指标。问答下列问题: (1)请完善下面的实验步骤 ①将若干只大鼠随机分为A、B两组后进行处理,A组(对照组)的处理是;B组的处理是 ②将上述两组大鼠置于相同的适宜条件下饲养。 ③。 ④对所得数据进行统计处理与分析。 (2)实验结果与分析 B组大鼠生长发育的状况不如A组,出现这种差异的原因是由于B组的处理使大鼠缺失了来源于垂体的激素和激素。 8.(8.00分)为了研究某种树木树冠上下层叶片光合作用的特性,某同学选取来自树冠不同层的A、B两种叶片,分別测定其净光合速率,结果如图所示。据图回答问题:

最新二级C语言考试题库及答案程序改错专项练习 精华版

1 / 4 程序改错题(共15题) 1、在考生文件夹下,给定程序MODI.C 的功能是: 求一维数组a 中所有元素的平均值,结果保留两位小数。 例如,当一维数组a 中的元素为:10,4,2,7,3,12,5,34,5,9 程序的输出应为:The aver is: 9.10 。 #include #include void main() { int a[10]={10,4,2,7,3,12,5,34,5,9},i; int aver,s; s = 0; for ( i=1; i<10; i++) s += a[i]; aver = s / i; printf("The aver is: %.2f\n", aver); } 2、在考生文件夹下,给定程序MODI.C 的功能是: 求二维数组a 中的最大值和最小值。 例如,当二维数组a 中的元素为: 4 4 34 37 3 12 5 6 5 程序的输出应为:The max is: 37 The min is: 3 。 #include #include void main() { int a[3][3]={4,4,34,37,3,12,5,6,5},i,j,max,min; max = min = a[0][0]; for ( i=0; i<3; i++) for ( j=1; j<3; j++) { if ( max < a[i][j] ) max = a[i][j]; /************found************/ if (min < a[i][j]) min = a[i][j]; } printf("The max is: %d\n", max); printf("The min is: %d\n", min); } 3、在考生文件夹下,给定程序MODI.C 的功能是: 求一维数组a 中的最大元素及其下标。 例如,当一维数组a 中的元素为:1,4,2,7,3,12,5,34,5,9, 程序的输出应为:The max is: 34,pos is: 7 。 #include #include void main() { int a[10]={1,4,2,7,3,12,5,34,5,9},i,max,pos; max = a[0]; pos = 0; for ( i=1; i<10; i++) /************found************/ if (max > a[i]) { max = a[i]; /************found************/ i = pos; } printf("The max is: %d ,pos is: %d\n", max , pos); } 4、在考生文件夹下,给定程序MODI.C 的功能是: 求二维数组a 中的最小值。 例如,当二维数组a 中的元素为: 4 2 34 7 3 12 5 6 5 程序的输出应为:The min is: 2 。 #include #include void main() { int a[3][3]={4,2,34,7,3,12,5,6,5},i,j,min; min = a[0][0]; for ( i=1; i<3; i++) for ( j=0; j<3; j++) if (min > a[i][j]) { /************found************/ min == a[i][j]; } printf("The min is: %d\n", min); }

程序改错基本题

程序改错 一、下面每个程序的划线处有语法或逻辑错误,请找出并改正,使其得到符合题意的执行结果。 1.求1?2?3?4? ?n main() { long int sum; int n,i=1; scanf("%d",n); printf(“\n”); while(ia[j]) { max=a[j]; m=j; } printf(“下标:%d\n最大值:%d”, j, max) } *3. 求3+4 int a=3,b=4; main() { int a,c; c=a+b; printf(“c=%d”); } 4.用一个函数求两个数之和。 sum(x,y) { float z; z=x+y; return; }

main() { float a,b; int c; scanf("%f,%f",&a,&b); c=sum(a,b); printf("\nSum is %f",sum); } 5.用指针作函数参数,对输入的两个整数按大小顺序输出。 swap(int *p1,*p2) { int *p; *p=*p1;*p1=*p2;*p2=*p; } main() { int a,b; int *q1,*q2; scanf("%d,%d",&a,&b); &q1=a,&q2=b; if(a

2012计算机国二C语言等级考试题库(内部资料)程序改错

1.给定程序MODI1.C中函数fun的功能是:根据以下公式求π值,并作为函数值返回。例如,给指定精度的变量eps输入0.0005时,应当输出Pi=30140578.。(1)“t=0;”改为“t=1;”。(2)改成“return(2*s);” 2.给定程序MODI1.C中函数fun的功能是:将长整型中每一位上为偶数的数依次取出,构成一个新数放在t中。高位仍在高位,低位仍在低位。例如:当s中的数为:7654321时,t中的数为:7531。(1)“void fun (long s, long *t)”(2)“sl = sl*10;” 3.给定程序MODI1.C中函数fun的功能是:用下面的公式求π的近似值,知道最后一项的近似值小于指定数(参数num)为止:例如程序0.0001,则程序输出 3.1414。(1) “while(t>=num)”改为 “while(fabs(t)>=num) ”。(2)“t=s%n;”改为 “t=s/n;”。 4.给定程序MODI1.C中函 数fun的功能是:把主函 数中输入的三个数,最大 的放在a中,最小的放在 c中,中间的放在b中。 例如a=55.0 b=34.0 c=12.0。(1)“float k;”。 (2)“if(*a<*c)”。 5. 给定程序MODI1.C中 函数fun的功能是:为一 个偶数寻找两个素数,这 两个素数之和等于该偶 数,并将这两个素数通过 形参指针传回主函数。(1) “y=1;”。(2)“d=a-i;”。 6. 给定程序MODI1.C中 函数fun的功能是:由形 参给定n个实数,输出平 均值以上(含平均值)的 实数个数。所的平均值为: 195.838745,在平均值以 上的实数个数应为:5。(1) “int j, c=0; double xa=0.0;”。(2)“if (x[j]>=xa)”。 7.例如:当s中的数为: 7654321时,t中的数为: 7531。(1)“*t=0;”(2) “if(d%2!=0)” 8.函数功能是:求出 以下分数序列的前n项 和。 2/1,3/2,5/3,8/5/13/ 8,21/13,…...。和值 通过函数值返回到 main函数。例如,n=5, 则应输出:8.391667。 (1)“fun(int n)”改为 “double fun(int n)”。 (2)“b+=c;”改为“b=c;”。 9.函数fun的功能是: 判断一个整数是否是 素数,若是返回1,否 则返回0。(1)“k++” 改为“k++;”(2) “if(m=k)”改为 “if(m==k)” 10.给定程序MODI1.C 中函数fun的功能是: 从整数1到55之间,选 出能被3整除、且有一 位上的数是5的那些 事,并且把这些数放 在b所指的数组中,这 些数作为函数值返回。 规定,函数中a1放个 位数,a2放十位数。 (1)“a2=k/10;”。(2) “return i;”。 11.给定程序MODI1.C 中函数fun的功能是: 计算小于形参k的最大 的10个能被13或17整 除的自然数之和。K的 值由主函数传入,若K 的值为500.则主函数 为4622。(1) “if((k%13==0)||(k%17 ==0))”。(2)“______” 填“}”。 12.已知一个数列从第 0项开始的前三项分别 是0、0、1以后的各项 都是它相邻的前三项 之和。给定程序 MODI1.C中函数fun的 功能是:计算并输出该 数列前n项的平方根之 和。n的值通过形参传 入。(1)“double fun(int n)”。(2)“return sum;”。 13.函数fun的功能是: 根据整形形参m的值: 计算如下公式的 值……例如:若m中的 值为5,则应输出: 0.536389。(1) “for(i=2; i<=m; i++)”(2) “y-=1.0/(i*i);”。 14.函数的功能是:将 字符串中的字符按逆 序输出,但不改变字符 串中的内容。例如字符 串abcd,则应输出dcba。 (1)“void fun(char *a)”。(2)“printf("%c", *a);”。 15.函数fun的功能是:求 三个数的最小公倍数。 X1=15 x2=11 x3=2(1) 改成“int fun(int x, int y, int z )”。(2)return j 16.函数fun的功能是:根 据整型形参m计算如下 公式的值。若主函数中输 入5,则应输出-0.283333。 (1)“t=t-1.0/i;”。 (2)填空“return t;” 17. 例如,若输入:edcba, 则应输出:abcde。(1) “for( i=strlen( t )-1; i; i- - )” (2)“if(t[j]>t[j+1])” 18.函数fun的功能是: 根据形参m的值 (2<=m<=9),在m行m 列的二维数组中存放 如下所示规律的数据, 由main函数输出。(1) “void fun(int a[][M], int m)”。(2) “a[j][k]=(k+1)*(j+1);”。 19.函数fun的功能是: 先从键盘上输入一个3 行3列矩阵的各个元素

C语言程序改错题

第1题【程序改错】 欧阳学文 功能:先将在字符串s中的字符按逆序存放到t串中,然后把s中的 字符按正序连接到t串的后面。 例如:当s中的字符串为:“ABCDE”时,则t中的字符串应为: “EDCBAABCDE”。 */ #include #include #include void fun (char *s, char *t) { /**********FOUND**********/ int i; sl = strlen(s); for (i=0; i

/**********FOUND**********/ t[i] = s[sli]; for (i=0; i

第2题【程序改错】 功能:求出以下分数序列的前n项之和。和值通过函数值返回main 函数。 2/1+3/2+5/3+8/5+13/8+21/13 …… 例如:若n = 5,则应输出:8.391667。 */ #include #include /**********FOUND**********/ fun ( int n ) { int a, b, c, k; double s; s = 0.0; a = 2; b = 1; for ( k = 1; k <= n; k++ ) { /**********FOUND**********/ s = (double)a / b;

计算机程序改错题,及答案

11 *程序名:TEST.prg *检索选修课程门数等于3门或3门以上,每门课程成绩大于或等于70分的每个学生的 *学号,姓名,性别,平均成绩,最低分和选课门数,并将结果存储到表NEW_TEST中. *以下程序有三处错误,请改正 OPEN DA TABASE SDB SELECT STUDENT.学号,姓名,性别,A VG(成绩) 平均成绩,MIN(成绩) 最低分,COUNT(*) 选课门数; FROM STUDENT,SC; WHere STUDENT.学号= SC.学号AND 成绩>= 70 ; &&**********Error********** GROUP BY STUDENT.学号HA VING count(课程号) >= 3; &&**********Error********** inTO table NEW_TEST &&**********Error********** CLOSE ALL 9 *程序名:dbtest3.prg *定义一个视图VS1, *检索选课门数是3门以上的每个学生的学号、姓名、平均成绩、最低分、选课门数和院系编号, *并按平均成绩降序排序. *以下程序有三处错误,请改正 SET TALK OFF SET SAFETY OFF open DATABASE SDB &&****Error***修改本行的语法错误,不许注释掉本行或删除本行 CREATE VIEW VS1 SELECT STUDENT2.学号, 姓名, A VG(成绩) 平均成绩, MIN(成绩) 最低分, COUNT(*) 选课门数, 院系编号; FROM STUDENT2, sc; &&*************Error************* WHERE STUDENT2.学号= SC.学号; GROUP BY SC.学号HA VING COUNT(课程号) > 3; ORDER BY 平均成绩desc &&*************Error************* CLOSE DATABASE RETURN i=2 create table four(结果I) do while i<=1000 if i%3=0 insert into four values(i) &&错误语句请修改 endif

C语言程序改错基本题库电子版本

C语言程序改错基本 题库

北京石油化工学院 12级复习题 程序改错 一、下面每个程序的划线处有语法或逻辑错误,请找出并改正,使其得到符合题意的执行结果。 1.求1234n main() { long int sum; int n,i=1; scanf("%d",n); printf(“\n”); while(ia[j]) { max=a[j]; m=j; } printf(“下标:%d\n最大值:%d”, j, max) } *3. 求 3+4 int a=3,b=4;

main() { int a,c; c=a+b; printf(“c=%d”); } 4.用一个函数求两个数之和。 sum(x,y) { float z; z=x+y; return; } main() { float a,b; int c; scanf("%f,%f",&a,&b); c=sum(a,b); printf("\nSum is %f",sum); } 5.用指针作函数参数,对输入的两个整数按大小顺序输出。 swap(int *p1,*p2) { int *p; *p=*p1;*p1=*p2;*p2=*p; } main() { int a,b; int *q1,*q2; scanf("%d,%d",&a,&b); &q1=a,&q2=b; if(a

c语言程序设计第五版习题答案

c语言程序设计第五版习 题答案 Prepared on 24 November 2020

习题解析与答案 第1章C语言概述 一.简答题 1.概述C语言的主要特点。 【解答】 (1)语言简洁、紧凑,使用方便、灵活。 (2)数据类型丰富,表达能力强。 (3)运算符多样。C语言中的运算符包含的范围非常广泛。 (4)具有结构化的控制语句。如if…else语句、while语句、dowhile语句、switch语句、for语句。 (5)允许直接访问物理地址。C语言中含有的位和指针运算,能够直接对内存地址进行访问操作。 (6)所生成的目标代码质量高,可移植性好。 2.构成C语言程序的基本单位是什么它由哪几部分组成 【解答】函数是构成C语言程序的基本单位。一个完整的C程序一般由文件包含、宏定义、函数说明、变量和一个或若干个函数组成。 3.C语言程序的运行一般要经过哪几个步骤 【解答】(1)编辑;(2)编译;(3)连接,生成EXE文件;(4)执行。 二.运行程序写结果 1.输入下面程序并运行。 main() { inta1,a2,x; a1=100; a2=50; x=a1-a2; printf(″x=%d\n″,x); } 【解答】运行结果为:x=50 2.输入下面程序并运行。 main()

{ inta1,a2,x; a1=10; a2=20; x=a1*a2; printf(″a1=%d,a2=%d\n″,a1,a2); printf(″x=%d\n″,x); } 【解答】运行结果为:a1=10,a2=20 x=200 三.编程题 1.参照本章例题,编写一个C程序,用于显示如下信息: ************************* IloveCprograms! ************************* 【分析与提示】 ①要有文件包含语句#include<>。C语言中没有数据的输入、输出等功 能,数据的输入、输出都是通过调用系统提供的库函数scanf和printf 等来实现的。这些函数的说明都包括在文件中。 ②main是主函数的名称。用{}括起来的内容是函数体,函数体由若干 条语句组成,这是计算机要执行的部分,每条语句以分号“;”结束。 ③注意显示的信息有三行,所以要用到换行符“\n”。 参考代码: #include<> main() { printf("************************\n"); printf("IloveCprograms!\n"); printf("************************\n"); } 第2章数据类型及其运算一.简答题 1.C语言中的数据类型主要有哪几类 【解答】短整型(shortint) 整型整型(int) 长整型(longint) 基本类型字符型(char)(float) 实型(浮点型) 双精度(double) 枚举类型(enum) 数组类型

计算机基础C++程序改错复习题

? 第1题(分)题号:400 难度:中第2章/*------------------------------------------------------ 【程序改错】 -------------------------------------------------------- 功能:编写函数fun求20以内所有5的倍数之积。 ------------------------------------------------------*/ 《 #define N 20 #include <> int fun(int m) { /**********FOUND**********/ int s=0,i; ; for(i=1;i

s*=i; ) 第2题(分)题号:584 难度:中第1章/*-------------------------------------------------------【程序改错】 --------------------------------------------------------- 下列给定程序中函数fun()的功能是计算1/n!的值。 & 例如:给n输入5,则输出。 请改正程序中的错误,使它能得到正确结果。 注意:不要改动main函数,不得增行或删行, 也不得更改程序的结构。 , 试题程序: -------------------------------------------------------*/ #include <> #include <> /***********FOUND***********/ ~ int fun(int n) { double result =; if(n==0) return ; while(n>1 && n <170) /***********FOUND***********/ result *=n++ ; … result=1/result; return result; } void main() {

C语言程序改错题

第12次上机程序改错第1题 【程序改错】 -------------------------------------------------------- 功能:求二分之一的圆面积,函数通过形参得到圆的半径,函数返回二分之一的圆面积。 例如:输入圆的半径值:19.527 输出为:s = 598.950017。 ------------------------------------------------------*/ #include #include /**********FOUND**********/ double fun( r) double fun(double r) { double s; /**********FOUND**********/ s=1/2*3.14159* r * r; s=1.0/2*3.14159*r*r; /**********FOUND**********/ return r; return s; } main() { float x;

printf ( "Enter x: "); scanf ( "%f", &x ); printf (" s = %f\n ", fun ( x ) ); } 第2题【程序改错】 功能:先将在字符串s中的字符按逆序存放到t串中,然后把s中的字符按正序连接到t串的后面。 例如:当s中的字符串为:“ABCDE”时,则t中的字符串应为:“EDCBAABCDE”。 ------------------------------------------------------*/ #include #include #include void fun (char *s, char *t) { /**********FOUND**********/ int i; int sl,i; sl = strlen(s); for (i=0; i

有目录-程序改错部分试题及答案(2015-2016-1)

目录 功能:在一个已按升序排列的数组中插入一个数,插入后,数组元素仍按升序排列。 (1) 功能:求如下表达式: (2) 功能:判断m是否为素数,若是返回1,否则返回0。 (4) 功能:用下面的和式求圆周率的近似值。直到最后一项的绝对值小于等于0.0001。 (5) 功能:求1到20的阶乘的和。 (6) 功能:输出Fabonacci数列的前20项,要求变量类型定义成浮点型,输出时只输出 整数部分,输出项数不得多于或少于20。 (7) 功能:先从键盘上输入一个3行3列矩阵的各个元素的值,然后输出主对角线上的 元素之和sum。 (8) 功能:找出大于m的最小素数,并将其作为函数值返回。 (9) 功能:有一数组内放10个整数,要求找出最小数和它的下标,然后把它和数组中最前 面的元素即第一个数对换位置. (10) 功能:一个已排好序的一维数组,输入一个数number,要求按原来排序的规律将 它插入数组中. (11) 第1题/*------------------------------------------------------ 【程序改错】 -------------------------------------------------------- 功能:在一个已按升序排列的数组中插入一个数,插入后,数组元素仍按升序排列。 ------------------------------------------------------*/ #include #define N 11 main() { int i,number,a[N]={1,2,4,6,8,9,12,15,149,156}; printf("please enter an integer to insert in the array:\n"); /**********FOUND**********/ scanf("%d",&number) printf("The original array:\n"); for(i=0;i

齐齐哈尔大学C语言题库 程序改错(部分)

1.【程序改错】 题目:在一个一维整型数组中找出其中最大的数及其下标。 程序中共有4条错误语句,请改正错误。 #define N 10 /**********FOUND**********/ float fun(int *a,int *b,int n) int fun(int *a,int *b,int n) { int *c,max=*a; for(c=a+1;cmax) { max=*c; /**********FOUND**********/ b=c-a;} *b=c-a;} return max; } main() { int a[N],i,max,p=0; printf("please enter 10 integers:\n"); for(i=0;i

程序改错--答案版

12592 '题目:编程求一个十进制整数n的各位数字之和,设n为小于或等于5位的数。'------------------------------------------------ Option Explicit Private Sub Form_Click() Dim N As Integer, Sum As Integer, S1 As String, S2 As String Dim i As Integer, Ch As String Sum = 0 N = InputBox("输入整数n") S1 = Str(N) S1 = Trim(S1) For i = 1 To Len(S1) '**********ERROR********** Ch = Mid(N, i, 1) '**********ERROR********** Sum = Val(Ch) Next i Print "该整数的各位数之和是:"; Sum End Sub 12610'题目:程序功能根据输入的学习成绩,分别显示优秀(90分以上), 良好(75分以上),及格(60分以上)不及格四个等级. '------------------------------------------------ Option Explicit Private Sub Form_Click() Cls Dim i As Integer i = InputBox("请输入学习成绩") Select Case i '**********ERROR********** Case 0 < i < 100 MsgBox "成绩应该在0--100之间""" '**********ERROR********** Case 90 Print "优秀" Case 75 To 89 Print "良好" Case 60 To 74 Print "及格" '**********ERROR********** Case MsgBox "不及格", vbCritical End Select End Sub 12616.题目:求s=1!+3!+5!+7!,阶乘的计算用Function过程fact实现. '------------------------------------------------ Option Explicit Private Sub Form_Click() Dim i As Integer, s As Integer '**********ERROR********** For i = 1 To 7 s = s + fact(i) Next i Print s End Sub '**********ERROR********** Public Function fact() Dim t As Integer, i As Integer t = 1 For i = 1 To n t = t * i Next i '**********ERROR********** fact = i End Function 12620题目:编程实现从左到右的滚动字幕,滚动的速度由滚动条控件来控制。 '------------------------------------------------ Option Explicit Private Sub HScroll1_Scroll() '**********ERROR********** Timer1.Interval = HScroll1.Min - HScroll1.Value End Sub Private Sub Timer1_Timer() '**********ERROR********** If Label1.Left <= Form1.Width Then '**********ERROR**********

C语言程序改错基本题库

北京石油化工学院12级复习题 程序改错 一、下面每个程序的划线处有语法或逻辑错误,请找出并改正,使其得到符合题意的执行结果。 1 .求1234n mai n() { long int sum; int n,i=1; scan f("%d", n); printf( “ \n ”); while(i< n) { sum=sum*i; i++; } prin tf("sum=%d",sum); } 2 .求一个数组中最大值及其下标。 mai n() { int max,j,m; int a[5]; for(j=1;j<=5;j++) scanf( “ %d ,a); max=a[0]; for(j=1;j<=5;j++) if(max>a[j]) { max=a[j]; m=j; } prints "下标:%d\n 最大值:%d”,j, max) } *3.求3+4 int a=3,b=4; main () { int a,c; c=a+b; printf( }— “c=%d'); 4?用一个函数求两个 数之和。

sum(x,y) { float 乙 z=x+y; return; } main () { float a,b; int c; scaf"%f,%f",&a,&b); c=sum(a,b); prin tf("\nSum is %f",sum); } 5 .用指针作函数参数,对输入的两个整数按大小顺序输出。 swap(int *p 1,* p2) { int *p; *p=*p 1;* p1=* p2;* p2=* p; } main () { int a,b; int *q1,*q2; scan f("%d,%d",&a,&b); &q 仁a, &q2=b; if(a

程序改错题汇总说课讲解

程序改错题汇总

程序改错题汇总 1、用"起泡法"对连续输入的十个字符排序后按从小到大的次序输出. 2、分别统计字符串中大写字母和小写字母的个数。 3、求1到10的阶乘的和。 4、判断m是否为素数,若是返回1,否则返回0。 5、用选择法对数组中的n个元素按从小到大的顺序进行排序。 6、求一个3行4列矩阵的外框的元素值之和。 7、以下程序把两个数按由大到小的顺序输出来。 8、求1到20的阶乘的和。 9、判断字符ch是否与str所指串中的某个字符相同;若相同,什么也不做,若不同,则将其插在串的最后。(指针) 10、已知一个数列从第0项开始的前三项分别为0、0、1,以后的各项都是其相邻的前三项的和。下列给定程序中,函数fun的功能是:计算并输出该数列的前n项的平方根之和sum,n的值通过形参传入。 11、有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少? 12、编写函数fun计算下列分段函数的值: x*x+x x<0且x≠-3 f(x)= x*x+5x 0≤x<10且x≠2及x≠3 x*x+x-1 其它 13、请编写函数fun,对长度为8个字符的字符串,将8个字符按降序排列。 14、实现交换两个整数的值。 15、读入一个英文文本行,将其中每个单词的第一个字母改成大写,然后输出此文本行(这里的“单词”是指由空格隔开的字符串)。 16、先将在字符串s中的字符按正序存放到t串中,然后把s中的字符按逆序连接到t串的后面。 17、计算数组元素中值为正数的平均值(不包括0)。 18、将s所指字符串中出现的、t1所指子串全部替换成t2所指子字符串,所形成的新串放在w 所指的数组中。在此处,要求t1和t2所指字符串的长度相同。 19、将s所指字符串中的字母转换为按字母序列的后续字母(但Z转换为A, z转换为a),其它字符不变。 20、在键盘上输入一个3行3列矩阵的各个元素的值(值为整数),后输出矩阵第一行与第三行元素之积,并在fun()函数中输出。 21、编写一个函数,该函数可以统计一个长度为3的字符串在另一个字符串中出现的次数 22、一个已排好序的一维数组,输入一个数number,要求按原来排序的规律将它插入数组中. 23、编写函数fun计算下列分段函数的值: x*20 x<0且x≠-3 f(x)= sin(x) 0≤x<10且x≠2及x≠3 x*x+x-1 其它 24、判断两个指针所指存储单元中的值的符号是否相同;若相同函数返回1,否则返回0。这两个存储单元中的值都不为0。 25、将一个正整数分解质因数。

c程序改错题——有答案

试卷编号:10578 所属语言:C语言 试卷方案:TC_150522153552 试卷总分:440分 共有题型:1种 一、程序改错共44题(共计440分) 第1题(10.0分)题号:380 难度:中第2章/*------------------------------------------------------ 【程序改错】 -------------------------------------------------------- 功能:输入两个双精度数,函数返回它们的平方和的平方根值。 例如:输入:22.936 和 14.121,输出为:y = 26.934415。 ------------------------------------------------------*/ #include #include #include /**********FOUND**********/ double fun (double *a, *b)//double fun(double *a,double *b) { double c; /**********FOUND**********/ c = sqr(a*a + b*b);//sqrt /**********FOUND**********/ return *c; } main ( ) { double a, b, y; printf ( "Enter a, b : "); scanf ("%lf%lf", &a, &b ); y = fun (&a, &b); printf ("y = %f \n", y ); } 第2题(10.0分)题号:438 难度:中第2章/*------------------------------------------------ 【程序改错】 --------------------------------------------------

相关文档