计算机语言试题及答案.docx

上传人:b****7 文档编号:16660404 上传时间:2023-07-16 格式:DOCX 页数:179 大小:73.50KB
下载 相关 举报
计算机语言试题及答案.docx_第1页
第1页 / 共179页
计算机语言试题及答案.docx_第2页
第2页 / 共179页
计算机语言试题及答案.docx_第3页
第3页 / 共179页
计算机语言试题及答案.docx_第4页
第4页 / 共179页
计算机语言试题及答案.docx_第5页
第5页 / 共179页
计算机语言试题及答案.docx_第6页
第6页 / 共179页
计算机语言试题及答案.docx_第7页
第7页 / 共179页
计算机语言试题及答案.docx_第8页
第8页 / 共179页
计算机语言试题及答案.docx_第9页
第9页 / 共179页
计算机语言试题及答案.docx_第10页
第10页 / 共179页
计算机语言试题及答案.docx_第11页
第11页 / 共179页
计算机语言试题及答案.docx_第12页
第12页 / 共179页
计算机语言试题及答案.docx_第13页
第13页 / 共179页
计算机语言试题及答案.docx_第14页
第14页 / 共179页
计算机语言试题及答案.docx_第15页
第15页 / 共179页
计算机语言试题及答案.docx_第16页
第16页 / 共179页
计算机语言试题及答案.docx_第17页
第17页 / 共179页
计算机语言试题及答案.docx_第18页
第18页 / 共179页
计算机语言试题及答案.docx_第19页
第19页 / 共179页
计算机语言试题及答案.docx_第20页
第20页 / 共179页
亲,该文档总共179页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

计算机语言试题及答案.docx

《计算机语言试题及答案.docx》由会员分享,可在线阅读,更多相关《计算机语言试题及答案.docx(179页珍藏版)》请在冰点文库上搜索。

计算机语言试题及答案.docx

计算机语言试题及答案

程序修改题

  1、给定程序MODI1.C中,fun函数的功能是:

删除b所指数组中小于10的数据。

主函数中输出删除后数组中余下的数据。

  请改正函数fun中指定部位的错误,使它能得出正确的结果。

  注意:

