试题

全国计算机二级考试《C语言》冲刺模拟题七

时间:2025-04-23 02:07:30 试题 我要投稿
  • 相关推荐

2015年全国计算机二级考试《C语言》冲刺模拟题(七)

  1: 请编写函数fun,其功能是:将s所指字符串中除了下标为偶数、同时ascii值也为偶数的字符外,其余的全都删除;串中剩余字符所形成的一个新串放在t所指的一个数组中。

2015年全国计算机二级考试《C语言》冲刺模拟题(七)

  答案:

  void fun(char *s,char t[])

  {

  int I,j=0,n;

  n=strlen(s);

  for(i=0;I,n;i++)

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

  {

  t[j]=s[i];

  j++;

  }

  t[j]=‘\0’;

  }

  2: 请编写函数fun,其功能是:将s所指字符串中除了下标为奇数、同时ascii值也为奇数的字符之外,其余的所有字符都删除,串中剩余字符所形成的一个新串放在t所指的一个数组中。

  答案:

  void fun(char *s,char t[])

  {

  int I,j=0,n;

  n=strlen(s);

  for(i=0;I,n;i++)

  if(i%2!=0&&s[i]%2!=0)

  {

  t[j]=s[i];

  j++;

  }

  t[j]=‘\0’;

  }

  3: 假定输入的字符串中只包含字母和*号。请编写函数fun,它的功能是:使字符串中尾部的*号不得多于n个;若多于n个,则删除多于的*号;若少于或等于n个,则什么也不做,字符串中间和前面的*号不删除。

  答案:

  void fun(char *a,int n)

  {

  int i=0;k=0;

  char *p, *t;

  p=t=a;

  while (*t)

  t++;

  t--;

  while(*t==‘*’)

  {

  k++;

  t--;

  }

  t++;

  if(k>n)

  {

  while (*p&&p

  {

  a[i]=*p;

  i++;

  p++;

  }

  a[i]=‘\0’;

  }

  }

  4: 学生的记录由学号和成绩组成,n名学生的数据已在主函数中放入结构体数组s中,请编写函数fun,它的功能使:把分数最高的学生数据放在h所指的数组中,注意:分数最高的学生可能不止一个,函数返回分数最高的学生的人数。

  答案:

  int fun (STREC *a, STREC *b)

  {

  int I,j=0,n=0, max;

  max=a[0].s;

  for(i=0;i

  if(a[i].s>max)

  max=a[i].s;

  for(i=0;i

  if(a[i].s==max)

  {

  *(b+j)=a[i];

  j++;

  n++;

  }

  return n;

  }

  5: 请编写一个函数,用来删除字符串中的所有空格。

  答案:

  void fun(char *str)

  {

  int i=0;

  char *p=str;

  while (*p)

  {

  if(*p!=‘’)

  {

  str[i]=*p;

  i++;

  }

  p++;

  }

  str[i]=‘\0’;

  }


  6: 假定输入的字符串中只包含字母和*号。请编写函数fun,它的功能是:将字符串中的前导*号全部移到字符串的尾部。

  答案:

  void fun(char *a)

  {

  int i=0,n=0;

  char *p;

  p=a;

  while (*p==‘*’)

  {

  n++;

  p++;

  }

  while (*p)

  {

  a[i]=*p;

  i++;

  p++;

  }

  while(n!=0)

  {

  a[i]=‘*’;

  i++;

  n--;

  }

  a[i]=‘\0’;

  }

  7: 某学生的记录由学号、8门课程成绩和平均分组成,学号和8门课程的成绩已在主函数中给出。请编写函数fun,它的功能是:求出该学生的平均分放在记录的ave成员中。请自己定义正确的形参。

  答案:

  void fun(STREC *p)

  {

  double av=0.0;

  int i:

  for(i=0;i

  av+=p->s[i];

  av/=N;

  p->ave=av;

  }

  8: 请编写函数fun,它的功能是:求出ss所指字符串中指定字符的个数,并返回此值。

  答案:

  int fun(char *ss, char c)

  {

  int n=0;

  while (*ss)

  {

  if(*ss==c)

  n++;

  ss++;

  }

  return n;

  }

  9: 请编写函数fun,该函数的功能是:移动一维数组中的内容,若数组中由n个整数,要求把下标从0到p(p小于等于n-1)的数组元素平移到数组的最后。

  答案:

  void fun(int *w, int p, int n)

  {

  int b[N], i, j=0;

  for(i=0;i<=p;i++)

  {

  b[i]=w[i];

  j++;

  }

  for(i=0;i<=p;i++)

  {

  w[j]=b[i];

  j++;

  }

  }

  10: 请编写函数fun,该函数的功能是移动字符串中内容,移动的规则如下:把第1到第m个字符,平移到字符串的最后,把第m+1到最后的字符移到字符串的前部。

  答案:

  void fun(char *w,int m)

  {

  char b[N];

  int I,j=0;

  for(i=0;i

  {

  b[j]=w[i];

  j++;

  }

  for (i=0;i

  w[i]=w[i+m];

  for(j=0;j

  {

  w[i]=b[j];

  i++;

  }

  w[i]=‘\0’;

  }

【全国计算机二级考试《C语言》冲刺模拟题七】相关文章:

2015年全国计算机二级考试《C语言》冲刺模拟题(四)02-22

2015年全国计算机二级考试《C语言》冲刺模拟题(六)04-09

2015年全国计算机二级考试《C语言》冲刺模拟题(一)07-18

2015年全国计算机二级考试《C语言》冲刺模拟题(二)01-21

2015年全国计算机二级考试《C语言》冲刺模拟题(三)08-01

2015年全国计算机二级考试《C语言》冲刺模拟题(八)03-26

2015年全国计算机二级考试《C语言》冲刺模拟题(五)06-21

全国计算机二级C语言考试冲刺试题201704-30

2015年全国计算机二级考试《C语言》冲刺模拟题(二)答案12-12