文档库 最新最全的文档下载
当前位置:文档库 › 计算机二级上机考试(程序改错题)1

计算机二级上机考试(程序改错题)1

计算机二级上机考试(程序改错题)1
计算机二级上机考试(程序改错题)1

程序编程题目

1、第一大类(交换类)共7道

2. 程序修改(第3套)

给定程序中函数fun 的功能是:通过某种方式实现两个变量的交换,规定不允许增加语句和表达式。例如变量a中的值原为8,b中的值原为3,程序运行后a中值为3,b 中的值为8.

/**found**/

t=*x; *x=y;

/**found**/

return(t);

2. 程序修改(第60套)

给定程序中函数fun的功能是:实现两个整数的交换。例如给a和b分别输入60和65,输出为:a=65 b=60 /**found**/

void fun(int *a,int *b)

/**found**/

t=*b;*b=*a;*a=t;

2. 程序修改(第88套)

给定程序中函数fun的功能是:将主函数中两个变量的值进行交换。例如,若变量a中的值为8,b中的值为3,则程序运行后,a中的值为3,b中的值为8。

/**found**/

void fun(int *x, int *y)

/**found**/

t=*x,*x=*y,*y=t;

2、第二大类(计算类)共22道2. 程序修改(第1套)

给定程序中函数fun的功能是:求出以下分数序列的前n 项之和。

2/1+3/2+5/3+8/5+13/8+21/13+……和值通过函数值返回main函数。例如n=5,则应输出:8.391667。

/**found**/

double fun(int n)

/**found**/

s=s+(double)a/b;

2. 程序修改(第6套)

给定程序中函数fun的功能是:用递归算法计算列中第n 项的值。从第一项起,斐波拉契数列为:1、1、2、3、5、8、13、21、……

/**found**/

switch(g)

/**found**/

case 1:case 2:return 1;

2. 程序修改(第13套)

给定程序中函数fun 的功能是:求s=aa…aa—…—aaa—aa—a(此处aa…aa表示n个a,a和n的值在1至9之间)。例如,a=3,n=6,则以下表达式为:

S=333333-33333-3333-333-33-

3其值是296298。

/**found**/

long s=0,t=0;

/**found**/

t=t/10;

2. 程序修改(第21套)

给定程序中函数fun

的功能是:计算s=f(-n)+f

(-n+1)+……+f(0)+f(1)

+f(2)+……f(n)的值。例

如,当n为5时,函数值应该

是:10.407143。

f(x)=(x+1)(x-2) x>0且x!=2

f(x)=0

f(x)= (x-1)(x-2) x<0

/**found**/

double f(double x)

/**found**/

return s;

2. 程序修改(第27套)

给定程序中函数fun的功能

是:用递归算法求形参a的平

方根。求平方根的迭代公式如

下:x1=1/2(x0+a/x0)例如:a

为2时,平方根值为1.414214

/**found**/

double fun(double a,double x0)

/**found**/

if(fabs(x1-x0)>0.00001)

2 程序修改(第29套)

给定程序中函数fun的功能

是:计算函数值,F(x,y,z)

=(x+y)/(x-y)+(z+y)/(z-y)的值

得。其中x和y的值不等,z

和y的值不等。例如,当x的

值为9、y的值为11、z的值

为15时,函数值为-3.50。

/**found**/

#define FU(m,n) (m)/(n)

/**found**/

return (value);

2. 程序修改(第33套)

给定程序中函数fun的功能

是:根据整形形参m=1,计算如

下公式的值。

m=1+1/2*2+1/3*3+1/4*4+..+1/

m*m例如,若m中的值为5,

则应输出1.463611

/**found**/

for (i =2 ; i<= m; i++)

/**found**/

y+=1. 0/ ( i* i) ;

2. 程序修改(第37套)

给定程序中函数fun的功能

是:用下面的公式求π的近似

值,知道最后一项的近似值小

于指定数(参数num)为止:

例如程序0.0001,则程序输出

3.1414。

/**found**/

while((fabs(t))>=num)

/**found**/

t=s/n

2. 程序修改(第45套)

给定程序中函数fun

的功能是:根据以下公式求π

值,并作为函数值返回。例如,

给指定精度的变量eps输入

0.0005时,应当输出

Pi=30140578.。

/**found**/

t=1.0;

/**found**/

return(s*2);

2. 程序修改(第47套)

给定程序中函数fun函数功能

是:计算n!。例如,给n输入

5,则输出120.000000。

/**found**/

if (n==0)

/**found**/

result *=n--;

2. 程序修改(第48套)

给定程序中函数fun的功能

是:根据整形形参m=1,计算如

下公式的值。

m=1+1/2*2+1/3*3+1/4*4+..+1/

m*m例如,若m中的值为5,

则应输出1.463611

/**found**/

for (i =2 ; i<= m; i++)

/**found**/

y+=1. 0/ ( i* i) ;

给定程序中函数fun的功能

是:计算并输出下列级数的前

n项的和Sn,直到Sn+1大于q

为止,q的值通过形参传入。

Sn=2/1+3/2+4/3+…+(N+1)/N

/**found**/

s=s +(double)(n+1)/n;

/**found**/

return t;

2. 程序修改(第52套)

下列给定程序中函数fun

的功能是:按以下递推公式求

函数的值。

Fun=10 (n=1),fun(n-1)+2 (n>1)

例如,当给n输出5时,函数

值为18;当给n输入3时,函

数值为14.

/**found**/

int fun(int n)

/**found**/

if(n==1)

2. 程序修改(第58套)

给定程序中函数fun的功能

是:求K!,所求阶乘

的值作为函数值返回。例如,

若K=10,则应输出3628800。

/**found**/

if(k>1)

/**found**/

else if(k= =0)

2. 程序修改(第63套)

给定程序中函数fun的功能

是:计算整数n的阶乘。

/**found**/

result *=n--;

/**found**/

return result;

2. 程序修改(第65套)

给定程序中,函数fun的功能

是:根据形参m,计算下列公

式的值:t=1+1/2+1/3+1/4+…

+1/m例如,若输入5,则应输

出2.28333

/**found**/

t+=1.0/i;

/**found**/

return t;

2. 程序修改(第77套)

给定程序中函数fun的功能

是:根据整形形参m,计算如下

公式的值。

Y=1/(100*100)+1/(200*200)

+1/(300*300)+L+1/(m*m)

/**found**/

double fun(int m)

/**found**/

for(i=100;i<=m;i+=100)

2. 程序修改(第78套)

给定程序中函数fun的功能

是:根据整型形参n计算如下

公式的值。A1=1,

A2=1/(1+A1),A3=1/(1+A2),An

=1/(1+A(n-1))例如:若n=10,

则应输出:0.617977.

/**found**/

float fun(int n)

/**found**/

for(i=2;i<=n;i++)

2. 程序修改(第85套)

下列给定程序中,函数fun的

功能是:传入一个整数m,计

算如下公式的值。

t=1/2-1/3-…-1/m例如,若输入

5,则应输出-0.283333.

/**found**/

t-=1.0/i;

/**found**/

return t;

2. 程序修改(第91套)

下列给定程序中,函数fun

的功能是:求s的值。设

S=(2*2/(1*3))*(4*2/(1*3))*(6*

2/(5*7))*L*(2k)(2k)/((2k-1)*(2

k+1))例如,当k为10时,函

数的值应为1.533852。

/**found**/

double fun(int k)

/**found**/

return s ;

2. 程序修改(第95套)

给定程序中函数fun的功

能是:求出以下分数列的前n

