<pre id="bbfd9"><del id="bbfd9"><dfn id="bbfd9"></dfn></del></pre>

          <ruby id="bbfd9"></ruby><p id="bbfd9"><mark id="bbfd9"></mark></p>

          <p id="bbfd9"></p>

          <p id="bbfd9"><cite id="bbfd9"></cite></p>

            <th id="bbfd9"><form id="bbfd9"><dl id="bbfd9"></dl></form></th>

            <p id="bbfd9"><cite id="bbfd9"></cite></p><p id="bbfd9"></p>
            <p id="bbfd9"><cite id="bbfd9"><progress id="bbfd9"></progress></cite></p>
            C語言

            計算機二級C語言考前測試題及答案

            時間:2024-12-26 22:41:11 C語言 我要投稿

            2017年計算機二級C語言考前測試題及答案

              為了讓大家更好地鞏固計算機二級考試C語言知識,下面小編就為大家收集整理了2017年計算機二級C語言考前測試題及答案,歡迎學習!

            2017年計算機二級C語言考前測試題及答案

              測試題一

              1: 第1題請編寫函數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;

              }

              2: 第2題請編寫函數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;

              }

              3: 第3題請編寫函數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;

              }

              4: 第4題規定輸入字符串中只包含字母和*號。請編寫函數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’;

              }

              5: 第5題假定輸入的字符串中只包含字母和*號。請編寫函數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’;

              }

              6: 第6題請編寫函數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;

              }

              7: 第7題請編寫函數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;

              }

              8: 第8題請編寫函數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;

              }

              9: 第9題請編寫函數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;

              }

              10: 第10題請編寫函數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;

              }

              測試題二

              1: 第1題請編寫函數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;}

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

              答案:

              float fun(float *a,int n)

              {float ave=0.0;

              int i;

              for(i=0;i

              ave+=a;

              ave/=n;

              return ave;}

              3: 第3題假定輸入的字符串中只包含字母和*號。請編寫函數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’;}

              4: 第4題請編寫函數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;}

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

              答案:

              double fun(strec *h)

              {double aver=0.0;

              while(h!=null)

              {aver+=h->s;

              hy=h->next;}

              aver/=n;

              return aver;}

              6: 第6題請編寫函數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;}

              7: 第7題請編寫函數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;}

              8: 第8題假定輸入的字符串中只包含字母和*號。請編寫函數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’;}

              9: 第9題學生的記錄是由學號和成績組成,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;}

              10: 第10題請編寫函數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;}

            【計算機二級C語言考前測試題及答案】相關文章:

            2017計算機二級C語言考前測試題與答案08-29

            2017計算機二級C語言考前測試題與答案解析08-20

            國家計算機二級《C語言》考前測試題及答案11-01

            計算機二級C語言考前測試題08-13

            計算機二級C語言程序設計考前測試題及答案11-11

            2016年計算機二級《C語言》考前測試題及答案08-10

            計算機二級C語言測試題及答案08-13

            計算機二級C語言測試題與答案09-16

            2017計算機二級C語言考前習題及答案09-13

                    <pre id="bbfd9"><del id="bbfd9"><dfn id="bbfd9"></dfn></del></pre>

                    <ruby id="bbfd9"></ruby><p id="bbfd9"><mark id="bbfd9"></mark></p>

                    <p id="bbfd9"></p>

                    <p id="bbfd9"><cite id="bbfd9"></cite></p>

                      <th id="bbfd9"><form id="bbfd9"><dl id="bbfd9"></dl></form></th>

                      <p id="bbfd9"><cite id="bbfd9"></cite></p><p id="bbfd9"></p>
                      <p id="bbfd9"><cite id="bbfd9"><progress id="bbfd9"></progress></cite></p>
                      飘沙影院