<delect id="sj01t"></delect>
  1. <em id="sj01t"><label id="sj01t"></label></em>
  2. <div id="sj01t"></div>
    1. <em id="sj01t"></em>

            <div id="sj01t"></div>
            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

            <delect id="sj01t"></delect>
            1. <em id="sj01t"><label id="sj01t"></label></em>
            2. <div id="sj01t"></div>
              1. <em id="sj01t"></em>

                      <div id="sj01t"></div>
                      黄色视频在线观看