项之和2/1,3/2,5/2,8/5, 13/8,

21/13…和值通过函数值返回

到main函数。例如,若n=5,

则应输出8.391667。

/**found**/

double fun(int n)

/**found**/

s=s+(double)a/b;

2. 程序修改(第96套)

给定程序中函数fun的功能是:给定n个实数,输出平均值以上(含平均值)的实数个数。例如,n=8时,输入193,199,195,673,195,757,196,051,1 96,092,196,596,196,579,196,76 3,使得平均值为195.838745,在平均值以上的实数个数应为5。

/**found**/

{

2. 程序修改(第99套)

已知一个数列从第0项开始的前3项:分别是0,0,1以后的各项都是它相邻的前3项之和。下列给定程序中,函数fun的功能是:计算并输出该数列前n项的平方根之和sum。n的值通过形参传入。例如,当n=10时,程序的输出结果应为23.197745。

/**found**/

double fun(int n)

/**found**/

return sum

3、第二大类(ASCII类)共4道2. 程序修改(第12套)

给定程序中函数fun 的功能是:逐个比较p、q所指两个字符,并把ASCII值或相等的字符依次存放在c所指数组中,形成一个新的字符串。例如,若主函数中a字符串为aBCDeFgH,b字符串为Abcd,则c中的字符串应为aBcdeFgH。

/**found**/

int k=0;

/**found**/

while (*p||*q)

2. 程序修改(第34套)

给定程序中函数fun的功能是:将s所指字符串中位于奇数位置的字符或ASCII码为偶数的字符放入t所指数组中。例如,字符串中的数据为”AABBCCDDEEFF”,则输出应当是”ABBCDDEFF”。

/**found**/

if ( i % 2 || s [ i ]%2==0 )

/**found**/

t [ j ]= ' \0 ' ;

2. 程序修改(第55套)

给定程序中函数fun的功能是:在p所指字符串中找出ASCII码值最大的字符,将其放在第一个位置上;并将该字符前的原字符向上顺序移动。例如,调用fun函数之前给字符串输入”ABCDeFGH”,调用后字符串中的内容应

为”eABCDFGH”。

/**found**/

q=p+i;

/**found**/

while(q>p)

2. 程序修改(第79套)

给定程序中函数fun

的功能是:读入一个字符串

(长度<20),将该字符串中的

所有字符串按ASCII码升序排

序后输出。例如,若输入

edcba,则应输出:abcde。

/**found**/

for(i=strlen(t)-1;i;i--)

/**found**/

if(t[j]>t[j+1])

3、第三大类(字母类)共8道

2. 程序修改(第8套)

给定程序函数fun的功能

是:将tt所指字符串中的小写

字母都改为对应的大写字母,

其他字符不变。例如,如输入

“Ab,cD”,则输出“AB,CD”。

/**found**/

if((tt[i]>=a′)&&(tt[i]<= ′z′)

/**found**/

tt[ i ]- =32;

2. 程序修改(第19套)

给定程序中函数fun

的功能是:删除s所指字符中

所有小写字母c。

/**found**/

s[j++]=s[i];

/**found**/

s[j]=’\0’;

2. 程序修改(第38套)

给定程序中函数fun的功能

是:将s所指字符串中的字母

转换为按字母序列的后续字

母(如‘Z’转化成‘A’,‘z’

转换为a),其它字符不变。

/**found**/

while(*s)

/**found**/

s++;

2. 程序修改(第64套)

给定程序中函数

fun的功能是:读入一行英文

文本行,将其中每个单词的第

一个字母改成大写,然后输出

此文本行(这里的“单词”是

指由空格隔开的字符串)。例

如,若输入”I am a student to

take the examination”,则应输

出”I Am A Student To Take The

Examination”

/**found**/

#include

/**found**/

void upfst( char *p)

2. 程序修改(第80套)

给定程序中,函数fun

的功能是:统计字符串各元音

字母(即:A、E、I、O、U)

的个数。注意字母不分大小

写。例如,输入”THIs is a boot”,

则应输出是1 0 2 2 0。

/**found**/

void fun(char *s, int num[5])

/**found**/

num[k]=0;

/**found**/

switch(*s)

2. 程序修改(第81套)

给定程序中函数fun的功能

是:分别统计字符串大写字母

和小写字母的个数。例如,给

字符串s输入

”AaaaBBb123CCccccd”,则应

输出结果:upper=5,lower=9.

/**found**/

void fun(char *s, int *a, int *b)

/**found**/

(*a)++;

/**found**/

(*b)++;

2. 程序修改(第90套)

给定程序中函数fun的功

能是:将p所指字符串中每个

单词的最后一个字母改成大

写。(这里的“单词”是指由

空格隔开的字符串)。例如,

若输入:“I am a student to

take the examination”,则应输

出:“I AM A studenT to takE

thE examinatioN”。

/**found**/

if(*p==′ ′)

/**found**/

*(p-1)=toupper(*(p-1));

2. 程序修改(第93套)

给定程序中函数fun的功

能是:将大写字母转换为对应

的小写字母之后的第5个字

母,若小写字母为v~z,使其

值减21。转换后的小写字母作

为函数值返回。例如,若形参

是字母A,则转换为小写字母

f;形参是字母W,则转换为小

写字母b。

/**found**/

c=c+32;

/**found**/

c=c+5;

4、第四大类(高位或者低位类)

共5道

2. 程序修改(第5套)

下列给定程序中,函数fun的

功能是:将长整型数中各位上

为奇数的数依次取出,构成一

个新数放在t中。高位仍在高

位,低位仍在低位。例如,当

s中的数为87653142时,t中

的数为7531.

/**found**/

*t=0;

/**found**/

if(d%2==1)

2. 程序修改(第17套)

给定程序中函数fun的功

能是:将长整型中各位上为偶

数的数依次取出,构成一个新

数放在t中。高位仍在高位,

低位仍在低位。例如,当s中

的数为87653142时,t中的数:

8642。

/**found**/

if(d%2==0)

/**found**/

s/=10;

2. 程序修改(第20套)

给定程序中函数fun的功能

是:从低位开始取出长整形变

量s中奇数位上的数,构成一

个新数存放在t中。高位仍在

高位,低位仍在低位。例如,

当s中的数为7654321时,t

中的数为7531。

/**found**/

void fun(long s,long *t)

/**found**/

s1=s1*10;

2. 程序修改(第26套)

给定程序中函数fun的功能

是:从低位开始取出长整形变

量s中偶数位上的数,构成一

个新数放在t中。高位仍在高

位,低位仍在低位。例如,当

s中的数为7654321时,t中的

数为642。

/**found**/

void fun (long s, long *t)

/**found**/

while (s>0)

2. 程序修改(第98套)

下列给定程序中函数fun的功

能是:从低位开始取出长整型

变量s中奇数位上的数,构成

一个新数放在t中。例如,当

s中的数为7654321时,t中的

数为7531。

/**found**/

void fun(long s,long *t)

/**found**/

s1=s1*10;

5、第五大类(平均类)共5道

2. 程序修改(第40套)

在主函数中键盘输入若干个

数放入数组中,用0结束输入

并放在最后一个元素中。给定

程序中函数fun的功能是:计

算数组元素中值为正数的平

均值(不包括0)。例如:数组

中元素中的值依次为:39,-47,

21,2,-8,15,0,则程序的运行结

果为19.250000。

/**found**/

double sum =0. 0;

/**found**/

sum/=c;

2. 程序修改(第49套)

给定程序中函数fun函数功能是:按顺序给s所指数组中元素赋予从2开始的偶数,然后再按顺序对每5个元素求平均值,并将这些值依次存放在w所指的数组中。若s所指数组中元素个数不是5的倍数,多余部分忽略不计。例如,s所指数组有14个元素,则只对前10个元素进行处理,不对后面的4个元素求平均值。/**found**/

sum=0.0;

/**found**/

if((i+1)%5==0)

2. 程序修改(第83套)

给定程序中函数fun的功能是:从n(形参)个学生的成绩中统计出低于平均分的学生人数,此人数由函数值返回,平均分存放在形参aver 所指的存储单元中。例如,输入8名学生的成绩:80.5,60,72,90.5,98,51.5,88,64

则低于平均分的学生人数为4(平均分为75.5625)

/**found**/

t+=s[k];

/**found**/

*aver=ave;

2. 程序修改(第97套)

给定程序中函数fun函数功能是:按顺序给s所指数组中元素赋予从2开始的偶数,然后再按顺序对每5个元素求平均值,并将这些值依次存放在w所指的数组中。若s所指数组中元素个数不是5的倍数,多余部分忽略不计。例如,s所指数组有14个元素,则只对前10个元素进行处理,不对后面的4个元素求平均值。/**found**/

sum=0.0;

/**found**/

if ((i+1)%5==0)

6、第六大类(学生类)共1道2. 程序修改(第42套)

给定程序中函数fun的功能是:对N名学生的学生成绩,按从高到低的顺序找出前m (m<=10)名学生来,将这些学生数据存放在一个动态分配的连续存储区中,此存储区的首地址作为函数值返回。

/**found**/

t=calloc(m,sizeof(STU));

/**found**/

t[k]=b[j];

7、第七大类(ABC类)共4道2. 程序修改(第7套)

给定程序中函数fun 的功能是:将p所指字符串中所有字符复制到b中,要求复制第三个字符之后插入一个

空格。例如,若给a输入字符

串:ABCDEFGHIJK,调用函数

后,字符数组b中的内容为:

ABC DEF GHI JK

/**found**/

b[k]=*p;

/**found**/

b[k]=' ';k++;

2. 程序修改(第32套)

给定程序中函数fun的功能

是:将s所指字符串的正序和

反序进行连接,形成一个新串

放在t所指的数组中。例如,

当s所指字符串为:”ABCD”

时,t所指字符串中的内容应

为:”ABCDDCBA”

/**found**/

void fun(char*s, char *t)

/**found**/

t[2*d]=’\0’;

2. 程序修改(第44套)

给定程序中函数fun的功能

是:先将s所指字符串中的字

符按逆序放到t所指字符串

中,然后把s所指的字符串中

的字符按正序连接到t所指串

的后面。例如:当s所指的字

符串为”ABCDE”时,t所指的

字符串应为”EDCBAABCDE”

/**found**/

int i,s1;

/**found**/

t[i]=s[s1-i-1];

2. 程序修改(第54套)

给定程序中函数fun的功能

是:先将在字符串s中的字符

按正顺序放到t串中,然后把

s中的字符按逆顺序放到他串

后面。例如,当s中的字符串

为”ABCDE”时,则t中的字符

串应为”ABCDEEDCBA”。

/**found**/

for(i=0;i

/**found**/

t[2*s1]='\0'

8、第八大类(abcd类)共6道

2. 程序修改(第15套)

给定程序中fun函数的功能

是:将字符串中的字符逆序输

出,但不改变字符串中的内

容。例如,若字符串为abcd,

则应输出:dcba。

/**found**/

void fun(char *a)

/**found**/

printf ( "%c" , *a);

2. 程序修改(第23套)

给定程序中函数fun的功能

是:将s所指字符串中出现的

与t1所指字符串相同的子串

全部替换为t2所指字符串,所

形成的新串放在w所指的数

组中。要求t1和t2所指字符

串的长度相同。例如,当s所

指字符串中的内容

为”abcdabfab”,t1所指子串的

内容为”ab”,t2所指子串的内

容为”99”时,在w所指的数组

中的内容应为”99cd99f99”.

/**found**/

while( *r)

/**found**/

{*a=*r;a++;r++;}

2. 程序修改(第41套)

给定程序中函数

fun的功能是:将s所指字符

串中最后一次出现的与t1所

指字符串相同的子串替换成

t2所指定字符串,所形成的新

串放在w所指的数组中。要求

t1和t2所指字符串的长度相

同。例如,当s所指字符串中

的内容为:”abcdabfabc”,t1所

指串中的内容为”ab”,t2所指

字符串中的内容为”99”时,结

果在w所指的数组中的内容

应为”abcdabf99c”。

/**found**/

while (*w)

/**found**/

if ( *r ==*p )

2. 程序修改(第54套)

给定程序中函数fun的功

能是:求出s所指字符串最后

一次出现的t所指字符串的地

址,通过函数值返回,在主函

数中输出从此地址开始的字

符串;若未找到,则函数值

NULL。例如,当字符串中的

内容为“abcdabfabcdx”,t中内

容为”ab”时,输出结果应

是”abcdx”。当字符串中的内容

为”abcdabfabcdx”, t中内容

为”abd”时,则程序输出未找到

信息”not be found!”。

/**found**/

a=NULL;

/**found**/

if(*r==*p)

2. 程序修改(第56套)

给定程序中函数fun的

功能是:从s所指字符串中,

找出与t所指字符串相同的子

串的个数作为函数值返回。例

如,当s所指字符串中的内容

为”abcdabfab”,t所指字符串的

内容为”ab”,则函数返回整数3

/**found**/

if(*r==*p) {r++;p++; }

/**found**/

if(*r==′\0′)

2. 程序修改(第76套)

给定程序中函数fun的功能

是:首先把b所指字符串中的

字符按逆序存放,然后将a所

指字符串中的字符和b所指字

符串中的字符,按排列的顺序

交叉合并到c所指数组中,过

长的剩余字符接在c所指数组

的尾部。例如,当a所指字符

串中的内容为”abcdefg”,b所

指字符串中的内容为”1234”,

c所指字符串中的内容

为”a4b3c2d1efg”,而当a所指

字符串中的内容为”1234”,b

所指字符串中的内容

为”abcdefg”, c所指字符串中

的内容1g2f3e4dcba”。

/**found**/

while(i

/**found**/

*c='\0';

9、第九大类(单向链表类)共3

2. 程序修改(第72套)

给定程序中函数Creatlink

的功能是创建带头结点的单

向链表,并为各结点数据域赋

0到m-1的值。

/**found**/

p=s;

/**found**/

s->data=rand()%(m - 1);

/**found**/

return h;

2. 程序修改(第86套)

给定程序是建立一个带头

结点的单向链表,并用随机函

数为各结点赋值。函数fun的

功能是将单向链表结点(不包

括头结点)数据域为偶数的值

累加起来,并且作为函数值返

回。

/**found**/

while (p!=NULL)

/**found**/

p= p - >next;

2. 程序修改(第87套)

给定程序是建立一个带头

结点的单向链表,并用随机函

数为各结点赋值。函数fun的

功能是求出单向链表结点(不

包括头结点)数据域中的最大

值,并且作为函数值返回。

/**found**/

p=h->next;

/**found**/

p=p->next;

10、第十类(字符串类)共12道

2. 程序修改(第2套)

给定程序中,函数fun的功能

是:统计substr所指的字符串

在str所指的字符串中出现的

次数。若字符传为aaas 1kaaas,

子字符串为as,则应输出2.

/**found**/

for(i=0;str[i];i++)

/**found**/

if(substr[k+1]== ′\0′)

2. 程序修改(第9套)

给定程序中函数fun的

功能是:用冒泡法对6个字符

串按由小到大的顺序排列。/**found**/

for(j=i+1;j<6;j++)

/**found**/

*(pstr+i)=*(pstr+j);

2. 程序修改(第16套)

给定程序中函数fun的功能是:将一个由八进制数字字符串组成的字符串转换为与其面值相等的十进制整数。规定输入的字符串最多只能包含5位八进制数字字符。

例如,如输入77777,则输出32767。

/**found**/

n= *p-′0′;

/**found**/

n=n*8+*p-′0′;

2. 程序修改(第24套)

给定程序中函数fun的功能是:从N个字符串中找出最长的串,并将其地址作为函数值返回。各字符串在主函数中输入,并放在一个字符串数组中。

/**found**/

char *fun(char (*sq)[M])

/**found**/

return sp;

2. 程序修改(第30套)

给定程序中函数fun的功能是:用插入排序法对字符串中的字符按从小到大的顺序进行排序,插入法的基本算法是:先对头两个字符进行排序,然后把第三个字符插入到前两个字符中,插入后前三个字符依然有序;再把第四个字符插入到前三个字符中……。待排序的字符串已在主函数中赋予。

/**found**/

n=strlen (aa);

/**found**/

ch =aa [i];

2. 程序修改(第36套)

给定fun函数的功能是:计算s所指字符串中含有t所指字符串的数目,并作为函数值返回。

/**found**/

r=t;

/**found**/

r=t;

2. 程序修改(第39套)

给点那个程序中函数fun的功能是:依次取出字符串中所有的数字字符,形成新的字符串,并取代原字符串。

/**found**/

s [j++]=s [ i ];

/**found**/

s [ j ]= ' \ 0 ' ; 2. 程序修改(第50套)

给定程序中函数fun

的功能是:删除指针p所指字

符串的所有空白字符(包括制

表符、回车符及换行符)。输

入字符串时用‘#’结束输入。

/**found**/

for(i=0,t=0;p[i];i++)

/**found**/

c[t]=’\0’;

2. 程序修改(第59套)

给定程序中函数fun的功能

是:将m(1≦m≦10)个字符

串连接起来,组成一个新串,

放入pt所指存储区中。例如,

把三个串”abc”、”CD”、”EF”

连接起来,结果是”abcCDEF”.

/**found**/

int k,q,i;

/**found**/

pt[i]=str[k][i];

2. 程序修改(第62套)

给定程序中函数fun的功能

是:比较两个字符串,将长的

那个字符串的首地址作为函

数值返回。

/**found**/

char *fun (char *s ,char *t)

/**found**/

ss++;

/**found**/

tt++;

2. 程序修改(第68套)

给定程序中函数fun的功能

是:在字符串的最前端加入n

个*号,形成新串,并且覆盖

原串。注意:字符串的长度最

长允许为79.

/**found**/

p=s ;

/**found**/

p++;

/**found**/

a[i]=0;

2. 程序修改(第75套)

给定程序中函数fun的

功能是:统计子字符串”substr”

在字符串str中出现的次数。

例如,若字符串为”aaaslkaaas”,

子字符串为as,则应输出2。

/**found**/

int fun(char *str, char *substr)

/**found**/

for (i=0; str[i]; i++)

11、第十一类(无规则类)共27

2. 程序修改(第4套)

给定程序中函数fun

的功能是:求出两个非零正整

数的最大公约数,并作为函数

值返回。若num1和num2分

别为49和21,则输出的最大

公约数为7;

/**found**/

t=a;a=b;b=t;

/**found**/

return (b);

}

2. 程序修改(第10套)

给定程序中函数fun的功

能是:计算正整数num的各位

上的数字之积。例如,若输入

252,则输出应该是20。若输

入202,则输出应该是0。

/**found**/

long k=1;

/**found**/

num/=10;

2. 程序修改(第11套)

给定程序中函数fun的功

能是:把主函数中输入的3个

数,最大的放在a中,中间的

放在b中,最小的放在c中。

例如,若输入的数为:55 12

34,输出的结果应该是:

a=55.0,b=34.0,c=12.0。

/**found**/

float k;

/**found**/

if(*a< *c)

2. 程序修改(第14套)

给定程序中函数fun

的功能是:从整数1到55之

间,查找出能被3整除、且有

一位上的数是5的数,把这些

数放在b所指的数组中,这些

数的个数作为函数值返回。规

定函数中a1放个位数,a2放

十位数。

/**found**/

a2=k/10;

/**found**/

return i;

2. 程序修改(第18套)

给定程序中函数fun

的功能是:计算并输出high

以内最大的10个素数之和。

high的值由主函数传给fun函

数。例如,如high的值为100,

则函数的值为732。

/**found**/

while((high>=2) && (n<10))

/**found**/

yes=0;break;

2. 程序修改(第22套)

给定程序中函数fun的

功能是:求三个数的最小公倍

数。例如,若给主函数中的变

量x1、x2、x3分别输入15 11

2,则输出结果应当是330。

/**found**/

fun(int x,int y, int z)

/**found**/

return j;

2. 程序修改(第25套)

由N个有序整数组成的数列

已放在一维数组中,给定程序

中函数fun的功能是:利用折

半查找算法查找整数m在数

组中的位置。若找到,返回其

下标值;反之,返回-1.折半查

找的基本算法是:每次查找前

先确定数组中待查的范围:

low和high(low﹤high),然

后把m与中间位置(mid) 上元

素的值进行比较。如果m的值

大于中间位置元素的值,则下

一次的查找范围落在中间位

置之后的元素中,反之,下一

次的查找范围落在中间位置

之前的元素中。直到low﹥

high,查找结束。

/**found**/

int fun(int a[],int m)

/**found**/

else if (m>a [mid])

2. 程序修改(第28套)

给定程序中函数fun

的功能是:用选择法对数组中

的n个元素进行排序。

/**found**/

p=j;

/**found**/

p=i;

2. 程序修改(第31套)

给定程序中函数fun的功能

是:判断一个整数是否是素

数,若是素数返回1,否则返

回0.在main()函数中,若fun

返回1输出YES,若fun返回

0输出NO!

/**found**/

K++;

/**found**/

if (m==k)

2. 程序修改(第35套)

假定整数数列中的

数不重复,并存放在数组中。

给定程序中函数fun的功能

是:删除数列中值为x的元素。

n中存放的是数列中元素的个

数。

/**found**/

if(p==n) return-1;

/**found**/

a[i]=a[i+1];

2. 程序修改(第43套)

给定程序中函数fun

和funx的功能是:用二分法求

方程2x3-4x2+3x-6=0的一个

根,并要求绝对误差不超过

0.001。例如,若给m输入-100,

n输入90,则函数求得的一个

根为2.000.

/**found**/

double r;

/**found**/

while(fabs(n-m)>0.001)

2. 程序修改(第46套)

给定程序中函数fun

的功能是:将n个无序整数从

小到大排序。

/**found**/

for(i=j+1;i

/**found**/

p=i;

2. 程序修改(第51套)

给定程序中函数fun的功能是:输出M*M整数方阵,然后求两条对角线上元素之和,并作为函数值返回。

/**found**/

int fun(int n,int xx[][M])

/**found**/

printf(“%d”,xx[i][j]);

2. 程序修改(第57套)

给定程序的功能是:读入一个整数k(2≤k≤10000)输出它的所有质因子(即所有为素数的因子)。例如,若输入整数2310,则应输出:2,3,5,7,11。/**found**/

IsPrime (int n)

/**found**/

if (!(n%i))

2. 程序修改(第61套)

给定程序中函数fun的功能是:求出数组中最大数和次最大数,并把最大数和a[0]中的数对调、次最大数和a[1]中的数对调。

/**found**/

void fun(int *a, int n)

/**found**/

m=i;

2. 程序修改(第66套)

给定程序中,函数fun的功能是:给一维数组a 输入任意4个整数,并按下列的规律输出。例如输出1、2、

3、4,程序输出一下方阵。

4 1 2 3

3 4 1 2

2 3 4 1

1 2 3 4

/**found**/

void fun(int *a)

/**found**/

a[j]=a[j-1];

2. 程序修改(第67套)

给定程序中函数fun的功能是:从三个红球,5个白球,6个黑球中任意取出8个作为一组,进行输出。在每组中,可以没有黑球,但必须要有红球和白球。组合数作为函数值返回。正确的组合数应该是15。程序中i的值代表红球数,j代表白球数,k代表黑球数。/**found**/

for(i=1;i<=3;i++)

/**found**/

if(k>=0&&k<=6)

2. 程序修改(第69套)

给定程序中fun函数的功能是:找出100至n(n不大于1000)之间三位数字相等的

所有整数,把这些整数放在s

所指数组中,个数作为函数值

返回。

/**found**/

k= i ;

/**found**/

c=k%10;

2. 程序修改(第70套)

给定程序中fun函数的功

能是:计算n的5次方的值(规

定n的值大于2 小于8),通

过形参指针传向主函数,并计

算该值的个位、十位、百位上

的数字之和作为函数值返回。

例如,7的5次方是16807,

其低3位数的和值是15。

/**found**/

d=1 ; s=0 ;

/**found**/

d=d/10 ;

2. 程序修改(第71套)

数列中,第一项值为3,后

一项都比前一项的增5;给定

程序中函数fun函数功能是:

计算前n(4

和;每累加一次把被4除后余

2的当前累加值放入数组中,

符合此条件的累加值的个数

作为函数值返回主函数。例

如,当n的值为20时,该数

列3,8,13,18,23,28,…,93,98符

合此条件的累加值应为

42,126,570,1010。

/**found**/

int i,j=0,k,sum;

/**found**/

if (sum %4==2)

/**found**/

return j++;

2. 程序修改(第72套)

给定程序中函数fun

的功能是:为一个偶数寻找两

个素数,这两个素数之和等于

该偶数,并将这两个素数通过

形参指针传回主函数。

/**found**/

y=1;

/**found**/

d=a-i;

2. 程序修改(第74套)

给定程序中函数fun的功能

是:根据输入的三个边长(整

值型),判断能否构成三角形,

还是等腰三角形。若能够构成

等边三角形函数返回3,若能

构成等腰三角形,函数返回2,

若构成一般三角形,则函数返

回1,若不能构成三角形,则

函数返回0.

/**found**/

return 3;

/**found**/

return 1;

2. 程序修改(第82套)

给定程序中函数fun的功能

是:先从键盘上输入一个3行

3列矩阵的各个元素的值,然

后输出主对角线元素之和。

/**found**/

sum=0;

/**found**/

scanf ("%d", &a [ i ] [ j ]) ;

2. 程序修改(第84套)

给定程序中函数fun的功能

是:将十进制正整数m转换成

k(2<=k<=9)进制数,并按位

输出。例如,若输入8和2,

则应输出1000(即十进制数8

转换成二进制表示是1000)。

/**found**/

void fun(int m, int k)

/**found**/

aa[i]=m%k;

/**found**/

printf(“%d”,aa[i-1]);

2. 程序修改(第89套)

函数fun实现的功能是:统计

一个无符号整数中各位数字

值为0的个数,通过形参传回

主函数,并把该整数中各位上

最大的数字值作为函数值返

回。例如,若输入无符号整数

30800,则数字值为0的位的

个数为3各位上数字值最大的

是8。

/**found**/

if(t==0)

/**found**/

*zero=count;

2. 程序修改(第92套)

给定程序中函数fun的功能

是:求整数x的y次方的低3

位值。例如,整数5的6次方

为15625,此值的低3位值为

625。

/**found**/

for(i=1;i<=y;i++)

/**found**/

t=t%1000;

2. 程序修改(第94套)

给定程序中函数fun的功

能是:计算输出k以内最大的

10个能被13或17整除的自然

数之和。K的值由主函数传入,

若K的值为500.则主函数为

4622。

/**found**/

if((k%13= =0││(k%17= =0))

/**found**/

加}

2. 程序修改(第100套)

下列给定程序中,函数

fun的功能是:找出一个大于

给定整数m且紧随m的素数,

并作为函数返回。

/**found**/

if(i%k==0)

/**found**/

if(k==i)

大学计算机二级考试试题及其答案 !!!

全国计算机二级考试试题 【1.1】以下不正确的C语言标识符是____。 A) int B) a_1_2 C) ab1exe D) _x 【1.2】以下是正确的C语言标识符是____。 A) #define B) _123 C) %d D) \n 【1.3】下列四组字符串中都可以用作C语言程序标识符的一组是。A) print B) i\am C) Pxq D) str_l _3d one_half My->book Cpp ??? oodbs tart$it line#pow ??? aBc 3pai His.age while 【1.4】下面各选项组中,均是C语言关键字的组是。 A) auto,enum,include B) switch,typedef,continue C) signed,union,scanf D) if,struct,type 【1.5】下列不属于C语言关键字的是。 A) default B) register C) enum D) external 【1.6】C语言程序从main()函数开始执行,所以这个函数要写在____。 A) 程序文件的开始 B) 程序文件的最后 C) 它所调用的函数的前面 D) 程序文件的任何位置

