<address id="ousso"></address>
<form id="ousso"><track id="ousso"><big id="ousso"></big></track></form>
  1. 全國計算機三級《數據庫技術》上機試題與答案

    時間:2025-09-22 16:19:10 試題 我要投稿

    全國計算機三級《數據庫技術》上機試題與答案

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

    全國計算機三級《數據庫技術》上機試題與答案

      答案:

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

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

      第72題 請編寫函數fun,其功能是:將s所指字符串中下標為偶數的字符刪除,串中剩余字符形成新串放在t所指數組中。

      答案:

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

      {int i,j=0,n=strlen(s);

      for(i=0;i

      if(i%2!=0)

      {t[j]=s;

      j++;}

      t[j]=‘\0’;}

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

      答案:

      void fun(char *a,char *h,char *p)

      {int i=0;

      char *q=a;

      while(q

      {a=*q;

      q++;

      i++;}

      while(q

      {if(*q!=‘’*)

      {a=*q;

      i++;}

      q++;}

      while(*q)

      {a=*q;

      i++;

      q++;}

      a=‘\0’;}

      第74題 學生的記錄由學號和成績組成n名學生的數據已在主函數中放入結構體數組s中,請編寫函數fun,它的功能時:把分數最低的學生數據放在h所指的數組中,注意:分數最低的學生可能不止一個,函數返回分數最低的學生的人數。

      答案:

      int fun(strec *a,strec *b)

      {int i,j=0,n=0,min;

      min=a[0].s;

      for(i=0;i

      if(a.s

      min=a.s;

      for(i=0;i

      if(a.s==min)

      {*(b+j)=a;

      j++;

      n++;}

      return n;}

      第75題 請編寫函數fun ,該函數的功能:將m行n列的二維數組中的數據,按列的順學依次放到一維數組中。

      答案:

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

      {int i,j;

      for(j=0;j

      for(i=0;i

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

      *n=*n+1;}}

      第76題 請編寫函數fun,其功能時:計算并輸出當x<0.97時下列多項式的值,直到|sn-s(n-1)|<0.000001為止。

      Sn=1+0.5x+0.5(0.5-1)/2!x(2)+…+0.5(0.5-1)(0.5-2)…..(0.5-n+1)/n!x(n)

      答案:

      .double fun(double x)

      {double s1=1.0,p=1.0,sum=0.0,s0,t=1.0;

      int n=1;

      do

      {s0=s1;

      sum+=s0;

      t*=n;

      p*=(0.5-n+1)*x;

      s1=p/t;

      n++;}while(fabs(s1-s0)>1e-6);

      return sum;}

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

      答案:

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

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

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

      答案:

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

      {int i,j=0,n=strlen(s);

      for(i=0;i

      if (s%2!=0)

      {t[j]=s;

      j++;}

      t[j]=‘\0’;}

      第79題 已知學生的記錄由學號和學習成績構成,n名學生的數據已存入a結構體數組中。請編寫函數fun,該函數的功能是:找出成績最低的學生記錄,通過形參返回主函數(規定只有一個最低分)。

      答案:

      void fun(stu a[],stu *s)

      {int i,min;

      min=a[0].s;

      for(i=0;i

      if(a.s

      {min=a.s;

      *s=a;}}

      第80題 程序定義了n×n的二維數組,并在主函數中自動賦值。請編寫函數fun,該函數的功能是:使數組左下半三角元素中的值乘以n。

      答案:

      fun(int a[][n],int n)

      {int i,j;

      for(i=0;i

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

      a[j]=a[j]*n;}

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

      答案:

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

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

      第82題 請編寫一個函數fun,它的功能使:計算n門課程的平均分,計算結果作為函數值返回。

      答案:

      float fun(float *a,int n)

      {float ave=0.0;

      int i;

      for(i=0;i

      ave+=a;

      ave/=n;

      return ave;}

      第83題 假定輸入的字符串中只包含字母和*號。請編寫函數fun,它的功能使:將字符串尾部的*號全部刪除,前面和中間的*號不刪除。

      答案:

      void fun(char *a)

      {int i=0;

      char *p,*q;

      p=q=a;

      while(*p)

      p++;

      p--;

      while(*p==‘*’)

      p--;

      while(q<=p)

      {a=*q;

      i++;

      q++;}

      a=‘\0’;}

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

      答案:

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

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

      第85題 n名學生的成績已在主函數中放入一個帶頭節點的鏈表結構中,h指向鏈表的頭節點。請編寫函數fun,它的功能是:求出平均分,由函數值返回。

      答案:

      double fun(strec *h)

      {double aver=0.0;

      while(h!=null)

      {aver+=h->s;

      hy=h->next;}

      aver/=n;

      return aver;}

      第86題 請編寫函數fun,計算并輸出給定10個數的方差。

      答案:

      double fun(double x[10])

      {int i,j;

      double s=0.0,s1=0.0;

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

      s1+=x;

      s1/=10;

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

      s+=(x[j]-s1)*(x[j]-s1);

      s/=10;

      s=pow(s,0.5);

      return s;}

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

      答案:

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

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

      第88題 假定輸入的字符串中只包含字母和*號。請編寫函數fun,它的功能是:除了字符串前導的*號之外,將串中其他*號全部刪除。在編寫函數亞時,不得使用c語言提供的字符串函數。

      答案:

      void fun(char *a)

      {int i=0;

      char *p=a;

      while(*p&&*p==‘*’)

      {a=*p;

      i++;

      p++;}

      while(*p)

      {if(*p!=‘*’)

      {a=*p;

      i++;}

      p++;}

      a=‘\0’;}

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

      答案:

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

      {double aver=0.0;

      int i,j=0;

      for(i=0;i

      aver+=a.s;

      aver/=n;

      for(i=0;i

      if(a.s)>=aver}

      {*(b+j)=a;

      j++;}

      *n=j;

      return aver;}

      第90題 請編寫函數fun,其功能是:計算并輸出下列多項式值:sn=(1-1/2)+(1/3-1/4)+…+(1/(2n-1)1/2n).

      答案:

      sn=(1-1/2)+(1/3-1/4)+...+(1/(2n-1)1/2n).

      double fun(int n)

      {int i;

      double sn=0.0;

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

      sn+=(1.0/(2*i-1)-1.0/(2*i));

      return sn;}

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

      答案:

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

      {

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

      }

      第92題 請編寫函數fun,它的功能是計算:s=(ln(1)+ln(2)+ln(3)+…+ln(m))(0.5),s作為函數值返回。

      答案:

      double fun(int m)

      {

      int I;

      double s=0.0, log(double x);

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

      s=s+log(i);

      s=sqrt(s);

      return s;

      }

      第93題 請編寫函數fun,它的功能是計算下列級數和,和值由函數值返回。

      S=1+x+x(2)/2!+x(3)/3!+…x(n)/n!

      答案:

      double fun(double x, int n)

      {

      double s=1.0, p=1.0;

      int I,j,t;

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

      {

      t=1;

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

      t=t*j;

      p=p*x;

      s=s+p/t;

      }

      return s;

      }

      第94題 規定輸入字符串中只包含字母和*號。請編寫函數fun,它的功能是:將函數字符串中的前導*號全部刪除,中間和尾部的*號不刪除。

      答案:

      void fun(char *a)

      {

      int i=0;

      char *p=a;

      while(*p&&*p==‘*’)

      p++;

      while(*p)

      {

      a[i]=*p;

      i++;

      p++;

      }

      a[i]=‘\0’;

      }

      第95題 假定輸入的字符串中只包含字母和*號。請編寫函數fun,它的功能是:使字符串的前導*號不得多于n個;若多于n個,則刪除多于的*號;若少于或等于n個,則什么也不做。字符串中間和尾部的*號不刪除。

      答案:

      void fun(char *a, int n)

      {

      int i=0,k=0;

      char *t=a;

      while(*t==‘*’)

      {

      k++;

      t++;

      }

      t=a;

      if(k>n)

      t=a+k-n;

      while( *t)

      {

      a[i]=*t;

      i++;

      t++;

      }

      a[i]=‘\0’;

      }

      第96題 請編寫函數fun,其功能使:計算并輸出給定數組(長度為9)中每相鄰兩個元素之平均值的平方根之和。

      答案:

      double fun(double x[9])

      {

      double sum=0.0;

      int I,j=1;

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

      if(j<=8)

      {

      sum+=sqrt((x[i]+x[i+1])/2.0);

      j++;

      }

      return sum;

      }

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

      s=1+1/(1+2)+1/(1+2+3)+..1/(1+2+3…+50)

      答案:

      double fun(int n)

      {

      int I,j;

      double sum=0.0, t;

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

      {

      t=0.0;

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

      t+=j;

      sum+=1.0/t;

      }

      return sum;

      }

      98: 第98題 請編寫函數fun,它的功能是:計算并輸出n(包括n)以內能被5或9整除的所有自然數的倒數之和。

      答案:

      double fun(int n)

      {

      int I;

      double sum=0.0;

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

      if(i%5==0 || i%9==0)

      sum+=1.0/I;

      return sum;

      }

      99: 第99題 請編寫函數fun ,其功能是:計算并輸出3到n之間所有素數的平方根之和。

      答案:

      double fun(int n)

      {

      int m,k,I;

      double s=0.0;

      for(m=3;m<=n;m++)

      {

      k=sqrt(m);

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

      if(m%i==0) break;

      if(i>=k+1)

      s+=sqrt(m);

      }

      return s;

      }

      100: 第100題 請編寫函數fun,其功能是:計算并輸出 s=1+(1+2(0.5))+(1+2(0.5)+3(0.5))+…+(1+2(0.5)+3(0.5)+…+n(0.5))

      答案:

      double fun(int n)

      {

      int I;

      double =1.0,p=1.0;

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

      {

      p+=pow(I,0.5);

      s+=p;

      }

      return s;

      }

    【全國計算機三級《數據庫技術》上機試題與答案】相關文章:

    2016計算機三級《數據庫技術》上機試題與答案12-20

    計算機三級的數據庫上機試題及答案02-02

    2016計算機三級《數據庫技術》上機試題10-19

    2016計算機三級數據庫技術上機試題及答案01-17

    計算機三級數據庫上機試題及答案10-29

    計算機三級《數據庫技術》上機題庫及答案03-07

    2015最新計算機三級數據庫技術上機試題及答案11-20

    2016年計算機三級數據庫技術上機試題及答案01-26

    2015年計算機三級數據庫技術上機試題及答案03-08

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