不要改动main函数,不得增行或删行,也不得更改程序的结构!

  #include  #include  #defineN20

  intfun(int*b)

  {

  /**********found**********/

  intt[N],i,num

  for(i=0;i  if(b[i]>=10)

  /**********found**********/

  t[++num]=b[i];

  /**********found**********/

  for(i=0;i  b[i]=t[i];

  return(num);

  }

  main()

  {inta[N],i,num;

  printf("a数组中的数据:

\n");

  for(i=0;i  printf("\n");

  num=fun(a);

  for(i=0;i  printf("\n");

  }

2、给定程序MODI1.C中函数fun的功能是:

将十进制正整数m转换成k(2≤k≤9)进制数,并按高位到低位顺序输出。

  例如,若输入8和2,则应输出1000(即十进制数8转换成二进制表示是1000)。

  请改正fun函数中的错误,使它能得出正确的结果。

  注意:

不要改动main函数。

不得增行或删行,也不得更改程序的结构!

  #include  #include  voidfun(intm,intk)

  {

  intaa[20],i;

  for(i=0;m;i++)

  {

  /**********found**********/

  aa[i]=m/k;

  m/=k;

  }

  for(;i;i--)

  /**********found**********/

  printf("%d",aa[i]);

  }

  main()

  {

  intb,n;

  printf("\nPleaseenteranumberandabase:

\n");

  scanf("%d%d",&n,&b);

  fun(n,b);

  printf("\n");

  }

3、给定程序MODI1.C中函数fun的功能是:

用冒泡法对6个字符串按由小到大的顺序进行排序。

  请改正程序中的错误,使它能得出正确的结果。

  注意:

不要改动main函数,不得增行或删行,也不得更改程序的结构!

  #include  #include  #defineMAXLINE20

  fun(char*pstr[6])

  {inti,j;

  char*p;

  for(i=0;i<5;i++){

  /**************found**************/

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

  {

  if(strcmp(*(pstr+i),*(pstr+j))>0)

  {

  p=*(pstr+i);

  /**************found**************/

  *(pstr+i)=pstr+j;

  *(pstr+j)=p;

  }

  }

  }

  }

  main()

  {inti;

  char*pstr[6],str[6][MAXLINE];

  for(i=0;i<6;i++)pstr[i]=str[i];

  printf("\nEnter6string(1stringateachline):

\n");

  for(i=0;i<6;i++)scanf("%s",pstr[i]);

  fun(pstr);

  printf("Thestringsaftersorting:

\n");

  for(i=0;i<6;i++)printf("%s\n",pstr[i]);

  }

4、给定程序MODI1.C中函数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。

  请改正程序中的错误,使它能得出正确结果。

  注意:

不要改动main函数,不得增行或删行,也不得更改程序的结构。

  #include  #include  #include  /************found************/

  #defineFU(m,n)(m/n)

  floatfun(floata,floatb,floatc)

  {floatvalue;

  value=FU(a+b,a-b)+FU(c+b,c-b);

  /************found************/

  Return(Value);

  }

  main()

  {floatx,y,z,sum;

  printf("Inputxyz:

");

  scanf("%f%f%f",&x,&y,&z);

  printf("x=%f,y=%f,z=%f\n",x,y,z);

  if(x==y||y==z){printf("Dataerror!

\n");exit(0);}

  sum=fun(x,y,z);

  printf("Theresultis:

%5.2f\n",sum);

  }

 

 5、给定程序MODI1.C中函数fun的功能是:

用下面的公式求π的近似值,直到最后一项的绝对值小于指定的数(参数num)为止:

  π111

  ┄┄≈1-┄┄+┄┄-┄┄+...

  4357

  例如,程序运行后,输入0.0001,则程序输出3.1414。

  请改正程序中的错误,使它能输出正确的结果。

  注意:

不要改动main函数,不得增行或删行,也不得更改程序的结构!

  #include  #include  floatfun(floatnum)

  {ints;

  floatn,t,pi;

  t=1;pi=0;n=1;s=1;

  /**************found**************/

  while(t>=num)

  {

  pi=pi+t;

  n=n+2;

  s=-s;

  /**************found**************/

  t=s%n;

  }

  pi=pi*4;

  returnpi;

  }

  main()

  {floatn1,n2;

  printf("Enterafloatnumber:

");

  scanf("%f",&n1);

  n2=fun(n1);

  printf("%6.4f\n",n2);

  }

6、给定程序MODI1.C中函数fun的功能是:

求出数组中最大数和次最大数,并把最大数和a[0]中的数对调、次最大数和a[1]中的数对调。

  请改正程序中的错误,使它能得出正确的结果。

  注意:

不要改动main函数,不得增行或删行,也不得更改程序的结构!

  #include  #defineN20

  voidfun(int*a,intn)

  {inti,m,t,k;

  for(i=0;i<2;i++){

  /**********found**********/

  m=0;

  for(k=i+1;k  /**********found**********/

  if(a[k]>a[m])k=m;

  t=a[i];a[i]=a[m];a[m]=t;

  }

  }

  main()

  {intb[N]={11,5,12,0,3,6,9,7,10,8},n=10,i;

  for(i=0;i  fun(b,n);

  for(i=0;i  }

 

7、例如,若给m输入-100,给n输入90,则函数求得的一个根值为2.000。

  请改正程序中的错误,使它能得出正确结果。

  注意:

不要改动main函数,不得增行或删行,也不得更改程序的结构。

  #include  #include  doublefunx(doublex)

  {return(2*x*x*x-4*x*x+3*x-6);}

  doublefun(doublem,doublen)

  {

  /************found************/

  intr;

  r=(m+n)/2;

  /************found************/

  while(fabs(n-m)<0.001)

  {if(funx(r)*funx(n)<0)m=r;

  elsen=r;

  r=(m+n)/2;

  }

  returnr;

  }

  main()

  {doublem,n,root;

  printf("Entermn:

\n");scanf("%lf%lf",&m,&n);

  root=fun(m,n);

  printf("root=%6.3f\n",root);

  }

8、给定程序MODI1.C中函数fun的功能是:

根据整型形参m,计算如下公式的值。

  1111

  y=-------+---------+---------+……+-------

  100*100200*200300*300m*m

  例如,若m=2000,则应输出:

0.。

  请改正程序中的语法错误,使它能计算出正确的结果。

  注意:

不要改动main函数,不得增行或删行,也不得更改程序的结构!

  #include  /************found************/

  fun(intm)

  {doubley=0,d;

  inti;

  /************found************/

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

  {d=(double)i*(double)i;

  y+=1.0/d;

  }

  return(y);

  }

  main()

  {intn=2000;

  printf("\nTheresultis%lf\n",fun(n));

  }

9、给定程序MODI1.C中函数fun的功能是:

统计字符串中各元音字母(即:

A、E、I、O、U)的个数。

注意:

字母不分大、小写。

  例如:

若输入:

THIsisaboot,则输出应该是:

1、0、2、2、0。

  请改正程序中的错误,使它能得出正确的结果。

  注意:

不要改动main函数,不得增行或删行,也不得更改程序的结构!

  #include  voidfun(char*s,intnum[5])

  {intk,i=5;

  for(k=0;k

  /**********found**********/

  num[i]=0;

  for(;*s;s++)

  {i=-1;

  /**********found**********/

  switch(s)

  {case'a':

case'A':

{i=0;break;}

  case'e':

case'E':

{i=1;break;}

  case'i':

case'I':

{i=2;break;}

  case'o':

case'O':

{i=3;break;}

  case'u':

case'U':

{i=4;break;}

  }

  if(i>=0)

  num[i]++;

  }

  }

  main()

  {chars1[81];intnum1[5],i;

  printf("\nPleaseenterastring:

");gets(s1);

  fun(s1,num1);

  for(i=0;i<5;i++)printf("%d",num1[i]);printf("\n");

  }

10、给定程序MODI1.C的功能是:

读入一个英文文本行,将其中每个单词的第一个字母改成大写,然后输出此文本行(这里的“单词”是指由空格隔开的字符串)。

  例如,若输入:

Iamastudenttotaketheexamination.,

  则应输出:

IAmAStudentToTakeTheExamination.。

  请改正程序中的错误,使程序能得出正确的结果。

  注意:

不要改动main函数,不得增行或删行,也不得更改程序的结构!

  #include  #include  /************found************/

  include  /************found************/

  voidupfst(charp)

  {intk=0;

  for(;*p;p++)

  if(k)

  {if(*p=='')k=0;}

  elseif(*p!

='')

  {k=1;*p=toupper(*p);}

  }

  main()

  {charchrstr[81];

  printf("\nPleaseenteranEnglishtextline:

");gets(chrstr);

  printf("\n\nBeforechanging:

\n%s",chrstr);

  upfst(chrstr);

  printf("\nAfterchanging:

\n%s\n",chrstr);

  }

 

11、给定程序MODI1.C中函数fun的功能是:

求出两个非零正整数的最大公约数,并作为函数值返回。

  例如,若给num1和num2分别输入49和21,则输出的最大公约数为7;若给num1和num2分别输入27和81,则输出的最大公约数为27。

  请改正程序中的错误,使它能得出正确结果。

  注意:

不要改动main函数,不得增行或删行,也不得更改程序的结构。

  #include  intfun(inta,intb)

  {intr,t;

  if(a

  /************found************/

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

  }

  r=a%b;

  while(r!

=0)

  {a=b;b=r;r=a%b;}

  /************found************/

  return(a);

  }

  main()

  {intnum1,num2,a;

  printf("Inputnum1num2:

");scanf("%d%d",&num1,&num2);

  printf("num1=%dnum2=%d\n\n",num1,num2);

  a=fun(num1,num2);

  printf("Themaximuncommondivisoris%d\n\n",a);

  }

12、给定程序MODI1.C中函数fun的功能是:

将tt所指字符串中的小写字母都改为对应的大写字母,其它字符不变。

  例如,若输入"Ab,cD",则输出"AB,CD"。

  请改正程序中的错误,使它能得出正确的结果。

  注意:

不要改动main函数,不得增行或删行,也不得更改程序的结构!

  #include  #include  char*fun(chartt[])

  {

  inti;

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

  /**********found***********/

  if(('a'<=tt[i])||(tt[i]<='z'))

  /**********found***********/

  tt[i]+=32;

  return(tt);

  }

  main()

  {

  chartt[81];

  printf("\nPleaseenterastring:

");

  gets(tt);

  printf("\nTheresultstringis:

\n%s",fun(tt));

  }

13、给定程序MODI1.C的功能是:

读入一个整数k(2≤k≤10000),打印它的所有质因子(即所有为素数的因子)。

  例如,若输入整数:

2310,则应输出:

2、3、5、7、11。

  请改正程序中的语法错误,使程序能得出正确的结果。

  注意:

不要改动main函数,不得增行或删行,也不得更改程序的结构!

  #include  /************found************/

  IsPrime(intn);

  {inti,m;

  m=1;

  for(i=2;i

  /************found************/

  if!

(n%i)

  {m=0;break;}

  return(m);

  }

  main()

  {intj,k;

  printf("\nPleaseenteranintegernumberbetween2and10000:

");scanf("%d",&k);

  printf("\n\nTheprimefactor(s)of%dis(are):

",k);

  for(j=2;j<=k;j++)

  if((!

(k%j))&&(IsPrime(j)))printf("\nM",j);

  printf("\n");

  }

14、给定程序MODI1.C中函数fun的功能是:

把主函数中输入的3个数,最大的放在a中,最小的放在c中,中间的放在b中。

  例如,输入的数为:

551234,

  输出结果应当是:

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

  请改正程序中的错误,使它能得出正确结果。

  注意:

不要改动main函数,不得增行或删行,也不得更改程序的结构。

  #include  voidfun(float*a,float*b,float*c)

  {

  /**********found**********/

  float*k;

  if(*a<*b)

  {k=*a;*a=*b;*b=k;}

  /**********found**********/

  if(*a>*c)

  {k=*c;*c=*a;*a=k;}

  if(*b<*c)

  {k=*b;*b=*c;*c=k;}

  }

  main()

  {floata,b,c;

  printf("Inputabc:

");scanf("%f%f%f",&a,&b,&c);

  printf("a=%4.1f,b=%4.1f,c=%4.1f\n\n",a,b,c);

  fun(&a,&b,&c);

  printf("a=%4.1f,b=%4.1f,c=%4.1f\n\n",a,b,c);

  }

15、给定程序MODI1.C中函数fun的功能是:

依次取出字符串中所有数字字符,形成新的字符串,并取代原字符串。

  请改正函数fun中指定部位的错误,使它能得出正确的结果。

  注意:

不要改动main函数,不得增行或删行,也不得更改程序的结构!

  #include  voidfun(char*s)

  {inti,j;

  for(i=0,j=0;s[i]!

='\0';i++)

  if(s[i]>='0'&&s[i]<='9')

  /**********found**********/

  s[j]=s[i];

  /**********found**********/

  s[j]="\0";

  }

  main()

  {charitem[80];

  printf("\nEnterastring:

");gets(item);

  printf("\n\nThestringis:

\"%s\"\n",item);

  fun(item);

  printf("\n\nThestringofchangingis:

\"%s\"\n",item);

  }

16、给定程序MODI1.C中函数fun的功能是:

交换主函数中两个变量的值。

例如:

若变量a中的值原为8,b中的值为3。

程序运行后a中的值为3,b中的值为8。

  请改正程序中的错误,使它能计算出正确的结果。

  注意:

不要改动main函数,不得增行或删行,也不得更改程序的结构!

  #include  /*********found**********/

  voidfun(intx,inty)

  {

  intt;

  /*

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 经管营销 > 经济市场

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2