【1.7】下列关于C语言的叙述错误的是____ A) 大写字母和小写字母的意义相同 B) 不同类型的变量可以在一个表达式中 C) 在赋值表达式中等号(=)左边的变量和右边的值可以是不同类型 D) 同一个运算符号在不同的场合可以有不同的含义 【1.8】在C语言中,错误的int类型的常数是。 A) 32768 B) 0 C) 037 D) 0xAF 【1.9】执行语句 printf("%x",-1);屏幕显示____。 A) -1 B) 1 C) -ffff D) ffff 【1.10】已知 long i=32768;执行语句printf("%d",i);屏幕显示____。 A) -1 B) -32768 C) 1 D) 32768 【1.11】已知 long i=65539;执行语句printf("%d",i);屏幕显示____。 A) 65539 B) -3 C) 3 D) 程序不能执行 【1.12】在C语言中,整数-8在内存中的存储形式是。 A) 1111 1111 1111 1000 B) 1000 0000 0000 1000 C) 0000 0000 0000 1000 D) 1111 1111 1111 0111 【1.13】C语言中字符型(char)数据在内存中的存储形式是____。 A) 原码 B) 补码

高考英语短文改错技巧总结版,考生必看!

短文改错对考生的要求较高,是对语言知识综合运用能力的考查,检测考生发现、判断、纠正文章错误 的能力,进而考查学生的词法、句法及行文逻辑等方面的水平。考生在该项上往往失分较多,对该题感 到束手无策。但是,如果解题时能从有效掌握解题思路、出题规律及破解题目关键两大处入手,此类题 目就会迎刃而解。 短文改错解题思路和检查原则 1. 句中各部分的结构是否完整,特别是每个句子要有动词; 2. 谓语动词的时态、语态; 3. 非谓语动词的用法; 4. 名词的单、复数,格的使用是否正确; 5. 定冠词和不定冠词是否正确; 6. 代词的格和性的使用是否有误; 7. 定语从句中关系代词、关系副词是否准确无误; 8. 并列句中的并列连词、主从复合句中的从属连词用的是否得当。 短文改错解题四原则 改动以最少为原则; 虚词以添加或删除为原则; 实词以改变词形为原则; 以保持句子原意为原则。 解题注意要点和能力培养 1. 核对错项时,若的确有一时难以改出的地方,可以参考所改动项是否基本符合“1:1:8”的比例。即多一词1个,缺词1个,错词8个。 2. 核对改正的语法项目是否有重复。因为短文改错往往覆盖面广,一般不会出现重复考查某个语法点的现 象。 3. 核对答题符号是否规范,位置是否准确,看看有无遗漏符号、忽略字母大小写和拼写等问题。

