<address id="ousso"></address>
<form id="ousso"><track id="ousso"><big id="ousso"></big></track></form>
  1. C語言

    計算機二級C語言強化習題題及答案

    時間:2025-05-17 03:28:48 C語言 我要投稿
    • 相關推薦

    計算機二級C語言強化習題題及答案2017

      練習做多了自然會形成自己的做題方法和速度,為此,今天百分網小編為大家整理了以下2017計算機二級C語言強化習題題及答案,希望對你的學習有幫助!

      強化習題題一

      1: 第1題第請編寫函數fun,該函數的功能使:統計各年齡段的人數。N個年齡**調用隨機函數獲得,并放在主函數的age數組中;要求函數把0至9歲年齡段的人數放在d[0]中,把10至19歲年齡段的人數放在d[1]中,把20至29歲的人數放在d[2]中,其余以此類推,把100歲(含100以上年齡的人數都放在d[10]中。結果在主函數中輸出。

      答案:

      void fun(int *a,int *b)

      {int i,j;

      for(j=0;i

      b[j]=0;

      for(i=0;i

      if(a>=0&a<=9)

      b[0]+=1;

      else if(a>=10&a<=19)

      b[1]+=1;

      else if(a>=20&a<=29)

      b[2]+=1;

      else if(a>=30&a<=39)

      b[3]+=1;

      else if(a>=40&a<=49)

      b[4]+=1;

      else if(a>=50&a<=59)

      b[5]+=1;

      else if(a>=60&a<=69)

      b[6]+=1;

      else if(a>=70&a<=79)

      b[7]+=1;

      else if(a>=80&a<=89)

      b[8]+=1;

      else if(a>=90&a<=99)

      b[9]+=1;

      else

      b[10]+=1;}

      2: 第2題請編寫函數fun,該函數的功能是:統一一含字符串中單詞的個數,作為函數值返回。一行字符串在主函數中輸入,規定所有單詞由小寫字母組成,單詞之間由若干個空格格開,一行的開始沒有空格。

      答案:

      int fun (char *s)

      {int i,n=0;

      for(i=0;i

      {if(s=‘a’&s<=‘z’&s[i+1]==‘’

      ‖s[i+1]==‘\0’)

      n++;}

      return n;}

      3: 第3題請編寫一個函數fun,它的功能是:計算并輸出給定整數n的所有因子(不包括1與自身)之和。規定n的值不大于1000。

      答案:

      int fun(int n)

      {int s=0,i;

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

      if(n%i==0)

      s+=i;

      return s;}

      4: 第4題請編寫函數fun,其功能是:將s所指字符串中ascii值為奇數的字符刪除,串中剩余字符形成一個新串放在t所指的數組中。

      答案:

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

      {int i,j=0,n;

      n=strlen(s);

      for(i=0;i

      if(s%2==0)

      {t[j]=s;

      j++;}

      t[j]=‘\0’;}

      5: 第5題請編寫函數fun,其功能是:將兩位數的正整數a、b合并成一個整數放在c中。合并的方式是:將a數的十位和個位數依次放在c數的百位和個位上,b數的十位和個位數依次放在c數的十位和千位上。

      答案:

      void fun(int a,int b,long *c)

      {*c=(b)*1000+(a/10)*100+(b/10)*10+a;}

      6: 第6題假定輸入的字符串中只包含字母和*號。請編寫函數fun,它的功能是:刪除字符串中所有*號。在編寫函數時,不得使用c語言提供的字符串函數。

      答案:

      void fun(char *a)

      {int i=0;char *p=a;

      while(*p)

      {if(*p!=‘*’)

      {a=*p;

      i++;}

      p++;}

      a=‘\0’;}

      7: 第7題學生的記錄時由學號和成績組成,n名學生的數據已在主函數中放入結構體數組s中,請編寫函數fun,它的功能時:函數返回指定學號的學生數據,指定的學號在主函數中輸入。若沒找到指定學號,在結構體變量中給學號置空串,給成績置-1,作為函數值返回(用于字符串比較的函數時strcmp)。

      答案:

      strec fun(strec*,char *b)

      {int i;

      strec h;

      for(i=0;i

      if(strcmp(a.num,b)==0)

      {h=a;

      break; }

      else

      {h.num=="";

      h.s=-1;}

      return h;}

      8: 第8題請編寫函數fun,其功能時:計算并輸出下列多項式的值:

      sn=1+1/1!+1/2!+1/3!+1/4!+…+1/n!

      答案:

      sn=1+1/1!+1/2!+1/3!+1/4!+...+1/n!

      double fun(int n)

      {double t,sn=1.0;

      int i,j;

      for(i=1;i

      {t=1.0;

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

      t*j;

      sn+=1.0/t;}

      return sn;}

      9: 第9題請編寫一個函數fun,它的功能時:求fibonacci數列中大于t的最小的一個數,結果由函數返回。其中fibonacci數列f(n)的定義為:

      f(0)=0,f(1)=1,f(n)=f(n-1)+f(n-2)

      答案:

      f(0)=0,f(1)=1,f(n)=f(n-1)+f(n-2)

      int fun(int t)

      {int a=1,b=1,c=0,i;

      for(i=4;i<=t;i++)

      {if(c

      {c=a+b;

      a=b;

      b=c;}

      else

      break;}

      return c;}

      10: 第10題編寫函數fun,它的功能時:計算并輸出下列級數和:

      s=1/1*2+1/2*3+…+1/n(n+1)

      答案:

      double fun (int n)

      {double s=0.0;

      int i;

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

      s=s+1.0/(i*(i+1));

      return s;}

      強化習題題二

      1: 第1題請編寫函數fun,其功能是:將所有大于1小于整數m的非素數存入xx所指的數組中,非素數的個數**k傳回。

      答案:

      void fun(int m,int *k,int xx[])

      {int i,j;

      int t=0;

      for(i=2;i

      {j=2;

      while(j

      {if(i%j==0)

      {xx[t]=i;

      t++;

      break;}

      j++;}

      *k=t;}}

      2: 第2題編寫一個函數fun,它的功能是:實現兩個字符串的連接(不使用庫函數strcat),即把p2所指的字符串連接到p1所指的字符串后。

      答案:

      void fun(char p1[],char p2[])

      {int i=0,n=0;

      char *p=p1,*q=p2;

      while (*p)

      {p++;

      n++;}

      i=n;

      while(*p)

      {p1=*q;

      q++;

      i++;}

      p1=‘\0’;}

      3: 第3題請編寫函數fun,該函數的功能是:實現b=a+a,即把矩陣a加上a的轉置,存放在矩陣b中。計算結果在main函數中輸出。

      答案:

      void fun(int a[3][3],int b[3][3])

      {int i,j,at[3][3];

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

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

      at[j]=a[j];

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

      for(j=0;j<3;j++)

      b[j]=a[j]+at[j];}

      4: 第4題學生的記錄由學號和成績組稱個,n名學生的數據已在主函數中放入結構體數組s中,請編寫函數fun,它的功能是:把低于平均分的學生數據放在b所指的數組中,低于平均分的學生人數**形參n傳回,平均分**函數值返回。

      答案:

      double fun(strec *a, strec *b,int *n)

      {double aver=0.0;

      int i,j=0;

      *n=0;

      for (i=0;i

      aver+=a.s;

      aver/=n;

      for(i=0;i

      if(a.s

      {b[j]=a;

      (*n)++;

      j++; }

      return aver;}

      5: 第5題請編寫函數fun,該函數的功能是:將m行n列的二維數組中的數據,按行的順序依次放到一維數組中,一維數組中數據的個數存放在形參n所指的儲存單元中。

      答案:

      void fun(int(*s)[10],int *b,int *n,int mm,int nn)

      {int i,j;

      for(i=0;i

      for(j=0;j

      {b[*n]=*(*(s+i)+j);

      *n=*n+1;}}

      6: 第6題假定輸入的字符串中只包含字母和*號。請編寫函數fun,它的功能是:除了尾部的*號之外,將字母串中其他*號全部刪除。形參p已指向字符串中最后的一個字母。不使用c的字符串函數。

      答案:

      void fun(char*a,char *p)

      {int i=0;

      char *p=a;

      while(q<=p)

      {if(*q!=‘*’)

      {a=*q;

      i++;}

      q++;}

      while(*q)

      {a=*q;

      i++;

      q++;}

      a=‘\0’;}

      7: 第7題學生的記錄是由學號和成績組成,n名學生的數據已在主函數中放入結構體數組s中,請編寫函數fun,它的功能是:把指定分數范圍內的學生數據放在b所指的數組中,分數范圍內的學生人數由函數值返回。

      答案:

      int fun(strec*a,strec *b,int l,int h)

      {int i,j=0;

      for(i=0;i

      if(a.s>=l&a.s<=h)

      {b[j]=a;

      j++;}

      return j;}

      8: 第8題編寫函數藏服那,它的功能是:求n以內(不包括n)同時能被3與7整除的所有自然數之和的平方根s,并作為函數值返回。

      答案:

      double fun(int n)

      {double s=0.0;

      int i;

      for(i=1;i

      if(i%3==0&i%7==0)

      s=s+i;

      s=sqrt(s);

      return s;}

      9: 第9題請別寫函數fun,該函數的功能是:將放在字符串數組中的m個字符串(每串的長度不超過n),按順序合并組成一個新的字符串。

      答案:

      void fun(char a[m][n],char *b)

      {int i,j,k=0;

      for(i=0;i

      {for(j=0;j

      if(*(*(a+i)+j))

      {b[k]=*(*(a+i)+j)

      k++;}

      else

      break;

      b[k]=‘\0’;}}

      10: 第10題請編寫函數fun,該函數的功能是:刪去一維數組中所有相同的數,使之只剩一個。數組中的數已按由小到大的順序排列,函數返回刪除后數組中數據的個數。

      答案:

      int fun(int a[],int n)

      {int i,t,j=0,*p=a;

      t=p[0];

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

      if(t==p)

      ;

      else

      {a[j]=t;

      t=p;

      j++;}

      if(i>=n)

      a[j]=t;

      return j;}

    【計算機二級C語言強化習題題及答案】相關文章:

    2017計算機二級C語言強化習題及答案05-02

    計算機二級考試C語言強化題及答案08-14

    2017計算機二級C語言考試強化習題及答案03-12

    計算機二級考試C語言強化習題和答案07-21

    計算機二級考試《C語言》強化練習題及答案05-28

    計算機二級考試C語言強化訓練題及答案06-14

    計算機二級C語言上機強化訓練題及答案06-07

    2017計算機二級C++強化習題及答案03-15

    2017年3月計算機二級C語言強化習題及答案12-14

    <address id="ousso"></address>
    <form id="ousso"><track id="ousso"><big id="ousso"></big></track></form>
    1. 日日做夜狠狠爱欧美黑人