解题思路(三步解题法) 第一步:快速浏览全文,把握文章的主要时态、人称及文章的主旨大意,顺便标记自己一眼就能看出的错 误。 第二步:细读文章,找出错误并改正。一般要结合文章的上下文以及出题规律来做题。 第三步:代入正确答案通读全文,看其是否通顺。 出题规律及破解关键 高考短文改错一般会在以下八个方面进行设题。 1. 动词:主要考查时态、主谓一致和固定搭配。例如: ①时态混用 Then the trouble started. We can’t open the door. So we asked the policeman for help. 。) (很显然此段的主时态是一般过去式,因此应把can’t改为couldn’t ②主谓不一致 There were a football game on TV last Saturday evening. (a football game决定了谓语动词用单数,故应该把were改为was。) ③固定搭配 He had little money left, so he had to give up buy the computer. (give up doing sth.是固定用法,故动词buy应该改为buying。) 2. 名词:主要考查单复数混用。例如: Helen is seventeen year old. She is very busy. (表示“年龄多大了”应该为复数形式,故应把year改为years。) 3. 形容词/副词:主要考查两者之间是否混用。例如: ①副词代替正确形容词 During the football season, Helen is much busier than usually. (很明显是“与平时相比较更忙”,因此需要把usually改为usual。) ②形容词代替正确副词 As the time clock showed one minute and forty-two seconds left in the game, she began cheering excited, “Come on —get going!” (显然应把excited改为excitedly,用来修饰动词cheer。) 4. 介词:主要考查固定搭配,特别是动词和介词的搭配。例如: ①介词遗漏 I’m sure you will get rid the sorrow and unhappiness caused by the disaster. (get rid of 是固定搭配,意为“摆脱,除去”。) ②介词多余 My wife is also happy because of I have given up smoking.

计算机二级上机考试(程序改错题)1

计算机二级上机考试(程序改错题)1 https://www.wendangku.net/doc/9513808242.html,work Information Technology Company.2020YEAR

程序编程题目 1、第一大类(交换类)共7道 2. 程序修改(第3套) 给定程序中函数fun的功能是:通过某种方式实现两个变量的交换,规定不允许增加语句和表达式。例如变量a中的值原为8,b中的值原为3,程序运行后a中值为3,b中的值为8. /**found**/ t=*x; *x=y; /**found**/ return(t); 2. 程序修改(第60套) 给定程序中函数fun的功能是:实现两个整数的交换。例如给a和b分别输入60和65,输出为:a=65 b=60 /**found**/ void fun(int *a,int *b) /**found**/ t=*b;*b=*a;*a=t; 2. 程序修改(第88套) 给定程序中函数fun的功能是:将主函数中两个变量的值进行交换。例如,若变量a中的值为8,b中的值为3,则程序运行后,a中的值为3,b中的值为8。 /**found**/ void fun(int *x, int *y) /**found**/ t=*x,*x=*y,*y=t; 2、第二大类(计算类)共22道2. 程序修改(第1套) 给定程序中函数fun的功能是:求出以下分数序列的前n 项之和。 2/1+3/2+5/3+8/5+13/8+21/13 +……和值通过函数值返回main函数。例如n=5,则应输出:8.391667。 /**found**/ double fun(int n) /**found**/ s=s+(double)a/b; 2. 程序修改(第6套) 给定程序中函数fun的功能是:用递归算法计算列中第n 项的值。从第一项起,斐波拉契数列为:1、1、2、3、5、8、13、21、…… /**found**/ switch(g) /**found**/ case 1:case 2:return 1;2. 程序修改(第13套) 给定程序中函数fun的功 能是:求 s=aa…aa—…—aaa —aa—a(此处aa…aa表示n 个a,a和n的值在1至9之 间)。例如,a=3,n=6,则以下 表达式为: S=333333-33333-3333-333-33- 3其值是296298。 /**found**/ long s=0,t=0; /**found**/ t=t/10; 2. 程序修改(第21套) 给定程序中函数fun的功 能是:计算s=f(-n)+f(- n+1)+……+f(0)+f(1)+f (2)+……f(n)的值。例 如,当n为5时,函数值应 该是:10.407143。 f(x)=(x+1)(x-2) x>0且x!=2 f(x)=0 f(x)= (x-1)(x-2) x<0 /**found**/ double f(double x) /**found**/ return s; 2. 程序修改(第27套) 给定程序中函数fun的功能 是:用递归算法求形参a的 平方根。求平方根的迭代公 式如下:x1=1/2(x0+a/x0)例 如:a为2时,平方根值为 1.414214 /**found**/ double fun(double a,double x0) /**found**/ if(fabs(x1-x0)>0.00001) 2 程序修改(第29套) 给定程序中函数fun的功能 是:计算函数值,F(x,y,z) =(x+y)/(x-y)+(z+y)/(z-y)的值 得。其中x和y的值不等,z 和y的值不等。例如,当x 的值为9、y的值为11、z的 值为15时,函数值为-3.50。 /**found**/ #define FU(m,n) (m)/(n) /**found**/ return (value); 2. 程序修改(第33套) 给定程序中函数fun的功能 是:根据整形形参m=1,计算 如下公式的值。 m=1+1/2*2+1/3*3+1/4*4+..+1 /m*m例如,若m中的值为 5,则应输出1.463611 /**found**/ for (i =2 ; i<= m; i++) /**found**/ y+=1. 0/ ( i* i) ; 2. 程序修改(第37套) 给定程序中函数fun的功能 是:用下面的公式求π的近 似值,知道最后一项的近似 值小于指定数(参数num) 为止:例如程序0.0001,则 程序输出3.1414。 /**found**/ while((fabs(t))>=num) /**found**/ t=s/n 2. 程序修改(第45套) 给定程序中函数fun的功 能是:根据以下公式求π 值,并作为函数值返回。例 如,给指定精度的变量eps 输入0.0005时,应当输出 Pi=30140578.。 /**found**/ t=1.0; /**found**/ return(s*2); 2. 程序修改(第47套) 给定程序中函数fun函数功能 是:计算n!。例如,给n输 入5,则输出120.000000。 /**found**/ if (n==0) /**found**/ result *=n--; 2. 程序修改(第48套) 给定程序中函数fun的功能 是:根据整形形参m=1,计算 如下公式的值。 m=1+1/2*2+1/3*3+1/4*4+..+1 /m*m例如,若m中的值为 5,则应输出1.463611 /**found**/ for (i =2 ; i<= m; i++) /**found**/ y+=1. 0/ ( i* i) ; 给定程序中函数fun的功能 是:计算并输出下列级数的 前n项的和Sn,直到Sn+1大 于q为止,q的值通过形参传 入。 Sn=2/1+3/2+4/3+…+(N+1)/N /**found**/ s=s +(double)(n+1)/n; /**found**/ return t; 2. 程序修改(第52套) 下列给定程序中函数fun的 功能是:按以下递推公式求 函数的值。 Fun=10 (n=1),fun(n-1)+2 (n>1) 例如,当给n输出5时,函 数值为18;当给n输入3 时,函数值为14. /**found**/ int fun(int n) /**found**/ if(n==1) 2. 程序修改(第58套) 给定程序中函数fun的功能 是:求K!,所求阶乘 的值作为函数值返回。例 如,若K=10,则应输出 3628800。 /**found**/ if(k>1) /**found**/ else if(k= =0) 2. 程序修改(第63套) 给定程序中函数fun的功能 是:计算整数n的阶乘。 /**found**/ result *=n--; /**found**/ return result; 2. 程序修改(第65套) 给定程序中,函数fun的功能 是:根据形参m,计算下列 公式的值: t=1+1/2+1/3+1/4+… +1/m例如,若输入5,则应 输出2.28333 /**found**/ t+=1.0/i; /**found**/ return t; 2. 程序修改(第77套) 给定程序中函数fun的功能 是:根据整形形参m,计算如 下公式的值。 Y=1/(100*100)+1/(200*200) +1/(300*300)+L+1/(m*m) /**found**/ double fun(int m) /**found**/ for(i=100;i<=m;i+=100) 2. 程序修改(第78套) 给定程序中函数fun的功能 是:根据整型形参n计算如 下公式的值。A1=1, A2=1/(1+A1),A3=1/(1+A2),An= 1/(1+A(n-1))例如:若n=10, 则应输出:0.617977. /**found**/ float fun(int n) /**found**/ for(i=2;i<=n;i++) 2. 程序修改(第85套) 下列给定程序中,函数fun的 功能是:传入一个整数m, 计算如下公式的值。 t=1/2-1/3-…-1/m例如,若输 入5,则应输出-0.283333. /**found**/ 2

最新二级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); }

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列矩阵的各个元素

高考英语 短文改错题必看的4个答题技巧

2014年高考英语短文改错题必看的4个答题技巧 高考英语短文改错是一种综合技能,在做高考英语短文改错题时,也需要一定的答题技巧。小编为大家整理了2014年高考英语短文改错题必看的4个答题技巧,帮助同学们总结高考英语短文改错题的解题方法,供各位考生参考阅读。 一、短文改错的复习重点 同学们必须熟悉设错方式:多词、少词、错词。 1、多词现象大多出现在冠词、介词、助动词、连词、语义重复及行文逻辑等方面。 2、少词现象主要出现在冠词、介词、副词、助动词、不定式符号to、连词等。 3、错词现象主要在冠词、介词、名词单复数、动词时态、非谓语动词、主谓一致、代词、连词、词形。 考生平时应加强基本功训练,用一个“错题集”本把自己或同学在书面表达中出现的错误归纳一下,以便考前复习。 二、对全文的宏观把握 学生应把改错内容当作一篇小短文来理解,这样能对短文有个宏观把握,对上下文有全面的了解,在理解篇章的基础上逐句审读,分析判断,上下兼顾,把明显的、拿的准的题先做完,这样可以缩小包围圈,也有助于对全文的进一步理解。 三、从语法角度审查 1. 查看时态是否一致 My favorite sport is football. I was a member of our footbal l team. (NMET’98)全文都是用的一般现在时,此句中的was显然与上下文语境不符,应改为am. 2. 查看主谓是否一致 Anyone may borrow books, and it cost nothing to b orrow them. (NM ET’94) cost 应改为costs,因其主语是it(为形式主语),且上下文均为一般现在时。 3. 查指代是否一致

全国计算机等级考试二级教程C语言程序设计课后习题答案

全国计算机等级考试二级教程C语言程序设计课后习题答案

《全国计算机等级考试二级教程--C语言程序设计》课后习题答案 第一章 1.1 EXE 1.2 C OBJ EXE 1.3 顺序选择循环 第二章 一. 选择题 2.1 B 2.2 D 2.3 B 2.4 A 2.5 C 2.6 A 2.7 B 2.8 B 2.9 D 2.10 C 2.11 B 2.12 B 2.13 A 二. 填空题 2.14 11 12 2.15 4.2 4.2 2.16 { } 定义执行语句 2.17 关键字用户标识符 2.18 int float double 2.19 float a1=1; float a2=1; 2.20 存储单元 2.21 3.5 2.22 (a*b)/c a*b/c a/c*b 2.23 把常量10赋给变量s 2.24 位1或0 2.25 8 127 0111111 -128 10000000 2.26 32767 -32768 0000 2.27 10 8 16 三. 上机改错题 2.28 #include "stdio.h"; 删除行尾的";" main(); / * main function * / 删除")"后的";",注释中的*要紧靠“/”,即应为“/*”和“*/” 函数开始处遗失了一个“{” float r,s ; /*/*r is radius*/,/* s is area of circuilar*/*/ 注释符号不可嵌套使用 r = 5.0 ; s = 3.14159 * r * r ; printf("%f\n",s) 行尾遗失了“;” 函数结束处遗失了一个“}” 2.29 #include "stdio.h" main /* main function */ main后遗失了“()” { float a,b,c,v; /*a,b,c are sides, v is volume of cube */ a=2.0; b=3.0; c=4.0 行尾遗失了“;”

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

【英语】短文改错答题技巧 考点汇总

高中英语短文改错答题技巧+考点汇总高考英语中的短文改错题是大家所熟知的题型,近年来,高考英语全国卷的试卷结构和题型虽几经变革,但短文改错题始终存在。 不可否认,短文改错题具有一定的难度,大部分学生在短文改错这一块的得分率很低。鉴于此,对近十年高考全国卷的短文改错题进行了仔细的分析和研究,总结出一些对学生来说易于理解和记忆的条款,最大限度提升学生解答短文改错题的能力。 1、选材特点 短文改错题的选材多以记叙文为主,体裁和语言都贴近高中学生的实际生活。所选短文长度一般为100词左右。篇章结构的难易程度符合中学生的认知水平,无生僻的语言障碍和怪、难、偏的句子结构。2、设错特点 通过对近十年高考短文改错题的分析和研读,发现短文改错题的考点很有规律,并且呈现极强的稳定性。 常规考点主要集中在动词、名词、形容词和副词、冠词、连词、介词、代词及各类从句的引导词等方面。 另外,短文改错的错误类型有错词、缺词和多词三种。在短文的10处错误中,三种错误类型的分配比例一般遵循8/1/1原则,即8个错词修改,1个缺词添加、1个多词删除。 其中,错词修改常涉及动词、名词、形容词和副词等方面的错误。缺词和多词则多为冠词或介词的冗余或缺失等。

虽说短文改错题所设置的考点灵活多变,知识层次多,词类覆盖广。但其实它所考查的语言知识并不复杂,只要了解命题规律和常规考点的命题要点,掌握一定的解题策略,并有针对性地加以练习和总结,也能轻松应对此题。 现结合近几年高考全国卷短文改错真题对各常规考点中出题者常设改错点的地方进行详细的分析和解读,并提出相应的解题策略。 1动词 动词是短文改错中涉及考点最多的词类,主要从以下几个方面进行考查: (1)时态、语态的一致。如: ①I entered my second year of high school and become a new member of the school music club.(2017全国卷Ⅲ) (解析:become改为became.结合前半句中的动词entered可知,后半句的时态应和前文保持一致。) ②About one month after this photo was took,…(2017全国卷Ⅲ)(解析:took改为taken。根据句意可知此题考查的是一般过去式被动语态。) (2)非谓语动词、情态动词之后用动词原形、介词之后用动名词形式。如: ①We can chose between staying at home and take a trip.(2016全国卷Ⅱ)(解析:chose改为choose.情态动词之后接动词原形;take改为taking.考查非谓语动词,and连接两个并列成分,且介词之后的动词应用动名词形式。) ②She used to holding me on her knees and sing old songs.(2013全国卷

计算机二级c语言题库及答案

2016年计算机二级c语言题库及答案 一、选择题(每小题1分,共40小题,共40分) 1.设循环队列的存储空间为Q(1:35),初始状态为front=rear=35。现经过一系列入队与退队运算后,front=15,rear=15,则循环队列中的元素个数为( )。 或35 2.下列关于栈的叙述中,正确的是( )。 A.栈底元素一定是最后入栈的元素 B.栈操作遵循先进后出的原则 C.栈顶元素一定是最先入栈的元素 D.以上三种说法都不对 3.下列链表中,其逻辑结构属于非线性结构的是( )0、 A.双向链表 B.带链的栈 C.二叉链表 D.循环链表 4.在关系数据库中,用来表示实体间联系的是( )。 A.网状结构 B.树状结构 C.属性 D.二维表 5.公司中有多个部门和多名职员,每个职员只能属于一个部门,一个部门可以有多名职员。则实体部门和职员间的联系是( )。 :m联系 :n联系 :1联系 :l联系

6.右两个关系R和S如下: 则由关系R得到关系S的操作是( )。 A.自然连接 B.并 C.选择 D.投影 7.数据字典(DD)所定义的对象都包含于( )。 A.软件结构图 B.方框图 C.数据流图(DFD图) D.程序流程图 8.软件需求规格说明书的作用不包括( )。 A.软件设计的依据 B.软件可行性研究的依据 C.软件验收的依据 D.用户与开发人员对软件要做什么的共同理解 9.下面属于黑盒测试方法的是( )。 A.边界值分析 B.路径覆盖 C.语句覆盖 D.逻辑覆盖 10.下面不属于软件设计阶段任务的是( )。 A.制订软件确认测试计划 B.数据库设计 C.软件总体设计 D.算法设计 11.以下叙述中正确的是( )。 A.在C语言程序中,main函数必须放在其他函数的最前面 B.每个后缀为C的C语言源程序都可以单独进行编译 C.在C语言程序中,只有main函数才可单独进行编译

计算机基础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() {

计算机等级考试二级真题及答案

2015计算机二级考试试题及答案 1、设有表示公司和员工及雇佣的三张表,员工可在多家公司兼职,其中公司C(公司号,公司名,地址,注册资本,法人代表,员工数),员工S(员工号,姓名,性别,年龄,学历),雇佣E(公司号,员工号,工资,工作起始时间)。其中表C的键为公司号,表S的键为员工号,则表E的键(码)为______。 A、公司号,员工号 B、员工号,工资 C、员工号 D、公司号,员工号,工资 【评析】 本题考查知识点是关键字。 能唯一标识实体的属性集称为码(关键字)。码也称为关键字,是表中若干属性的属性组,其值唯一标识表中的一个元组。 本题答案:A。 3、下列叙述中正确的是______。 A、每一个结点有两个指针域的链表一定是非线性结构 B、所有结点的指针域都为非空的链表一定是非线性结构 C、循环链表是循环队列的链式存储结构 D、线性结构的存储结点也可以有多个指针 【评析】 本题考查知识点是线性表的线性结构与非线性结构。

线性表的链式存储结构称为线性链表。在某些应用中,对线性链表中的每个结点设置两个指针,一个称为左指针,用以指向其前件结点;另一个称为右指针,用以指向其后件结点。 本题答案:D。 4、在线性表的顺序存储结构中,其存储空间连续,各个元素所占的字节数______。 A、相同,元素的存储顺序与逻辑顺序一致 B、相同,但其元素的存储顺序可以与逻辑顺序不一致 C、不同,但元素的存储顺序与逻辑顺序一致 D、不同,且其元素的存储顺序可以与逻辑顺序不一致 【评析】 本题考查知识点是线性表的顺序存储结构。 线性表的顺序存储结构具有两个基本特点:1.线性表中所有元素所占的存储空间是连续的;2.线性表中各元素在存储空间中是按逻辑顺序依次存放的。 本题答案:A。 5、设循环队列为Q(1: m),其初始状态为front=rear=m。经过一系列入队与退队运算后,front=30,rear=10。现要在该循环队列中作顺序查找,最坏情况下需要比较的次数为______。 A、19 B、20 C、m-19 D、m-20 【评析】 本题考查知识点是循环队列的运算。

高中英语短文改错答题技巧总结

高中英语短文改错答题 技巧总结 Company number:【WTUT-WT88Y-W8BBGB-BWYTT-19998】

高中英语短文改错技巧总结 短文改错口诀: 动词形,名词数; 注意形和副; 非谓动词细辨别; 习惯用法要记住; 句子成分多分析; 逻辑错误须关注。 一. 动词形 主要包括两类错误:动词的时态和语态错误,以及主、谓不一致的错误。例如: My favorite sport are football. (is) Now my picture and prize is hanging in the library. (are) 上述两例分别属于时态错误和主、谓不一致错误。找出此类错误的关键是树立牢固的时态概念,注意短文内容发生或存在的时间,保持时间概念的一致性。 二. 名词数 指名词单、复数形式的用法错误。常表现为将名词复数写成单数。例如: …so that I’ll get good marks in all my subject. (subjects) 三. 区分形和副 及区分形容词和副词在句子中的作用和具体用法。这也是高考短文改错的常考点。例如: I’m sure we’ll have a wonderfully time together. (wonderful) Unfortunate, there are too many people in my family. (Unfortunately)

需要注意的是,形容词多用来做定、表、补语等,而副词只能在句子中作状语,修饰动词、形容词、副词或整个句子。第一例中的wonderful作定语修饰time,第二句的Unfortunately作状语修饰整个句子。 四. 非谓动词细辨别 这是考查最多的错误形式之一。主要有分词和动名词类错误,也包括不定式类错误。例如: …in my spare time, but now I am interesting in football. (interested) Play football not only makes us grow up tall and strong but also … (playing) My parents love me… and will do all they can ∧make sure… (to) 上述二、三例分别是动名词作主语,和不定式作目的状语。一般的,现在分词有主动态和进行时的含义,而过去分词具有被动态和完成时的含义,不定式有将来时态的含义。 五. 习惯用法要记住 主要考查习惯搭配方面的基础知识。这也是历年高考的常考点,其错误表现形式主要有三种:多词、少词和搭配错误。例如: It was very kind for them to meet me at the railway station and… (of) We must keep in mind that we play for the team instead ∧ ourselves. (of) 六. 句子成分多分析 不同的句子成分要用不同的词类;不同的语景要选择不同的词语。这些都有待我们对句子结构和句子成分作细致的分析,才能找出用词不当的错误。例如: They ∧eager to know everything about China and… (were) I live in Beijing, where is the capital of China. (which) 第一例漏掉了谓语动词were,这是受害于习惯的影响而导致的错误;第二例则是词类与它在句子中的成分不相符,where是副词,不能作主语。 七. 逻辑错误须关注 与句子的上、下文不一致,甚至相矛盾,属于逻辑性错误。如称谓上的张冠李戴,人名、地名、时间、方位等方面的错误,常是这类错误的考查对象。例如:

相关文档
相关文档 最新文档