浙江科技学院和山论坛's Archiver

小和山打折卡正式发布!

天涯海角 发表于 2005-11-21 21:04

浙江省计算机二级C程序设计上机模拟题

<DIV class=Section1 style="LAYOUT-GRID:  15.6pt none">
<P  align=center><B >第三部分</B><B >  C</B><B >程序设计上机模拟题</B><B ><p></p></B></P>
<P> <p></p></P>
<P ><B >(一)  </B><B >上机修改题</B><B ><p></p></B></P>
<P  align=left>1. 在考生目录下,有Modify.c程序,该程序中”/******N******/”的下一行中</P>
<P >    有错误,请改正(注意:不得加行、减行、加句、减句,否则后果自负)。<p></p></P>
<P>       该程序功能:输入m、n(要求输入数均大于0),输出它们的最小公倍数<p></p></P>
<P>            /*find the lease common multiple of m and n*/<p></p></P>
<P>           #include &lt;stdio.h&gt;<p></p></P>
<P>           void main()<p></p></P>
<P>           {    int m,n,k;<p></p></P>
<P>                /****1*****/<p></p></P>
<P>               while(scanf("%d%d",&amp;m,&amp;n),<B >m&lt;0&amp;&amp;n&lt;0</B>);      //   <B >m&lt;0|| n&lt;0</B>  <p></p></P>
<P>              for(k=m;k%n!=0;)<p></p></P>
<P>                 /*****2****/<p></p></P>
<P>         <B >        k=k+m%n;</B>             <B >//  k=k+m  </B><p></p></P>
<P>               printf("%d\n",k);<p></p></P>
<P>           }<p></p></P>
<P >2.       在考生目录下,有Modify.c程序,该程序中"/***** N *****/"的下一行中有错误,<p></p></P>
<P >请改正(注意:不得加行、减行、加句、减句,否则后果自负)。<p></p></P>
<P >该程序功能:运行时若输入a、n分别为3、6,则输出下列表达式的值:<p></p></P>
<P >3+33+333+3333+33333+333333 <p></p></P>
<P >#include &lt;stdio.h&gt;<p></p></P>
<P >void main()<p></p></P>
<P >{   int i,a,n,t=0;<p></p></P>
<P >      /***** 1 *****/<p></p></P>
<P ><B >s=0;                       // int s=0;<p></p></B></P>
<P >    scanf("%d%d",&amp;a,&amp;n);<p></p></P>
<P >for(i=1;i&lt;=n;i++) {<p></p></P>
<P >       /******* 2 ******/<p></p></P>
<P >       <B > t=t*10+i; </B><B > </B>          // <B >t=t*10+1</B>;<p></p></P>
<P >        s=s+t;<p></p></P>
<P >}<p></p></P>
<P >    s=s*a;<p></p></P>
<P >    printf("%d\n",s);<p></p></P>
<P >}<p></p></P>
<P >3.       在考生目录下,有Modify.c程序,该程序中"/***** N *****/"的下一行中有错误,<p></p></P>
<P >请改正(注意:不得加行、减行、加句、减句,否则后果自负)。<p></p></P>
<P >该程序功能:运行时输入n,输出n各位数字之和(如n=1308则输出12,n=-3204<p></p></P>
<P >则输出9)。<p></p></P>
<P >#include &lt;stdio.h&gt;<p></p></P>
<P >   #include &lt;math.h&gt;<p></p></P>
<P >   void main()<p></p></P>
<P >   {           int n,s=0;<p></p></P>
<P >       scanf("%d",&amp;n);<p></p></P>
<P >n=fabs(n);<p></p></P>
<P >/******** 1 *******/<p></p></P>
<P >          while(<B>n&gt;1</B>) {              // <B>n</B><B><p></p></B></P>
<P >s=s+n%10;<p></p></P>
<P >/******** 2 ******/<p></p></P>
<P >       <B >            </B><B >n=n%10;        // n=n/10;<p></p></B></P>
<P >          }<p></p></P>
<P>              printf("%d\n",s);<p></p></P>
<P >     }<p></p></P>
<P >4.       在考生目录下,有Modify.c程序,该程序中"/***** N *****/"的下一行中有错误,<p></p></P>
<P >请改正(注意:不得加行、减行、加句、减句,否则后果自负)。<p></p></P>
<P >该程序功能:输入1个字符串,输出其中所出现过的大写英文字母。如运行时<p></p></P>
<P >输入字符串"FONTNAME and FILENAME",应输出"F O N T A M E I L"。<p></p></P>
<P>          #include &lt;stdio.h&gt;<p></p></P>
<P >    void main()<p></p></P>
<P >{    char x[80],y[26]; int i,j,ny=0;<p></p></P>
<P >               gets(x);<p></p></P>
<P >               for(i=0;x[i]!='\0';i++)<p></p></P>
<P >                 if(x[i]&gt;='A'&amp;&amp;x[i]&lt;='Z') {<p></p></P>
<P >                     for(j=0;j&lt;ny;j++)<p></p></P>
<P >                       /***** 1 *****/<p></p></P>
<P>                                 if(<B >y[i]==x[j]</B>)<B >  continue;       //  if(y[j]==x[i]) break;<p></p></B></P>
<P >                     if(j==ny) { y[ny]=x[i]; ny++; }<p></p></P>
<P>                     }<p></p></P>
<P >                      /***** 2 *****/<p></p></P>
<P >    <B >           </B>for(i=0;<B >i&lt;26</B>;i++)            // <B >i&lt;ny<p></p></B></P>
<P >            printf("%c ",y[i]);<p></p></P>
<P >               printf("\n");<p></p></P>
<P >      }<p></p></P>
<P >5.       在考生目录下,有Modify.c程序,该程序中"/***** N ****/"的下一行<p></p></P>
<P >中有错误, 请改正(注意:不得加行、减行、加句、减句,否则后果自负)。<p></p></P>
<P >该程序功能:输入x、eps,计算多项式1-x+x*x/2!-x*x*x/3!+...的和直到末项的<p></p></P>
<P >绝对值小于eps为止。<p></p></P>
<P >#include &lt;stdio.h&gt;<p></p></P>
<P >#include &lt;math.h&gt;<p></p></P>
<P >void main( )<p></p></P>
<P >{   float x,eps,s=1,t=1,i=1;<p></p></P>
<P >        scanf("%f%f",&amp;x,&amp;eps);<p></p></P>
<P >    do{  /***** 1 ****/<p></p></P>
<P >         <B >t = -t * x/ ++i; </B>      //  <B>t = -t * x / i++;</B><p></p></P>
<P >  s += t;<p></p></P>
<P >    /***** 2 ****/<p></p></P>
<P >     }while( fabs(t ) &gt;= eps)<B > </B><B >  // </B><B > </B><B >少 ;</B> <p></p></P>
<P >       printf("%f\n",s);<p></p></P>
<P > }<p></p></P>
<P >6. 在考生目录下,有Modify.c程序,该程序中"/***** N *****/"的下<p></p></P>
<P >一行中有错误,请改正(注意:不得加行、减行、加句、减句,否则后果自负)。<p></p></P>
<P >该程序功能:分别统计字符串中所有英文字母中的各元音字母个数。<p></p></P>
<P >#include &lt;stdio.h&gt;<p></p></P>
<P >#include &lt;ctype.h&gt;<p></p></P>
<P >void main()<p></p></P>
<P >{     char a[80]; int n[5]={0},i; <p></p></P>
<P >gets(a);<p></p></P>
<P >      for(i=0; a[i]!=’\0’; i++)   <p></p></P>
<P >            /***** 1 *****/<p></p></P>
<P >         switch(<B >tolower(a+i)</B>) {         // <B>switch(tolower(a[i]))</B><B> </B><p></p></P>
<P >             case 'a': n[0]++; break;<p></p></P>
<P >       case 'e': n[1]++; break;<p></p></P>
<P >       case 'i': n[2]++; break;<p></p></P>
<P >       case 'o': n[3]++; break;<p></p></P>
<P >       /***** 2 *****/<p></p></P>
<P >       case <B>'U</B>': n[4]++; break;    //  <B>‘u’</B><B><p></p></B></P>
<P >     }<p></p></P>
<P >     for(i=0;i&lt;5;i++) printf("%d\n",n[i]);<p></p></P>
<P >     }<p></p></P>
<P >7. 在考生目录下,有Modify.c程序,该程序中"/***** N *****/"的下<p></p></P>
<P >一行中有错误,请改正(注意:不得加行、减行、加句、减句,否则后果自负)<p></p></P>
<P >该程序功能:输入n(0&lt;n&lt;10)后,输出1个数字金字塔。如输入n为4,<p></p></P>
<P >则输出:<p></p></P>
<P > 1<p></p></P>
<P>                222<p></p></P>
<P>               33333<p></p></P>
<P>              4444444 <p></p></P>
<P >#include &lt;stdio.h&gt;<p></p></P>
<P >void main()<p></p></P>
<P >{    int i,j,n;<p></p></P>
<P >   /***** 1 *****/<p></p></P>
<P >   scanf("%d",<B> n</B>);             //  <B>&amp;n<p></p></B></P>
<P >   for(i=1;i&lt;=n;i++)    {<p></p></P>
<P >for(j=1;j&lt;=n+1-i;j++) <p></p></P>
<P >putchar(' ');<p></p></P>
<P >              for(j=1;j&lt;=2*i-1;j++)<p></p></P>
<P >                    putchar((char)(i+48));<p></p></P>
<P >             /****** 2 *****/<p></p></P>
<P >           putchar(<B>\n</B>);             //  <B>‘\n’</B><p></p></P>
<P >      }<p></p></P>
<P >}<p></p></P>
<P  align=left>8. 在考生目录下,有Modify.c程序,该程序中"/***** N *****/"的下一行中<p></p></P>
<P >    有错误,请改正(注意:不得加行、减行、加句、减句,否则后果自负)。<p></p></P>
<P >    该程序功能:运行时输入10个数,然后分别输出其中的最大值、最小值。<p></p></P>
<P >       #include &lt;stdio.h&gt;</P>
<P >       void main()</P>
<P >      {   float x,max,min;</P>
<P >           /******** 1 *******/</P>
<P >          <B>for(int i=1;</B>i&lt;=10;i++<B>)</B>  {   // <B >C</B><B >中不能这样用, </B><B >改为:int i; for( i=1; i&lt;=10; i++) </B><p></p></P>
<P >                  scanf("%f",&amp;x);</P>
<P >                  /******* 2 ********/</P>
<P >                 if(<B>i =1</B>) { max=x;min=x;}      //   <B >i==1</B></P>
<P >                 if(x&gt;max) max=x;</P>
<P >                 if(x&lt;min) min=x;</P>
<P >          }</P>
<P >          printf("%f,%f\n",max,min);</P>
<P >      }</P>
<P >9. 在考生目录下,有Modify.c程序,该程序中"/***** N *****/"的下一行中有错误,</P>
<P >请改正(注意:不得加行、减行、加句、减句,否则后果自负)。</P>
<P >  该程序功能:运行时输入n,输出n的所有质数因子(如n=13860,则输出2、2、3、3、</P>
<P >5、7、11)。<p></p></P>
<P >       #include &lt;stdio.h&gt;</P>
<P >       void main( )</P>
<P >       {   int n,i;</P>
<P >           scanf("%d",&amp;n);</P>
<P >           /****** 1 ******/</P>
<P >           <B>i=1;  </B>                        //   <B >i=2;</B></P>
<P >           while(n&gt;1)</P>
<P >           if(n%i==0) </P>
<P >           {   printf("%d\t",i); n/=i; }</P>
<P >           else </P>
<P >            /******** 2 *******/</P>
<P >           <B>n--;  </B>                         //  <B >i++;<p></p></B></P>
<P >        }</P>
<P >10. 在考生目录下,有Modify.c程序,该程序中“/***** N *****/”的下一行中有错误,<p></p></P>
<P >请改正(注意:不得加行、减//行、加句、减句,否则后果自负)。<p></p></P>
<P >      该程序功能:输入n以及小于n个字符的字符串,将字符串中所有小写字母改为相应的</P>
<P >大写字母后,输出该字符串。</P>
<P >      #include &lt;stdio.h&gt;</P>
<P >      #include &lt;string.h&gt;</P>
<P >      #include &lt;stdlib.h&gt;</P>
<P >      void main()</P>
<P >      {  int n,i;</P>
<P >         /***** 1 *****/</P>
<P >        <B>char str;  </B>                //  char <B >*str</B><B ><p></p></B></P>
<P >        scanf("%d\n",&amp;n);  str=(char*)malloc(n); gets(str);</P>
<P >         /***** 2 *****/</P>
<P >        for(<B>i=1</B>;i&lt;strlen(str);i++)         //   <B >i=0<p></p></B></P>
<P >        if(str[i]&gt;='a'&amp;&amp; str[i]&lt;='z')  str[i]=str[i]-32 ;   </P>
<P >        puts(str);</P>
<P >     }</P>
<P> <p></p></P>
<P ><B>(二)  </B><B >上机填充题</B><B><p></p></B></P>
<P  align=left>1. 在考生目录下,有Modify.c程序,该程序中"____ N ____"是根据程序功能需要<p></p></P>
<P  align=left>填充部分,请完成程序填充(注意:不得加行、减行、加句、减句,否则后果自负)。<p></p></P>
<P >    该程序功能:输入m、n(要求输入数均大于0),输出它们的最大公约数。<p></p></P>
<P >           #include &lt;stdio.h&gt;</P>
<P >           void main()</P>
<P >          {   int m,n,k;</P>
<P >              while(scanf("%d%d",&amp;m,&amp;n); ___<B>_1_</B>__ ) ;      //   <B >m&lt;0|| n&lt;0</B>  </P>
<P >              for( ___<B>_2_</B>___;  n%k!=0||m%k!=0;  k--);      <B >//   k=m&lt;n?m:n<p></p></B></P>
<P >              printf("%d\n",k);</P>
<P >           }</P>
<P>    2. 在考生目录下,有Modify.c程序,该程序中"____ N ____"是根据程序功能需要填充<p></p></P>
<P >部分,请完成程序填充(注意:不得加行、减行、加句、减句,否则后果自负)。<p></p></P>
<P >该程序功能:函数f将1个整数首尾倒置,程序输出结果应为"54321    -76543"。<p></p></P>
<P>          #include &lt;stdio.h&gt;<p></p></P>
<P >      #include &lt;math.h&gt;<p></p></P>
<P>          int f(int n)<p></p></P>
<P >{    int m,y=0;  m=fabs(n);<p></p></P>
<P >               while(m!=0) {<p></p></P>
<P >                 y=y*10+m%10;<p></p></P>
<P >    <B >             <U>     </U></B><B ><U>1     </U> ;        // m=m/10<p></p></B></P>
<P >               }<p></p></P>
<P >               if(n&gt;=0) return y;<p></p></P>
<P >               else  <B><U>   </U></B><B><U>2   </U> ;           //  return ( -y);</B><p></p></P>
<P >      }<p></p></P>
<P >      void main()<p></p></P>
<P >{     printf("%d\t",f(12345));  printf("%d\n",f(-34567));  }<p></p></P>
<P >3.       在考生目录下,有Modify.c程序,该程序中"____ N ____"是根据程序功能需要填充<p></p></P>
<P >部分,请完成程序填充(注意:不得加行、减行、加句、减句,否则后果自负)。<p></p></P>
<P >该程序功能:输入1个整数后,输出该数的位数若输入3214则输出4,输入-23156<p></p></P>
<P >则输出5)。<p></p></P>
<P >#include &lt;stdio.h&gt;<p></p></P>
<P >void main()<p></p></P>
<P >{     int n,k=0;<p></p></P>
<P >    scanf("%d",&amp;n);<p></p></P>
<P >      while(<B><U>   </U></B><B><U>1   </U></B> ) {       //  <B >n%10</B><p></p></P>
<P >        k++;<p></p></P>
<P >       <B><U>   </U></B><B><U>2   </U></B><U> ;</U>        // <B >n=n/10</B><p></p></P>
<P>     }<p></p></P>
<P >     printf("%d\n",k);<p></p></P>
<P >}<p></p></P>
<P >4. 在考生目录下,有Modify.c程序,该程序中"____ N ____"是根据程序功能需要填充<p></p></P>
<P >部分,请完成程序填充(注意:不得加行、减行、加句、减句,否则后果自负)。<p></p></P>
<P >该程序功能:运行时输出下列结果。<p></p></P>
<P>        abcdefg<p></p></P>
<P >     abcde<p></p></P>
<P >      abc<p></p></P>
<P >       a<p></p></P>
<P >#include &lt;stdio.h&gt;<p></p></P>
<P >void main()<p></p></P>
<P >{     int i,j; char k;<p></p></P>
<P >    for(i=1;i&lt;=4;i++)  {<p></p></P>
<P >for(j=1;j&lt;i;j++)  putchar(' ');<p></p></P>
<P >     <B >       <U>   </U></B><B ><U>1   </U> ;             //  k=’a’<p></p></B></P>
<P >            for(j=9-2*i;j&gt;0;j--)  {<p></p></P>
<P >              k=(char)k++;<p></p></P>
<P >                  printf(“%c”, <B ><U>  </U></B><B ><U> 2   </U> </B>);   //  <B >k-1<p></p></B></P>
<P >            }<p></p></P>
<P >            putchar('\n');<p></p></P>
<P >}<p></p></P>
<P >}<p></p></P>
<P >5. 在考生目录下,有Modify.c程序,该程序中"____ N ____"是根据程序功能需要填充<p></p></P>
<P >     部分,请完成程序填充(注意:不得加行、减行、加句、减句,否则后果自负)。<p></p></P>
<P >   该程序功能:输入整数n(n&gt;0)求m,使得2的m次方小于或等于n、2的m+1次方大于或等于n。<p></p></P>
<P >     #include &lt;stdio.h&gt;</P>
<P >   void main()     </P>
<P >   {    int i=0,t=1,n;</P>
<P >          while( ____<B>_ 1 _</B>_______);        //  <B >scanf(“%d”,&amp;n),  n&lt;=0</B><p></p></P>
<P >          while(!(t&lt;=n&amp;&amp;t*2&gt;=n))  {</P>
<P >             _____<B> 2 </B>_____               //  <B >t=t*2;</B></P>
<P >             i++;</P>
<P >       }</P>
<P >         printf("%d\n",i);</P>
<P >}</P>
<P > <p></p></P>
<P >6. 在考生目录下,有Modify.c程序,该程序中"____ N ____"是根据程序功能需要填充<p></p></P>
<P >     部分,请完成程序填充(注意:不得加行、减行、加句、减句,否则后果自负)。<p></p></P>
<P >     该程序功能:对x=1,2,...,10,求f(x)=x*x-5*x+sin(x)的最大值。<p></p></P>
<P >       #include &lt;stdio.h&gt;</P>
<P >       #include &lt;math.h&gt;</P>
<P >       #define  f(x)   x*x-5*x+sin(x)</P>
<P >        void main()                      // <B>运行结果</B><B>:</B><B>49.455978</B><p></p></P>
<P >       {   int i; float max;</P>
<P >            _____ <B>1</B> _____            //  <B >max=f(1);<p></p></B></P>
<P >            for(i=2;i&lt;=10;i++)</P>
<P >            ______<B> 2</B>______         //  <B >if(f(i)&gt;max)  max=f(i);</B></P>
<P >           printf("%f\n",max);     </P>
<P >       }</P>
<P >7. 在考生目录下,有Modify.c程序,该程序中"____ N ____"是根据程序功能需要填充 </P>
<P >    部分,请完成程序填充(注意:不得加行、减行、加句、减句,否则后果自负)。</P>
<P >    该程序功能:函数f除去数组中的负数,输出结果为:1  3   4   6</P>
<P >        #include &lt;stdio.h&gt;</P>
<P >        void f(int *a,int *m)        </P>
<P >        {   int i,j;</P>
<P >            for(i=0;i&lt;*m;i++)</P>
<P >              if(a[i]&lt;0) { </P>
<P >                 for(j=i--;j&lt;*m-1;j++)  a[j]=a[j+1];</P>
<P >                 ____<B>_1</B>_____;                 //  <B >*m=*m-1;<p></p></B></P>
<P >          }</P>
<P >      }</P>
<P >        void main()</P>
<P >       {    int i,n=7,x[7]={1,-2,3,4,-5,6,-7};</P>
<P >             ______<B>_2_</B>______;               //  <B > f(x,&amp;n);</B><p></p></P>
<P >for(i=0;i&lt;n;i++)   </P>
<P > printf("%5d",x[i]);</P>
<P >            printf("\n");</P>
<P >        }</P>
<P > <p></p></P>
<P >8.       在考生目录下,有Modify.c程序,该程序中"____ N ____"是根据程序功能需要填充<p></p></P>
<P >部分,请完成程序填充(注意:不得加行、减行、加句、减句,否则后果自负)。<p></p></P>
<P >该程序功能:输入n和平面上n个点的坐标,计算各点间距离的总和。<p></p></P>
<P>          #include &lt;stdio.h&gt;<p></p></P>
<P >      #include &lt;math.h&gt;<p></p></P>
<P >      #define f(x1,y1,x2,y2) sqrt(pow(x2-x1,2)+pow(y2-y1,2))<p></p></P>
<P >      <B><U>  </U></B><B><U> 1   </U>            // </B><B >#include &lt;malloc.h&gt; </B><B >或 #include &lt;stdlib.h&gt;<p></p></B></P>
<P >      void main()<p></p></P>
<P >{     float *x,*y,s=0; int i,j,n;<p></p></P>
<P >             scanf("%d",&amp;n);<p></p></P>
<P >             x=(float*)malloc(sizeof(float)*n*2);<p></p></P>
<P >             y=x+<B><U>   </U></B><B><U>2   </U> ;</B>                  //  <B >n</B><p></p></P>
<P >             for(i=0;i&lt;n;i++)   scanf("%f%f",x+i,y+i);<p></p></P>
<P >  for(i=0;i&lt;n-1;i++)<p></p></P>
<P>                            for(j=i+1;j&lt;n;j++)<p></p></P>
<P > s+=f(x[i],y[i],x[j],y[j]);<p></p></P>
<P >             printf("%.2f\n",s);<p></p></P>
<P >      }<p></p></P>
<P >9.       在考生目录下,有Modify.c程序,该程序中"____ N ____"是根据程序功能需要填充<p></p></P>
<P >部分,请完成程序填充(注意:不得加行、减行、加句、减句,否则后果自负)。<p></p></P>
<P >该程序功能:调用函数f,求二维数组a中全体元素之和。<p></p></P>
<P>          #include &lt;stdio.h&gt;<p></p></P>
<P >   float f(<B><U>   </U></B><B><U>1   </U></B>)     // <B >float **x, int m, int n  </B><B >     // </B><B >运行结果:78.00</B><p></p></P>
<P >{     float y=0; int i,j;<p></p></P>
<P>               for(i=0;i&lt;m;i++) for(j=0;j&lt;n;j++) <p></p></P>
<P >y=y+*(*(x+i)+j);<p></p></P>
<P >    return y;<p></p></P>
<P >      }<p></p></P>
<P>          void main()<p></p></P>
<P >{     float a[3][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12}},*b[3];<p></p></P>
<P >             int i;<p></p></P>
<P >             for(i=0;i&lt;3;i++)   b[i]=<B><U>   </U></B><B><U>2   </U> ;     //  &amp;</B><B >a[i][0]  </B><B >或 a[i]</B><p></p></P>
<P >             printf("%.2f\n",f(b,3,4));<p></p></P>
<P>         }<p></p></P>
<P ></P></DIV>

天涯海角 发表于 2005-11-21 21:05

<P 39.0pt? list tab-stops: lfo50; level1 l2 mso-list: -18pt; TEXT-INDENT: 39pt;>10. 在考生目录下,有Modify.c程序,该程序中"____ N ____"是根据程序功能需要填充
<P></P>
<P></P>
<P 10.5pt? mso-char-indent-size: 2.0; mso-char-indent-count: 21pt;>部分,请完成程序填充(注意:不得加行、减行、加句、减句,否则后果自负)。
<P></P>
<P></P>
<P mso-char-indent-size: mso-char-indent-count: 10.45pt? 4.01; 42.1pt;>该程序功能:调用函数f,求a数组中最大值与b 数组中最小值之差。
<P></P>
<P></P>
<P>#include &lt;stdio.h&gt;
<P></P>
<P></P>
<P 10.5pt? mso-char-indent-size: 2.0; mso-char-indent-count: 21pt;>float f(float *x,int n,int flag) // <B normal?>运行结果:11</B>
<P></P>
<P></P>
<P mso-char-indent-size: mso-char-indent-count: 10.45pt? 4.01; 42.1pt;>{ float y; int i;
<P></P>
<P></P>
<P 10.5pt? mso-char-indent-size: 2.0; mso-char-indent-count: 21pt;><B><U></U></B><B><U>1 </U>; // </B><B normal?>y=x[0]
<P></P></B>
<P></P>
<P 10.5pt? mso-char-indent-size: 2.0; mso-char-indent-count: 21pt;>for(i=1;i&lt;n;i++)
<P></P>
<P></P>
<P 10.5pt? mso-char-indent-size: mso-char-indent-count: 7.0; 73.5pt;>if(flag*x<I>&gt;flag*y)
<P></P>
<P></P>
<P 10.5pt? mso-char-indent-size: mso-char-indent-count: 9.0; 94.5pt;>y=x<I>;
<P></P>
<P></P>
<P>return y;
<P></P>
<P></P>
<P>}
<P></P>
<P></P>
<P>void main()
<P></P>
<P></P>
<P mso-char-indent-size: mso-char-indent-count: 10.45pt? 4.01; 42.1pt;>{ float a[6]={3,5,9,4,2.5,1},b[5]={3,-2,6,9,1};
<P></P>
<P></P>
<P 10.5pt? mso-char-indent-size: 2.0; mso-char-indent-count: 21pt;>printf("%.2f\n",f(a,6,1) - <B><U></U></B><B><U>2 </U></B><B normal?>)</B> ); // <B normal?>f(b,5,-1)</B>
<P></P>
<P></P>
<P 10.5pt? mso-char-indent-size: mso-char-indent-count: 1.0; 10.5pt;>}
<P></P>
<P></P>
<P 39.0pt? list tab-stops: lfo50; level1 l2 mso-list: -18pt; TEXT-INDENT: 39pt;>11. 在考生目录下,有Modify.c程序,该程序中"____ N ____"是根据程序功能需要填充
<P></P>
<P></P>
<P 10.5pt? mso-char-indent-size: 2.0; mso-char-indent-count: 21pt;>部分,请完成程序填充(注意:不得加行、减行、加句、减句,否则后果自负)。
<P></P>
<P></P>
<P mso-char-indent-size: mso-char-indent-count: 10.45pt? 4.01; 42.1pt;>该程序功能:调用函数f计算代数多项式
<P></P>
<P></P>
<P mso-char-indent-size: mso-char-indent-count: 10.45pt? 4.01; 42.1pt;>1.1+2.2*x+3.3*x*x+4.4*x*x*x+5.5*x*x*x*x当x=1.7时的值。
<P></P>
<P></P>
<P>#include &lt;stdio.h&gt;
<P></P>
<P></P>
<P 10.5pt? mso-char-indent-size: mso-char-indent-count: 4.0; 42pt;>float f(float,float*,int); // <B normal?>运行结果:81.930756</B>
<P></P>
<P></P>
<P>void main()
<P></P>
<P></P>
<P mso-char-indent-size: mso-char-indent-count: 10.45pt? 4.01; 42.1pt;>{ float b[5]={1.1,2.2,3.3,4.4,5.5};
<P></P>
<P></P>
<P 10.5pt? mso-char-indent-size: mso-char-indent-count: 1.0; 10.5pt;>printf("%f\n",f(1.7,b,5));
<P></P>
<P></P>
<P 10.5pt? mso-char-indent-size: 2.0; mso-char-indent-count: 21pt;>}
<P></P>
<P></P>
<P>float f(<B><U> </U></B><B><U>1 </U></B><B normal?></B>) // <B normal?>float x,float a[], int n</B>
<P></P>
<P></P>
<P mso-char-indent-size: mso-char-indent-count: 10.45pt? 4.01; 42.1pt;>{ float y=a[0],t=1; int i;
<P></P>
<P></P>
<P>for(i=1;i&lt;n;i++) {
<P></P>
<P></P>
<P 10.5pt? mso-char-indent-size: mso-char-indent-count: 8.0; 84pt;>t=t*x ; y=y+a<I>*t;
<P></P>
<P></P>
<P 10.5pt? mso-char-indent-size: mso-char-indent-count: 6.0; 63pt;>}
<P></P>
<P></P>
<P><B><U></U></B><B><U>2 </U>; // </B><B normal?>return y
<P></P></B>
<P></P>
<P>}
<P></P>
<P></P>
<P 39.0pt? list tab-stops: lfo50; level1 l2 mso-list: -18pt; TEXT-INDENT: 39pt;>12. 在考生目录下,有Modify.c程序,该程序中"____ N ____"是根据程序功能需要填充
<P></P>
<P></P>
<P 10.5pt? mso-char-indent-size: 2.0; mso-char-indent-count: 21pt;>部分,请完成程序填充(注意:不得加行、减行、加句、减句,否则后果自负)。
<P></P>
<P></P>
<P mso-char-indent-size: mso-char-indent-count: 10.45pt? 4.01; 42.1pt;>该程序功能:调用函数f用以求1元2次方程 x*x+5*x-2=0 的实根。
<P></P>
<P></P>
<P>#include &lt;stdio.h&gt;
<P></P>
<P></P>
<P 10.5pt? mso-char-indent-size: 2.0; mso-char-indent-count: 21pt;>#include &lt;math.h&gt; // <B normal?>运行结果:0.37 -5.37</B>
<P></P>
<P></P>
<P 10.5pt? mso-char-indent-size: 2.0; mso-char-indent-count: 21pt;>int f(float a,float b,float c,float *x1,float *x2)
<P></P>
<P></P>
<P mso-char-indent-size: mso-char-indent-count: 10.45pt? 4.01; 42.1pt;>{ if(b*b-4*a*c&lt;0) <B><U></U></B><B><U>1 </U>; // </B><B normal?>return 1</B>;
<P></P>
<P></P>
<P>*x1=(-b+sqrt(b*b-4*a*c))/2/a;
<P></P>
<P></P>
<P 10.5pt? mso-char-indent-size: 2.0; mso-char-indent-count: 21pt;>*x2=(-b-sqrt(b*b-4*a*c))/2/a;
<P></P>
<P></P>
<P>return 0;
<P></P>
<P></P>
<P 10.5pt? mso-char-indent-size: 2.0; mso-char-indent-count: 21pt;>}
<P></P>
<P></P>
<P>void main()
<P></P>
<P></P>
<P mso-char-indent-size: mso-char-indent-count: 10.45pt? 4.01; 42.1pt;>{ float u1,u2; float a=1,b=5,c=-2;
<P></P>
<P></P>
<P>if(<B normal?>f( <U></U></B><B normal?><U>2 </U>)</B>) printf("实数范围内无解\n"); // <B normal?>f(a,b,c,&amp;u1,&amp;u2)</B>
<P></P>
<P></P>
<P>else printf("%.2f %.2f\n",u1,u2);
<P></P>
<P></P>
<P>}
<P></P>
<P></P>
<P 39.0pt? list tab-stops: lfo50; level1 l2 mso-list: -18pt; TEXT-INDENT: 39pt;>13. 在考生目录下,有Modify2.c程序,该程序中"____ N ____"是根据程序功能需要填充
<P></P>
<P></P>
<P 10.5pt? mso-char-indent-size: mso-char-indent-count: 1.0; 10.5pt;>部分,请完成程序填充(注意:不得加行、减行、加句、减句,否则后果自负)。该程序功能:函数f将数组循环左移k个元素,输出结果为:4 5 6 7 1 2 3
<P></P>
<P></P>
<P 10.5pt? mso-char-indent-size: 2.0; mso-char-indent-count: 21pt;>#include &lt;stdio.h&gt;
<P></P>
<P></P>
<P 10.5pt? mso-char-indent-size: 2.0; mso-char-indent-count: 21pt;>void f(int *a,int n,int k)
<P></P>
<P></P>
<P 10.5pt? mso-char-indent-size: 2.0; mso-char-indent-count: 21pt;>{ int i,j,t;
<P></P>
<P></P>
<P 10.5pt? mso-char-indent-size: mso-char-indent-count: 4.28; 44.95pt;>for(i=0;i&lt;k;i++) {
<P></P>
<P></P>
<P 10.5pt? mso-char-indent-size: 2.0; mso-char-indent-count: 21pt;><B><U></U></B><B><U>1 </U>; // </B><B normal?>t=a[0] </B>
<P></P>
<P></P>
<P 10.5pt? mso-char-indent-size: 2.0; mso-char-indent-count: 21pt;>for(<B><U> </U></B><B><U>2 </U></B>) // <B normal?>j=1;j&lt;n;j++</B>
<P></P>
<P></P>
<P mso-char-indent-size: mso-char-indent-count: 10.45pt? 4.01; 42.1pt;>a[j-1]=a[j];
<P></P>
<P></P>
<P 21.25pt?>a[n-1]=t;
<P></P>
<P></P>
<P 21.25pt?>}
<P></P>
<P></P>
<P 10.5pt? mso-char-indent-size: 2.0; mso-char-indent-count: 21pt;>}
<P></P>
<P></P>
<P 10.5pt? mso-char-indent-size: mso-char-indent-count: 3.0; 31.5pt;>void main()
<P></P>
<P></P>
<P 10.5pt? mso-char-indent-size: mso-char-indent-count: 3.0; 31.5pt;>{ int i,x[7]={1,2,3,4,5,6,7};
<P></P>
<P></P>
<P 10.5pt? mso-char-indent-size: mso-char-indent-count: 4.25; 44.65pt;>f( x , 7 , 3);
<P></P>
<P></P>
<P 10.5pt? mso-char-indent-size: mso-char-indent-count: 4.28; 44.95pt;>for(i=0;i&lt;7;i++)
<P></P>
<P></P>
<P mso-char-indent-size: mso-char-indent-count: 10.45pt? 6.52; 68.45pt;>printf("%5d",x<I>);
<P></P>
<P></P>
<P 10.5pt? mso-char-indent-size: mso-char-indent-count: 6.0; 63pt;>printf("\n");
<P></P>
<P></P>
<P 10.5pt? mso-char-indent-size: mso-char-indent-count: 3.0; 31.5pt;>}
<P></P>
<P></P>
<P 39.0pt? list tab-stops: lfo50; level1 l2 mso-list: -18pt; TEXT-INDENT: 39pt;>14. 在考生目录下,有Modify.c程序,该程序中"____ N ____"是根据程序功能需要填充部分,请完成程序填充(注意:不得加行、减行、加句、减句 ,否则后果自负)。该程序功能:调用函数f,将字符串中的所有字符逆序存放,然后输出。例如,
<P></P>
<P></P>
<P 10.5pt? mso-char-indent-size: 2.0; mso-char-indent-count: 21pt;>输入字符串为"123456",则程序的输出结果为"654321"。
<P></P>
<P></P>
<P 10.5pt? mso-char-indent-size: 2.0; mso-char-indent-count: 21pt;>#include &lt;stdio.h&gt;
<P></P>
<P></P>
<P 10.5pt? mso-char-indent-size: 2.0; mso-char-indent-count: 21pt;>#include &lt;string.h&gt;<U>
<P></P></U>
<P></P>
<P 10.5pt? mso-char-indent-size: 2.0; mso-char-indent-count: 21pt;>void main()
<P></P>
<P></P>
<P 10.5pt? mso-char-indent-size: 2.0; mso-char-indent-count: 21pt;>{ char s[60],*f(char*);
<P></P>
<P></P>
<P 10.5pt? mso-char-indent-size: mso-char-indent-count: 4.28; 44.95pt;>gets(s);
<P></P>
<P></P>
<P 10.5pt? mso-char-indent-size: mso-char-indent-count: 4.25; 44.65pt;>printf("%s\n",f(s));
<P></P>
<P></P>
<P 10.5pt? mso-char-indent-size: 2.0; mso-char-indent-count: 21pt;>}
<P></P>
<P></P>
<P mso-char-indent-size: mso-char-indent-count: 4.0; 10.3pt? 41.25pt;><B normal?><U>1 </U>f(char* x)</B> // <B>char *</B><B>
<P></P></B>
<P></P>
<P 10.5pt? mso-char-indent-size: 2.0; mso-char-indent-count: 21pt;>{ char t; int i,n;
<P></P>
<P></P>
<P mso-char-indent-size: mso-char-indent-count: 10.3pt? 4.06; 41.85pt;><B normal?><U>2 </U>; // n=strlen(x) </B>
<P></P>
<P></P>
<P 21.25pt?>for(i=0;i&lt;n/2;i++) {
<P></P>
<P></P>
<P 10.5pt? mso-char-indent-size: mso-char-indent-count: 5.0; 52.5pt;>t=x<I>; x<I>=x[n-1-i]; x[n-1-i]=t;
<P></P>
<P></P>
<P 10.5pt? mso-char-indent-size: mso-char-indent-count: 6.0; 63pt;>}
<P></P>
<P></P>
<P 21.25pt?>return x;
<P></P>
<P></P>
<P 10.5pt? mso-char-indent-size: 2.0; mso-char-indent-count: 21pt;>}
<P></P>
<P></P>
<P 39.0pt? list tab-stops: lfo50; level1 l2 mso-list: -18pt; TEXT-INDENT: 39pt;>15. 在考生目录下,有Modify.c程序,该程序中"____ N ____"是根据程序功能需要填充
<P></P>
<P></P>
<P 10.5pt? mso-char-indent-size: 2.0; mso-char-indent-count: 21pt;>部分,请完成程序填充(注意:不得加行、减行、加句、减句,否则后果自负)。
<P></P>
<P></P>
<P 10.5pt? mso-char-indent-size: 2.0; mso-char-indent-count: 21pt;>该程序功能:调用函数f,从字符串中删除所有的数字字符。
<P></P>
<P></P>
<P 10.5pt? mso-char-indent-size: 2.0; mso-char-indent-count: 21pt;>#include &lt;stdio.h&gt;
<P></P>
<P></P>
<P 10.5pt? mso-char-indent-size: 2.0; mso-char-indent-count: 21pt;>#include &lt;string.h&gt;
<P></P>
<P></P>
<P 10.5pt? mso-char-indent-size: 2.0; mso-char-indent-count: 21pt;>#include &lt;ctype.h&gt;
<P></P>
<P></P>
<P 10.5pt? mso-char-indent-size: 2.0; mso-char-indent-count: 21pt;>void f(char *s)
<P></P>
<P></P>
<P 10.5pt? mso-char-indent-size: 2.0; mso-char-indent-count: 21pt;>{ int i=0;
<P></P>
<P></P>
<P mso-char-indent-size: mso-char-indent-count: 10.45pt? 4.01; 42.1pt;>while(s<I>!='\0')
<P></P>
<P></P>
<P 10.5pt? mso-char-indent-size: mso-char-indent-count: 1.0; 10.5pt;>if(isdigit(s<I>)) <B><U></U></B><B><U>1 </U></B>(s+i,s+i+1); // <B>strcpy
<P></P></B>
<P></P>
<P 21.25pt?>else <B><U></U></B><B><U>2 </U>;</B> // <B normal?>i++ </B>
<P></P>
<P></P>
<P 10.5pt? mso-char-indent-size: 2.0; mso-char-indent-count: 21pt;>}
<P></P>
<P></P>
<P 10.5pt? mso-char-indent-size: 2.0; mso-char-indent-count: 21pt;>void main()
<P></P>
<P></P>
<P 10.5pt? mso-char-indent-size: 2.0; mso-char-indent-count: 21pt;>{ char str[80];
<P></P>
<P></P>
<P 10.5pt? mso-char-indent-size: mso-char-indent-count: 3.25; 34.15pt;>gets(str);
<P></P>
<P></P>
<P 10.5pt? mso-char-indent-size: mso-char-indent-count: 3.28; 34.45pt;>f(str);
<P></P>
<P></P>
<P 10.5pt? mso-char-indent-size: mso-char-indent-count: 3.28; 34.45pt;>puts(str);
<P></P>
<P></P>
<P 10.5pt? mso-char-indent-size: 2.0; mso-char-indent-count: 21pt;>}
<P></P>
<P></P>
<P 21pt?>16. 在考生目录下,有Modify.c程序,该程序中"____ N ____"是根据程序功能需要填
<P></P>
<P></P>
<P 10.5pt? mso-char-indent-size: 2.0; mso-char-indent-count: 21pt;>充部分,请完成程序填充(注意:不得加行、减行、加句、减句,否则后果自负)。
<P></P>
<P></P>
<P 10.5pt? mso-char-indent-size: mso-char-indent-count: 1.3; 13.65pt;>该程序功能:输出6~1000之间的完数(1个数的因子和等于其自身的数:6=1+2+3、
<P></P>
<P></P>
<P 10.5pt? mso-char-indent-size: mso-char-indent-count: 1.3; 13.65pt;>28=1+2+4+7+14,则6、28都是完数)。
<P></P>
<P></P>
<P 10.5pt? mso-char-indent-size: 2.0; mso-char-indent-count: 21pt;>#include &lt;stdio.h&gt;
<P></P>
<P></P>
<P 10.5pt? mso-char-indent-size: 2.0; mso-char-indent-count: 21pt;>void main() // <B normal?>运行结果:</B><B normal?>6 28 496</B>
<P></P>
<P></P>
<P 10.5pt? mso-char-indent-size: 2.0; mso-char-indent-count: 21pt;>{ int i,j,s;
<P></P>
<P></P>
<P 18pt?>for(i=6;i&lt;=1000;i++) {
<P></P>
<P></P>
<P 18pt?><B><U></U></B><B><U>1</U></B><B><U> </U></B><B>; </B><B>// </B><B normal?>s=0;</B><B normal?>
<P></P></B>
<P></P>
<P 18pt?>for(j=1;<B><U> </U></B><B><U>2</U></B><B><U> </U></B>;j++) //<B> j&lt;i
<P></P></B>
<P></P>
<P 10.5pt? mso-char-indent-size: mso-char-indent-count: 7.0; 73.5pt;>if(i%j==0)
<P></P>
<P></P>
<P 10.5pt? mso-char-indent-size: mso-char-indent-count: 8.0; 84pt;>s+=j;
<P></P>
<P></P>
<P 10.5pt? mso-char-indent-size: mso-char-indent-count: 1.0; 10.5pt;>if(s==i) printf("%d\n",s);
<P></P>
<P></P>
<P 18pt?>}
<P></P>
<P></P>
<P 10.5pt? mso-char-indent-size: 2.0; mso-char-indent-count: 21pt;>}
<P></P>
<P></P>
<P>
<P></P>
<P></P>
<P></P>
<P></P></I></I></I></I></I></I></I></I>

天涯海角 发表于 2008-4-18 16:32

[b][font=黑体][size=12pt](三)上机编程题[/size][/font][/b][b][font=黑体][size=12pt][/size][/font][/b]
[b][size=12pt]
[/size][/b][color=black][font=黑体][b]1[/b][/font][/color][b][color=black][font=宋体]. [/font][/color][/b][b][color=black][font=黑体]程序设计题:[/font][/color][/b][color=black][font=宋体]考生目录下有Design.c程序,请完成以下功能:[/font][/color]
[color=black]z=f(x,y)=(3.14*x-y)/(x+y)[/color][color=black][font=宋体],若[/font][/color][color=black]x[/color][color=black][font=宋体]、[/font][/color][color=black]y[/color][color=black][font=宋体]取值为区间[/font][/color][color=black][1,6][/color][color=black][font=宋体]的整数,找出使[/font][/color][color=black]z[/color][color=black][font=宋体]取最小值[/font][/color][color=black][/color]
[color=black][font=宋体]的[/font][/color][color=black]x1[/color][color=black][font=宋体]、[/font][/color][color=black]y1[/color][color=black][font=宋体],并将[/font][/color][color=black]x1[/color][color=black][font=宋体]、[/font][/color][color=black]y1[/color][color=black][font=宋体]以格式[/font][/color][color=black]"%d,%d"[/color][color=black][font=宋体]写入到考生目录下,新建文件[/font][/color][color=black]design.dat[/color][color=black][font=宋体]。[/font][/color][color=black][/color]
[color=black]
#include <stdio.h>[/color]
[color=black]
void main()
[/color][color=red]// [/color][b][color=red][font=宋体]运行结果:[/font][/color][color=red]x1=1, y1=6[/color][/b][color=red][/color]
[color=black]
{
[/color]
[color=black]FILE *p; float f(float x,float y),min;[/color]
[color=black]


int x,y,x1,y1;[/color]
[color=black]


[/color][b][i][color=black][font=楷体_GB2312]/* [/font][/color][/i][/b][b][i][color=black][font=黑体]此处起要求考生自己编制程序[/font][/color][/i][/b][b][i][color=black][font=楷体_GB2312] */[/font][/color][/i][/b]
[b][color=red]min=100;[/color][/b]
[b][color=red]if((p=fopen("design.dat","w"))==NULL)[/color][/b]
[b][color=red]{
printf("cannot open in FILE\n");
exit(0);
}[/color][/b]
[b][color=red]for(x=1;x<=6;x++)[/color][/b]
[color=red]


[b]for(y=1;y<=6;y++)
[/b][/color]
[b][color=red]


if(f(x,y)<min)[/color][/b]
[b][color=red]

{
min=f(x,y); x1=x; y1=y;}[/color][/b]
[b][color=red]

fprintf(p, “%d,%d”,x1,y1);[/color][/b]
[b][color=red]
fclose(p);[/color][/b]
[b][color=red]
}[/color][/b]
[b][color=red]
float f(float u,float v)[/color][/b]
[b][color=red]
{
return (3.14*u-v)/(u+v);
}[/color][/b]
[color=black]2.
[/color][b][color=black][font=黑体]程序设计题:[/font][/color][/b][color=black]函数[/color][color=black]root[/color][color=black]返回满足条件[/color][color=black]f(a)*f(b)<0[/color][color=black]的方程在[/color][color=black][a,b][/color][color=black]区间内的[/color][color=black]1[/color][color=black]个实[/color][color=black][/color]
[color=black]根。在区间[/color][color=black][2[/color][color=black],[/color][color=black]5][/color][color=black]、限差为[/color][color=black]0.00001[/color][color=black]。用区间对分法求解[/color][color=black],[/color][color=black]将方程[/color][color=black] x*x-5sin(x)-4=0[/color]
[color=black]的根以格式[/color][color=black]"%9.6f"[/color][color=black]写入到考生目录下新建的文件[/color][color=black]design.dat? [/color]
[color=black]
#include <stdio.h>[/color]
[color=black]
#include <math.h>
[/color][color=red]// [/color][b][color=red]运行结果:[/color][/b][b][color=red]2.580667[/color][/b][color=red][/color]
[color=black]
float g(float x)[/color]
[color=black]
{
return x*x-5*sin(x)-4; }[/color]
[color=black]
float root(float a,float b,float eps,float(*f)(float))[/color]
[color=black]
{
float c;[/color]
[color=black]

while(c=(a+b)/2,fabs(f(c))>=eps&&fabs(b-a)>=eps)[/color]
[color=black]
if(f(a)*f(c)<0)
b=c; [/color]
[color=black]else
a=c;[/color]
[color=black]



return c;[/color]
[color=black]
}[/color]
[color=black][/color]
[color=black]
void main()[/color]
[color=black]
{
[/color][b][i][color=black]/* [/color][/i][/b][b][i][color=black][font=黑体]此处起要求考生自己编制程序[/font][/color][/i][/b][b][i][color=black] */[/color][/i][/b][color=black][/color]
[b][color=red]
float a=2,b=5,c,(*f)(float);[/color][/b]
[b][color=red]FILE
*fp;[/color][/b]
[b][color=red]if((fp=fopen(”design.dat”,”w”))==NULL)[/color][/b]
[b][color=red]
{
printf(”Cannt open FILE”);
exit(0);
}[/color][/b]
[b][color=red]

f=g;[/color][/b]
[b][color=red]
c=root(a,b,1e-5,f);[/color][/b]
[b][color=red]
fprintf(fp,”%9.6f”,c);[/color][/b]
[b][color=red]
fclose(fp);[/color][/b]
[b][color=red]
}[/color][/b]
[color=black][font=黑体]3.
[/font][/color][b][color=black][font=黑体]程序设计题:[/font][/color][/b][color=black][font=宋体]考[/font][/color][color=black][font=宋体]生目录下有[/font][/color][color=black]Design.c[/color][color=black][font=宋体]程序,请完成以下功能:[/font][/color][color=black] x[i],y[i][/color][color=black][font=宋体]表示点[/font][/color][color=black]d(i)[/color]
[color=black][font=宋体]的平面坐标,求[/font][/color][color=black]d(0)[/color][color=black][font=宋体]至[/font][/color][color=black]d(1)[/color][color=black][font=宋体]、[/font][/color][color=black]d(1)[/color][color=black][font=宋体]至[/font][/color][color=black]d(2)[/color][color=black][font=宋体]、[/font][/color][color=black]...[/color][color=black][font=宋体]、[/font][/color][color=black]d(4)[/color][color=black][font=宋体]至[/font][/color][color=black]d(0)[/color][color=black][font=宋体]的连线所构成的[/font][/color][color=black]5[/color][color=black][font=宋体]边形面[/font][/color][color=black][/color]
[color=black][font=宋体]积,并将所求面积以格式[/font][/color][color=black]"%.4f"[/color][color=black][font=宋体]写到考生目录下新建文件[/font][/color][color=black]design.dat[/color][color=black][font=宋体]。[/font][/color][color=black][/color]
[color=black]
#include <stdio.h>[/color]
[table=98%][tr][td]d(0)

[/td][/tr][/table][table=98%][tr][td]d(1)

[/td][/tr][/table][table=98%][tr][td]d(2)

[/td][/tr][/table][table=98%][tr][td]d(4)

[/td][/tr][/table][table=98%][tr][td]d(3)

[/td][/tr][/table][color=black]
#include <math.h>
[/color]
[color=black]
void main()[/color]
[color=black]
{
FILE *p;
int i;
float s,a,b,c,sdim=0;[/color]
[color=black]

float x[5]={-4.5,0.5,4.2,2.7,-3};[/color]
[color=black]

float y[5]={2.3,4.7,1.3,-2.5,-3.3};[/color]
[color=black]

p=fopen("design.dat","w");[/color]
[color=black]


[/color][b][i][color=black][font=楷体_GB2312]/* [/font][/color][/i][/b][b][i][color=black][font=黑体]此处起要求考生自己编制程序[/font][/color][/i][/b][b][i][color=black][font=楷体_GB2312] */[/font][/color][/i][/b][color=black][/color]
[color=black]
[/color][b][color=red]for(i=1;i<4;i++)[/color][/b]
[b][color=red]
{
a=sqrt((x[0]-x[i])*(x[0]-x[i])+(y[0]-y[i])*(y[0]-y[i]));[/color][/b]
[b][color=red]
b=sqrt((x[i]-x[i+1])* (x[i]-x[i+1])+(y[i]-y[i+1])*(y[i]-y[i+1]));[/color][/b]
[b][color=red]
c=sqrt((x[0]-x[i+1])* (x[0]-x[i+1])+(y[0]-y[i+1])*(y[0]-y[i+1]));[/color][/b]
[b][color=red]
s=(a+b+c)/2;[/color][/b]
[b][color=red]


sdim+=sqrt(s*(s-a)*(s-b)*(s-c));[/color][/b]
[b][color=red]

}[/color][/b]
[b][color=red]

fprintf(p,"%.4f",sdim);
// [/color][/b][b][color=red][font=宋体]运行结果:[/font][/color][color=red]46.7800[/color][/b]
[b][color=red]

fclose(p);[/color][/b]
[b][color=red]
}[/color][/b]
[color=black]4[/color][color=black][font=宋体].[/font][/color][b][color=black][font=黑体]程序设计题:[/font][/color][/b][color=black][font=宋体]考生目录下有[/font][/color][color=black]Design.c[/color][color=black][font=宋体]程序,请完成以下功能:对[/font][/color][color=black]x=1,2,...,10[/color][color=black][font=宋体],[/font][/color][color=black][/color]
[color=black][font=宋体]求函数[/font][/color][color=black]f(x)=x-10*cos(x)-5*sin(x)[/color][color=black][font=宋体]的最大值,并将该数以格式[/font][/color][color=black]"%.3f"[/color][color=black][font=宋体]写到考生目录下新建[/font][/color][color=black][/color]
[color=black][font=宋体]文件[/font][/color][color=black]design.dat[/color][color=black][font=宋体]。[attach]13046[/attach][/font][/color][color=black][/color]
[color=black]


#include <stdio.h>[/color]
[color=black]#include <math.h>[/color]
[color=black]void main()
[/color][color=red]// [/color][b][color=red][font=宋体]运行结果:[/font][/color][color=red]21.111[/color][/b][color=red][/color]
[color=black]{
FILE *p; float f(float),max,x;[/color]
[color=black]

[/color][b][i][color=black][font=楷体_GB2312]/* [/font][/color][/i][/b][b][i][color=black][font=黑体]此处起要求考生自己编制程序[/font][/color][/i][/b][b][i][color=black][font=楷体_GB2312] */[/font][/color][/i][/b][color=black][/color]
[color=black]
[/color][b][color=red]if((p=fopen("design.dat","w"))==NULL)[/color][/b]
[b][color=red]
{
printf("cannot open in FILE\n");
exit(0);
}[/color][/b]
[b][color=red]

max=f(1);[/color][/b]
[b][color=red]

for(x=2;x<=10;x++)[/color][/b]
[b][color=black]
[/color][color=red]
if(max<f(x))[/color][/b]
[b][color=red]

max=f(x);[/color][/b]
[b][color=red]

fprintf(p,”%.3f”,max);[/color][/b]
[b][color=red]fclose(p);[/color][/b]
[b][color=red]}[/color][/b]
[b][color=red]float f(float y)[/color][/b]
[b][color=red]{
y=y-10*cos(y)-5*sin(y);[/color][/b]
[b][color=red]

return (y);[/color][/b]
[b][color=red]
}[/color][/b]
[color=black][font=黑体][b]5. [/b][/font][/color][b][color=black][font=黑体]程序设计题:[/font][/color][/b][color=black][font=宋体]考生目录下有[/font][/color][color=black]Design.c[/color][color=black][font=宋体]程序,请完成以下功能:将字符串[/font][/color][color=black]s[/color][color=black][font=宋体]中的所有[/font][/color][color=black][/color]
[color=black][font=宋体]字符按[/font][/color][color=black]ASCII[/color][color=black][font=宋体]值从小到大重新排序后,将排序后的字符串写入到考生目录下新建[/font][/color][color=black][/color]
[color=black][font=宋体]的文件[/font][/color][color=black]design.dat[/color][color=black][font=宋体]。[/font][/color][color=black]
[/color]
[color=black]#include <stdio.h>[/color]
[color=black]

#include <string.h>[/color]
[color=black]

void main()
[/color][color=red]
// [/color][b][color=red][font=宋体]运行结果:[/font][/color][color=red]%,.2346@QS\w|[/color][/b][color=black][/color]
[color=black]{
FILE *p; char *s="634,.%@\\w|SQ2",c;[/color]
[color=black]

int i,j,n=strlen(s);[/color]
[color=black]

[/color][b][i][color=black][font=楷体_GB2312]/* [/font][/color][/i][/b][b][i][color=black][font=黑体]此处起要求考生自己编制程序[/font][/color][/i][/b][b][i][color=black][font=楷体_GB2312] */[/font][/color][/i][/b]
[color=black]
[/color][b][color=red]if((p=fopen("design.dat","w"))==NULL)[/color][/b]
[b][color=red]
{
printf("cannot open in FILE\n");
exit(0);
}[/color][/b]
[b][color=red]
for(i=0;i<n-1;i++)[/color][/b]
[b][color=red]


for(j=i+1;j<n;j++)[/color][/b]
[b][color=red]


if(*(s+i)>*(s+j))[/color][/b]
[b][color=red]

{

c=*(s+i); *(s+i)=*(s+j); *(s+j)=c; }[/color][/b]
[color=red]

[b]for(i=0;i<n;i++)
fputc(s[i],p);[/b][/color]
[b][color=red]



fclose(p);[/color][/b]
[b][color=red]

}[/color][/b]
[color=black][font=黑体][b]6. [/b][/font][/color][b][color=black][font=黑体]程序设计题:[/font][/color][/b][color=black][font=宋体]考[/font][/color][color=black][font=宋体]生目录下有[/font][/color][color=black]Design.c[/color][color=black][font=宋体]程序,请完成以下功能:数组元素[/font][/color][color=black]x[i][/color][color=black][font=宋体]、[/font][/color][color=black]y[i][/color][color=black][font=宋体]表示[/font][/color][color=black][/color]
[color=black][font=宋体]平面上某点坐标,统计[/font][/color][color=black]10[/color][color=black][font=宋体]个点中同处在圆[/font][/color][color=black](x-1)*(x-1)+(y+0.5)*(y+0.5)=25[/color][color=black][font=宋体]与[/font][/color][color=black][/color]
[color=black](x-0.5)*(x-0.5)+y*y=36[/color][color=black][font=宋体]内的点数[/font][/color][color=black]k[/color][color=black][font=宋体],并将变量[/font][/color][color=black]k[/color][color=black][font=宋体]的值以格式[/font][/color][color=black]"%d"[/color][color=black][font=宋体]写到考生目录下新建[/font][/color][color=black][/color]
[color=black][font=宋体]文件[/font][/color][color=black]design.dat[/color][color=black][font=宋体]。[/font][/color][color=black]
[/color]
[color=black]#include <stdio.h>[/color]
[color=black]#include <math.h>
[/color][color=red]
// [/color][b][color=red][font=宋体]运行结果:[/font][/color][color=red]3[/color][/b][color=black][/color]
[color=black]void main()[/color]
[color=black]{
FILE *p; int i,k=0;[/color]
[color=black]

float x[ ]={1.1,3.2,-2.5,5.67,3.42,-4.5,2.54,5.6,0.97,4.65};[/color]
[color=black]

float y[ ]={-6,4.3,4.5,3.67,2.42,2.54,5.6,-0.97,4.65,-3.33};[/color]
[color=black]

[/color][b][i][color=black][font=楷体_GB2312]/* [/font][/color][/i][/b][b][i][color=black][font=黑体]此处起要求考生自己编制程序[/font][/color][/i][/b][b][i][color=black][font=楷体_GB2312] */[/font][/color][/i][/b][color=black][/color]
[color=black]

[/color][b][color=red]if((p=fopen("design.dat","w"))==NULL)[/color][/b]
[b][color=red]
{
printf("cannot open in FILE\n");
exit(0);
}[/color][/b]
[b][color=red]

for(i=0;i<10;i++)[/color][/b]
[b][color=red]
if((sqrt((x[i]-1)*(x[i]-1)+(y[i]+0.5)*(y[i]+0.5))<=5)&&[/color][/b]
[b][color=red]


sqrt(((x[i]-0.5)*(x[i]-0.5)+(y[i]*y[i]))<=6))[/color][/b]
[b][color=red]
k++;[/color][/b]
[b][color=black]
[/color][color=red]fprintf(p,"%d",k);[/color][/b]
[b][color=red]
fclose(p);[/color][/b]
[b][color=red]}[/color][/b]
[color=black][font=黑体][b]7. [/b][/font][/color][b][color=black][font=黑体]程序设计题:[/font][/color][/b][color=black][font=宋体]考生目录下有[/font][/color][color=black]Design.c[/color][color=black][font=宋体]程序,请完成以下功能:数组元素[/font][/color][color=black]x[i][/color][color=black][font=宋体]、[/font][/color][color=black]y[i][/color]
[color=black][font=宋体]表示平面上某点坐标,统计所有各点间最短距离,并将其值以格式[/font][/color][color=black]"%f"[/color][color=black][font=宋体]写到考生目[/font][/color][color=black][/color]
[color=black][font=宋体]录下新建文件[/font][/color][color=black]design.dat[/color][color=black][font=宋体]。[/font][/color][color=black][/color]
[color=black]#include <stdio.h>[/color]
[color=black]#include <math.h>[/color]
[color=black]#define len(x1,y1,x2,y2) sqrt((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2))[/color]
[color=black]void main()
[/color][color=red]
// [/color][b][color=red][font=宋体]运行结果[/font][/color][color=red]: 1.457944[/color][/b][color=black][/color]
[color=black]{
FILE *p; int i,j; float c,minc;[/color]
[color=black]
float x[ ]={1.1,3.2,-2.5,5.67,3.42,-4.5,2.54,5.6,0.97,4.65};[/color]
[color=black]

float y[ ]={-6,4.3,4.5,3.67,2.42,2.54,5.6,-0.97,4.65,-3.33};[/color]
[color=black]

minc=len(x[0],y[0],x[1],y[1]);[/color]
[color=black]

[/color][b][i][color=black][font=楷体_GB2312]/* [/font][/color][/i][/b][b][i][color=black][font=黑体]此处起要求考生自己编制程序[/font][/color][/i][/b][b][i][color=black][font=楷体_GB2312] */[/font][/color][/i][/b][color=black][/color]
[color=black]
[/color][color=red]
[b]if((p=fopen("design.dat","w"))==NULL)[/b][/color]
[b][color=red]
{
printf("cannot open in FILE\n");
exit(0);
}[/color][/b]
[b][color=red]

for(i=0;i<9;i++)[/color][/b]
[b][color=red]


for(j=i+1;j<10;j++)[/color][/b]
[b][color=red]

if((c=len(x[i],y[i],x[j],y[j]))<minc)[/color][/b]
[b][color=red]

minc=c;[/color][/b]
[b][color=red]

fprintf(p,"%f",minc);
[/color][/b]
[b][color=red]

fclose(p);[/color][/b]
[b][color=red]}[/color][/b]
[color=black][font=黑体][b]8. [/b][/font][/color][b][color=black][font=黑体]程序设计题:[/font][/color][/b][color=black][font=宋体]考生目录下有[/font][/color][color=black]Design.c[/color][color=black][font=宋体]程序,请完成以下功能:将数组[/font][/color][color=black]a[/color][color=black][font=宋体]的每一行均[/font][/color][color=black][/color]
[color=black][font=宋体]除以该行上的主对角元素(第[/font][/color][color=black]1[/color][color=black][font=宋体]行同除以[/font][/color][color=black]a[0][0],[/color][color=black][font=宋体]第[/font][/color][color=black]2[/color][color=black][font=宋体]行同除以[/font][/color][color=black]a[1][1][/color][color=black][font=宋体],[/font][/color][color=black]...[/color][color=black][font=宋体],)[/font][/color][color=black][font=宋体][/font][/color]
[color=black][font=宋体]然后将[/font][/color][color=black]a[/color][color=black][font=宋体]数组写入到考生目录下新建的文件[/font][/color][color=black]design.dat.[/color]
[color=black]#include <stdio.h>[/color]
[color=black]#include <stdlib.h>[/color]
[color=black]void main( )[/color]
[color=black]{ float a[3][3]={{1.3,2.7,3.6},{2,3,4.7},{3,4,1.27}};[/color]
[color=black]
FILE *p; int i,j;[/color]
[i][color=black][font=楷体_GB2312]
[b]/* [/b][/font][/color][/i][b][i][color=black][font=黑体]此处起要求考生自己编制程序[/font][/color][/i][/b][b][i][color=black][font=楷体_GB2312] */[/font][/color][/i][/b]
[b][i][color=black][font=楷体_GB2312]
[/font][/color][/i][/b][b][i][color=red][font=楷体_GB2312]
[/font][/color][/i][/b][b][color=red][font=楷体_GB2312][i]float k;[/i][/font][/color][/b][color=red][font=楷体_GB2312][/font][/color]
[b][color=red]if((p=fopen("design.dat","w"))==NULL)[/color][/b]
[b][color=red]
{
printf("cannot open in FILE\n");
exit(0);
}[/color][/b]
[b][color=red]
for(i=0;i<3;i++)[/color][/b]
[b][color=red]
{
k = a[i][i];[/color][/b]
[b][color=red]

for(j=0;j<3;j++)[/color][/b]
[b][color=red]


a[i] [j]=a[i][j]/k;[/color][/b]
[b][color=red]
}
// [/color][/b][b][color=red][font=宋体]运行结果:[/font][/color][color=red]1.000000
2.076923
2.769231[/color][color=black][/color][/b]
[i][color=black][font=楷体_GB2312]
[b]/* [/b][/font][/color][/i][b][i][color=black][font=黑体]此处起要求考生自己编制程序[/font][/color][/i][/b][b][i][color=black][font=楷体_GB2312] */
[/font][/color][/i][/b][b][color=black][font=楷体_GB2312][/font][/color][/b][b][color=red][font=楷体_GB2312][i]0.666667
1.000000
1.566667[/i][/font][/color][/b][color=red][font=楷体_GB2312][/font][/color]
[color=red]
[b]for(i=0;i<3;i++) {
2.362205
30149606
1.000000[/b][/color]
[b][color=red]for(j=0;j<3;j++) [/color][/b]
[b][color=red]fprintf(p,"%10.6f",a[i][j]);[/color][/b]
[b][color=red]fprintf(p,"\n");
[/color][/b]
[b][color=red]}[/color][/b]
[b][color=red]
fclose(p);[/color][/b]
[b][color=red]}[/color][/b]
[color=black][font=黑体][b]9. [/b][/font][/color][b][color=black][font=黑体]程序设计题:[/font][/color][/b][color=black][font=宋体]考生目录下有[/font][/color][color=black]Design.c[/color][color=black][font=宋体]程序,请完成以下功能:计算表达式[/font][/color][color=black]1+2!+3!+...+10![/color]
[color=black][font=宋体]的值,并将计算结果以格式[/font][/color][color=black]"%d"[/color][color=black][font=宋体]写入到考生目录下新建的文件[/font][/color][color=black]design.dat[/color][color=black][font=宋体]。[/font][/color][color=black][/color]
[color=black]#include <stdio.h>[/color]
[color=black]#include <stdlib.h>[/color]
[color=black]void main( )
[/color][color=red]
// [/color][b][color=red][font=宋体]运行结果:[/font][/color][color=red]522956313[/color][/b][color=red][/color]
[color=black]{ FILE *p; int s=1,k=1,i;[/color]
[b][i][color=black][font=楷体_GB2312]/* [/font][/color][/i][/b][b][i][color=black][font=黑体]此处起要求考生自己编制程序[/font][/color][/i][/b][b][i][color=black][font=楷体_GB2312] */[/font][/color][/i][/b][i][color=black][font=楷体_GB2312][/font][/color][/i]
[color=black]
[/color][color=red]
[b]if((p=fopen("design.dat","w"))==NULL)[/b][/color]
[b][color=red]
{
printf("cannot open in FILE\n");
exit(0);
}[/color][/b]
[b][color=red]
for(i=2;i<=10;i++)[/color][/b]
[b][color=red]
{

k*=i;
s+=k;
}[/color][/b]
[b][color=red]
fprintf(p,"%ld",s);[/color][/b]
[b][color=red]
fclose(p);[/color][/b]
[b][color=red]}[/color][/b]
[color=black][font=黑体][b]10[/b][/font][/color][b][color=black][font=黑体]. [/font][/color][/b][b][color=black][font=黑体]程序设计题:[/font][/color][/b][color=black][font=宋体]考生目录下有[/font][/color][color=black]Design.c[/color][color=black][font=宋体]程序,请完成以下功能:在[/font][/color][color=black]6[/color][color=black][font=宋体]至[/font][/color][color=black]1000[/color][color=black][font=宋体]内找出[/font][/color][color=black][/color]
[color=black][font=宋体]所有的合数,并顺序将每个合数用语句“[/font][/color][color=black]fprintf(p,"%6d",n)[/color][color=black][font=宋体]”写入到考生目录下新[/font][/color][color=black][/color]
[color=black][font=宋体]建的文件[/font][/color][color=black]design.dat[/color][color=black][font=宋体]。说明:某数等于其诸因子之和则该数为合数,如[/font][/color][color=black]6=1+2+3[/color][color=black][font=宋体],[/font][/color][color=black][/color]
[color=black]28=1+2+4+7+14 [/color][color=black][font=宋体]则[/font][/color][color=black]6[/color][color=black][font=宋体]、[/font][/color][color=black]28[/color][color=black][font=宋体]就是合数。[/font][/color][color=black][/color]
[color=black]#include <stdio.h>[/color]
[color=black]#include <stdlib.h>[/color]
[color=black]void main()
[/color][color=red]
// [/color][b][color=red][font=宋体]运行结果:[/font][/color][color=red]6
28
496[/color][/b][color=red][/color]
[color=black]{
FILE *p;
int n,i,s;[/color]
[b][i][color=black][font=楷体_GB2312]/* [/font][/color][/i][/b][b][i][color=black][font=黑体]此处起要求考生自己编制程序[/font][/color][/i][/b][b][i][color=black][font=楷体_GB2312] */[/font][/color][/i][/b][color=black][font=楷体_GB2312][/font][/color]
[color=black]
[/color][b][color=red]
if((p=fopen("design.dat","w"))==NULL)[/color][/b]
[b][color=red]

{
printf("cannot open inFILE\n");
exit(0);
}[/color][/b]
[b][color=red]for(n=6;n<=1000;n++)[/color][/b]
[b][color=red]

{

s=0;[/color][/b]
[b][color=red]


for(i=1;i<n;i++)[/color][/b]
[b][color=red]

if(n%i==0)

s+=i;[/color][/b]
[b][color=red]
if(n==s)
fprintf(p,"%6d",n);[/color][/b]
[b][color=red]}[/color][/b]
[b][color=red]fclose(p);[/color][/b]
[b][color=red]}[/color][/b]
[color=black]11[/color][color=black][font=宋体].[/font][/color][b][color=black][font=黑体]程序设计题:[/font][/color][/b][color=black][font=宋体]考生目录下有[/font][/color][color=black]Design.c[/color][color=black][font=宋体]程序,请完成以下功能:在正整数中找出[/font][/color][color=black]1[/color][color=black][font=宋体]个最小的、被[/font][/color][color=black]3[/color][color=black][font=宋体]、[/font][/color][color=black]5[/color][color=black][font=宋体]、[/font][/color][color=black]7[/color][color=black][font=宋体]、[/font][/color][color=black]9[/color][color=black][font=宋体]除余数分别为[/font][/color][color=black]1[/color][color=black][font=宋体]、[/font][/color][color=black]3[/color][color=black][font=宋体]、[/font][/color][color=black]5[/color][color=black][font=宋体]、[/font][/color][color=black]7[/color][color=black][font=宋体]的数,将该数以格式[/font][/color][color=black]"%d"[/color][color=black][font=宋体]写到考生目录下新建文件[/font][/color][color=black]design.dat[/color][color=black][font=宋体]。[/font][/color][color=black][/color]
[color=black]#include <stdio.h>[/color]
[color=black]#include <math.h>[/color]
[color=black]#include <stdlib.h>[/color]
[color=black]void main( )
[/color][color=red]
// [/color][b][color=red][font=宋体]运行结果:[/font][/color][color=red]313[/color][/b][color=red][/color]
[color=black]{[/color][color=black][font=楷体_GB2312]
[b][i]/* [/i][/b][/font][/color][b][i][color=black][font=黑体]此处起要求考生自己编制程序[/font][/color][/i][/b][b][i][color=black][font=楷体_GB2312] */[/font][/color][/i][/b][color=black][font=楷体_GB2312][/font][/color]
[color=black]
[/color][b][color=red]
FILE *p; int i,j;[/color][/b]
[b][color=red]
if((p=fopen("design.dat","w"))==NULL)[/color][/b]
[b][color=red]

{



printf("cannot open FILE");
exit(0);
}[/color][/b]
[b][color=red]


for(i=1; ; i++)[/color][/b]
[b][color=red]

if(i%3==1&&i%5==3&&i%7==5&&i%9==7)
break;[/color][/b]
[b][color=red]
fprintf(p,"%d",i);[/color][/b]
[b][color=red]
fclose(p);[/color][/b]
[b][color=red]}[/color][/b]
[color=black][font=黑体][b]12. [/b][/font][/color][b][color=black][font=黑体]程序设计题:[/font][/color][/b][color=black][font=宋体]考生目录下有[/font][/color][color=black]Design.c[/color][color=black][font=宋体]程序,请完成以下功能:[/font][/color][color=black]a[/color][color=black][font=宋体]、[/font][/color][color=black]b[/color][color=black][font=宋体]、[/font][/color][color=black]c[/color][color=black][font=宋体]为区间[/font][/color][color=black][1,100][/color]
[color=black][font=宋体]的整数,统计使等式[/font][/color][color=black] c/(a*a+b*b)=1[/color][color=black][font=宋体]成立的所有解的个数,并将统计数以格式[/font][/color][color=black]"%d"[/color]
[color=black][font=宋体]写入到考生目录下新建文件[/font][/color][color=black]design.dat[/color][color=black][font=宋体](若[/font][/color][color=black]a=1[/color][color=black][font=宋体]、[/font][/color][color=black]b=3[/color][color=black][font=宋体]、[/font][/color][color=black]c=10[/color][color=black][font=宋体]是[/font][/color][color=black]1[/color][color=black][font=宋体]个解,则[/font][/color][color=black]a=3[/color][color=black][font=宋体]、[/font][/color][color=black]b=1[/color][color=black][font=宋体]、[/font][/color][color=black][/color]
[color=black]c=10 [/color][color=black][font=宋体]也是解)[/font][/color][color=black][/color]
[color=black]#include <stdio.h>[/color]
[color=black]void main()
[/color][color=red]
// [/color][b][color=red][font=宋体]运行结果:[/font][/color][color=red]69[/color][/b][color=red][/color]
[color=black]{
FILE *p; int n=0,a,b,c;[/color]
[b][i][color=black][font=楷体_GB2312]/* [/font][/color][/i][/b][b][i][color=black][font=黑体]此处起要求考生自己编制程序[/font][/color][/i][/b][b][i][color=black][font=楷体_GB2312] */[/font][/color][/i][/b][color=red][font=楷体_GB2312][/font][/color]
[color=red]
[b]if((p=fopen("design.dat","w"))==NULL)[/b][/color]
[b][color=red]

{
printf("cannot open inFILE\n");
exit(0);
}[/color][/b]
[b][color=red]

for(a=1;a<=100;a++)[/color][/b]
[b][color=red]
for(b=1;b<=100;b++)[/color][/b]
[b][color=red]


for(c=1;c<=100;c++)[/color][/b]
[b][color=red]


if((a*a+b*b)==c)
n+=1;
[/color][color=black]// [/color][/b][b][color=black][font=宋体]注意:不要写成[/font][/color][color=black]c/(a*a+b*b)==1[/color][color=red][/color][/b]
[b][color=red]

fprintf(p,"%d",n);
[/color][/b]
[b][color=red]

fclose(p);[/color][/b]
[color=red]
[b]}[/b][/color]
[color=black][font=黑体][b]13[/b][/font][/color][b][color=black][font=黑体]. [/font][/color][/b][b][color=black][font=黑体]程序设计题:[/font][/color][/b][color=black][font=宋体]考生目录下有[/font][/color][color=black]Design.c[/color][color=black][font=宋体]程序,请完成以下功能:[/font][/color][color=black]:[/color][color=black][font=宋体]对[/font][/color][color=black]x=1,2,...,10[/color][color=black][font=宋体],求[/font][/color][color=black][/color]
[color=black][font=宋体]函数[/font][/color][color=black]f(x)=x-10*cos(x)+5*sin(x)[/color][color=black][font=宋体]的最大值,并将该数以格式[/font][/color][color=black]"%.2f"[/color][color=black][font=宋体]写到考生目录下[/font][/color][color=black][/color]
[color=black][font=宋体]新建文件[/font][/color][color=black]design.dat[/color][color=black][font=宋体]。[/font][/color][color=black] [/color]
[color=black]#include <stdio.h>[/color]
[color=black]#include <stdlib.h>[/color]
[color=black]#include <math.h>[/color]
[color=black]void main()
[/color][color=red]// [/color][b][color=red][font=宋体]运行结果:[/font][/color][color=red]20.17[/color][/b][color=red][/color]
[color=black]{ FILE *p;
float f(float),max ;
int x;[/color]
[color=black][font=楷体_GB2312]
[b][i]/* [/i][/b][/font][/color][b][i][color=black][font=黑体]此处起要求考生自己编制程序[/font][/color][/i][/b][b][i][color=black][font=楷体_GB2312] */[/font][/color][/i][/b][color=black][font=楷体_GB2312][/font][/color]
[b][color=red]
if((p=fopen("design.dat","w"))==NULL)[/color][/b]
[b][color=red]
{
printf("cannot open file\n");
exit(0);
}[/color][/b]
[b][color=red]
max=f(1);[/color][/b]
[b][color=red]
for(x=2;x<=10;x++)[/color][/b]
[b][color=red]
if(max<f(x))[/color][/b]
[b][color=red]
max=f(x);[/color][/b]
[b][color=red]
fprintf(p,"%.2f", max);[/color][/b]
[b][color=red]
fclose(p);[/color][/b]
[b][color=red]}[/color][/b]
[b][color=red]float f(float x)[/color][/b]
[b][color=red]{

x=x-10*cos(x)+5*sin(x);[/color][/b]
[b][color=red]
return x;[/color][/b]
[b][color=red]}[/color][/b]
[color=black][font=黑体]14.
[/font][/color][b][color=black][font=黑体]程序设计题:[/font][/color][/b][color=black][font=宋体]考生目录下有[/font][/color][color=black]Design.c[/color][color=black][font=宋体]程序,请完成以下功能:函数[/font][/color][color=black]root[/color][color=black][font=宋体]用区间对分法[/font][/color][color=black][/color]
[color=black][font=宋体]求解满足条件[/font][/color][color=black]f(a)*f(b)<0[/color][color=black][font=宋体]的方程在[/font][/color][color=black][a,b][/color][color=black][font=宋体]区间内的[/font][/color][color=black]1[/color][color=black][font=宋体]个实根。在区间[/font][/color][color=black][2,5][/color][color=black][font=宋体]、限差为[/font][/color][color=black]0.00001[/color]
[color=black][font=宋体]用对分法求解方程[/font][/color][color=black] x*x-5*sin(x)-4=0[/color][color=black][font=宋体]的根,并以格式[/font][/color][color=black]"%9.6f"[/color][color=black][font=宋体]写入到考生目录下新建的文[/font][/color][color=black][/color]
[color=black][font=宋体]件[/font][/color][color=black]design.dat[/color][color=black][font=宋体]。[/font][/color][color=black][/color]
[color=black]#include <stdio.h>[/color]
[color=black]#include <math.h>[/color]
[color=black]#include <stdlib.h>[/color]
[color=black]float g(float x){ return x*x-5*sin(x)-4; }[/color]
[color=black]float root(float a,float b,float eps,float(*f)(float))[/color]
[color=black]{ float c;[/color]
[color=black]
while(c=(a+b)/2,fabs(f(c))>=eps&&fabs(b-a)>=eps)[/color]
[color=black]
if(f(a)*f(c)<0) b=c; else a=c;[/color]
[color=black]
return c;[/color]
[color=black]}[/color]
[color=black]void main()[/color]
[color=black]{

float a=2,b=5,c,(*f)(float);[/color]
[color=black]

FILE *p;[/color]
[color=black][font=楷体_GB2312]

[b][i]/* [/i][/b][/font][/color][b][i][color=black][font=黑体]此处起要求考生自己编制程序[/font][/color][/i][/b][b][i][color=black][font=楷体_GB2312] */[/font][/color][/i][/b][color=black][font=楷体_GB2312][/font][/color]
[color=black]
[/color][color=red]
[b]if((p=fopen("design.dat","w"))==NULL)[/b][/color]
[b][color=red]

{
printf("cannot open FILE");
exit(0);
}[/color][/b]
[b][color=red]

f=g;[/color][/b]
[b][color=red]

c=root(a,b,1e-5,f );[/color][/b]
[color=red]

[b]fprintf(p,"%9.6f",c);[/b][/color]
[b][color=red]

fclose(p);[/color][/b]
[b][color=red]}[/color][/b]
[color=black]15.
[/color][b][color=black][font=黑体]程序设计题:[/font][/color][/b][color=black][font=宋体]考生目录下有[/font][/color][color=black]Design.c[/color][color=black][font=宋体]程序,请完成以下功能:统计满足条件[/font][/color][color=black][/color]
[color=black]x*x+y*y+z*z==2000[/color][color=black][font=宋体]的所有解的个数,并将统计结果以格式[/font][/color][color=black]"%d"[/color][color=black][font=宋体]写入到考生目录下[/font][/color][color=black][/color]
[color=black][font=宋体]新建的文件[/font][/color][color=black]design.dat[/color][color=black][font=宋体]。[/font][/color][color=black][/color]
[color=black][font=宋体]说明:若[/font][/color][color=black]a[/color][color=black][font=宋体]、[/font][/color][color=black]b[/color][color=black][font=宋体]、[/font][/color][color=black]c[/color][color=black][font=宋体]是[/font][/color][color=black]1[/color][color=black][font=宋体]个解,则[/font][/color][color=black]a[/color][color=black][font=宋体]、[/font][/color][color=black]c[/color][color=black][font=宋体]、[/font][/color][color=black]b[/color][color=black][font=宋体]也是[/font][/color][color=black]1[/color][color=black][font=宋体]个解,等等。[/font][/color][color=black][/color]
[color=black]#include <stdio.h>[/color]
[color=black]void main()

[/color][b][color=red]// [/color][/b][b][color=red][font=宋体]运行结果:[/font][/color][color=red]144[/color][/b][color=black][/color]
[color=black]{
FILE *p; int x,y,z,k=0;[/color]
[color=black][font=楷体_GB2312]
[b][i]/* [/i][/b][/font][/color][b][i][color=black][font=黑体]此处起要求考生自己编制程序[/font][/color][/i][/b][b][i][color=black][font=楷体_GB2312] */[/font][/color][/i][/b]
[color=black]
[/color][b][color=red]
if((p=fopen("design.dat","w"))==NULL)[/color][/b]
[b][color=red]
{
printf("cannot open FILE");
exit(0);
}[/color][/b]
[b][color=red]
for(x= -45;x<45;x++)
[/color][color=black]
// [/color][/b][b][color=black][font=黑体]想一下[/font][/color][color=black](x,y,z)[/color][/b][b][color=black][font=黑体]的取值范围[/font][/color][color=black][/color][/b]
[b][color=black]
[/color][color=red]
for(y= -45;y<45;y++)[/color][/b]
[b][color=red]



for(z= -45;z<45;z++)[/color][/b]
[b][color=red]



if(x*x+y*y+z*z==2000)
k++;[/color][/b]
[b][color=black]
[/color][color=red]
fprintf(p,"%d",k);

[/color][/b]
[b][color=red]
fclose(p);[/color][/b]
[b][color=red]}[/color][/b]
[color=black]16.
[/color][b][color=black][font=黑体]程序设计题:[/font][/color][/b][color=black][font=宋体]考生目录下有[/font][/color][color=black]Design.c[/color][color=black][font=宋体]程序,请完成以下功能:在[/font][/color][color=black]6[/color][color=black][font=宋体]至[/font][/color][color=black]5000[/color][color=black][font=宋体]内找出所有[/font][/color][color=black][/color]
[color=black][font=宋体]的亲密数对,并将每对亲密数用语句“[/font][/color][color=black]fprintf(p,"%6d,%6d\n",a,b);[/color][color=black][font=宋体]”写到考生目录下新[/font][/color][color=black][/color]
[color=black][font=宋体]建文件[/font][/color][color=black]design.dat[/color][color=black][font=宋体]。[/font][/color][color=black][/color]
[color=black][font=宋体]说明:若[/font][/color][color=black]a[/color][color=black][font=宋体]、[/font][/color][color=black]b[/color][color=black][font=宋体]为[/font][/color][color=black]1[/color][color=black][font=宋体]对亲密数,则[/font][/color][color=black]a[/color][color=black][font=宋体]的因子和等于[/font][/color][color=black]b[/color][color=black][font=宋体]、[/font][/color][color=black]b[/color][color=black][font=宋体]的因子和等于[/font][/color][color=black]a[/color][color=black][font=宋体]、且[/font][/color][color=black]a[/color][color=black][font=宋体]不等于[/font][/color][color=black]b[/color]
[color=black][font=宋体]如:[/font][/color][color=black]220[/color][color=black][font=宋体]、[/font][/color][color=black]284[/color][color=black][font=宋体]是[/font][/color][color=black]1[/color][color=black][font=宋体]对亲密数,[/font][/color][color=black]280[/color][color=black][font=宋体]、[/font][/color][color=black]220[/color][color=black][font=宋体]也是[/font][/color][color=black]1[/color][color=black][font=宋体]对亲密数。[/font][/color][color=black][/color]
[color=black]
#include <stdio.h>[/color]
[color=black]
void main()
[/color][color=red]// [/color][b][color=red][font=宋体]运行结果:[/font][/color][color=red]220,284[/color][/b][color=black][/color]
[color=black]
{
FILE *p;
int i,a,b,c;
[/color][color=red]
[b]284,220[/b][/color]
[color=black]

p=fopen("design.dat","w");

[/color][b][color=red]1184,1210[/color][color=black][/color][/b]
[color=black]

printf("[/color][color=black][font=宋体]程序正在运行,请稍等[/font][/color][color=black]....\n");
[/color][color=red]
[b]1210,1184[/b][/color][b][color=black][/color][/b]
[color=black]

for(a=6;a<=5000;a++)
[/color][b][color=red]
2620,2924[/color][color=black][/color][/b]
[color=black]

{
[/color][b][i][color=black][font=楷体_GB2312]/*[/font][/color][/i][/b][b][i][color=black][font=黑体]此处起要求考生自己编制程序[/font][/color][/i][/b][b][i][color=black][font=楷体_GB2312] */[/font][/color][/i][/b][color=black]
[/color][b][color=red]2924,2620[/color][/b][color=black][/color]
[color=black]

[/color][b][color=red]b=c=0;[/color][/b]
[b][color=red]
for(i=1;i<a;i++)[/color][/b]
[b][color=red]
if(a%i==0)
b=b+i;[/color][/b]
[b][color=red]
for(i=1;i<b;i++)[/color][/b]
[b][color=red]
if(b%i==0)
c=c+i;[/color][/b]
[b][color=red]
if(a==c && a!=b)[/color][/b]
[b][color=red]
fprintf(p,"%6d,%6d\n",a,b);
[/color][/b]
[b][color=red]

}[/color][/b]
[b][color=red]

fclose(p);[/color][/b]
[b][color=red]

printf("[/color][/b][b][color=red][font=黑体]程序运行结束[/font][/color][/b][b][color=red][font=宋体]。[/font][/color][color=red]\n");[/color][/b]
[b][color=red]}[/color][/b]
[color=black]17.
[/color][b][color=black][font=黑体]程序设计题:[/font][/color][/b][color=black][font=宋体]考生目录下有[/font][/color][color=black]Design.c[/color][color=black][font=宋体]程序,请完成以下功能:计算数列[/font][/color][color=black][/color]
[color=black]1,-1/3!,1/5!,-1/7!,1/9!,...[/color][color=black][font=宋体]的和至某项的绝对值小于[/font][/color][color=black]1e-5[/color][color=black][font=宋体]时为止[/font][/color][color=black]([/color][color=black][font=宋体]该项不累加[/font][/color][color=black])[/color][color=black][font=宋体],将求和的[/font][/color][color=black][/color]
[color=black][font=宋体]结果以格式[/font][/color][color=black]"%.6"[/color][color=black][font=宋体]写到考生目录下新建文件[/font][/color][color=black]design.dat[/color][color=black][font=宋体]。[/font][/color][color=black][/color]
[color=black]#include <stdio.h>[/color]
[color=black]#include <math.h>[/color]
[color=black]void main( )
[/color][color=red]
// [/color][b][color=red][font=宋体]运行结果[/font][/color][/b][b][color=red][font=黑体]: 0.841471[/font][/color][/b][color=black][/color]
[color=black]{
FILE *p; float s=1,t=1,i=3;[/color]
[b][i][color=black][font=楷体_GB2312]/* [/font][/color][/i][/b][b][i][color=black][font=黑体]此处起要求考生自己编制程序[/font][/color][/i][/b][b][i][color=black][font=楷体_GB2312] */[/font][/color][/i][/b][color=black][font=楷体_GB2312][/font][/color]
[color=black]

[/color][b][color=red]if((p=fopen("design.dat","w"))==NULL)[/color][/b]
[b][color=red]

{
printf("cannot open inFILE\n");
exit(0);
}[/color][/b]
[b][color=red]

do {[/color][/b]
[b][color=red]


t=-t* (i-1)*i;
[/color][/b]
[b][color=red]s=s+1/t;
[/color][/b]
[b][color=red]i+=2;[/color][/b]
[b][color=red]


}while(fabs(1/t) >= 1e-5);[/color][/b]
[b][color=red]

fprintf(p,"%.6f",s);[/color][/b]
[b][color=red]

fclose(p);[/color][/b]
[b][color=red]}[/color][/b]
[color=black]18.
[/color][b][color=black][font=黑体]程序设计题:[/font][/color][/b][color=black][font=宋体]考生目录下有[/font][/color][color=black]Design.c[/color][color=black][font=宋体]程序,请完成以下功能:[/font][/color][color=black]x[i],y[i][/color][color=black][font=宋体]分别表示平面上[/font][/color][color=black][/color]
[color=black]1[/color][color=black][font=宋体]个点的[/font][/color][color=black]x[/color][color=black][font=宋体]、[/font][/color][color=black]y[/color][color=black][font=宋体]坐标,求下列[/font][/color][color=black]5[/color][color=black][font=宋体]点各点间距离总和,并将该数以格式[/font][/color][color=black]"%.4f"[/color][color=black][font=宋体]写到考生目[/font][/color][color=black][/color]
[color=black][font=宋体]录下新建文件[/font][/color][color=black]design.dat[/color][color=black][font=宋体]。[/font][/color][color=black][/color]
[color=black]#include <stdio.h>[/color]
[color=black]#include <math.h>[/color]
[color=black]#include <stdlib.h>[/color]
[color=black]void main()
[/color][color=red]// [/color][b][color=red][font=宋体]运行结果[/font][/color][/b][b][color=red][font=黑体]: 45.2985[/font][/color][/b][color=black][/color]
[color=black]{
FILE *p; float s,x[5]={-1.5,2.1,6.3,3.2,-0.7};[/color]
[color=black]

float y[5]={7,5.1,3.2,4.5,7.6}; int i,j;[/color]
[color=black][font=楷体_GB2312]

[b][i]/* [/i][/b][/font][/color][b][i][color=black][font=黑体]此处起要求考生自己编制程序[/font][/color][/i][/b][b][i][color=black][font=楷体_GB2312] */[/font][/color][/i][/b][color=black][font=楷体_GB2312][/font][/color]
[color=black]
[/color][color=red]
[b]
if((p=fopen("design.dat","w"))==NULL)[/b][/color]
[b][color=red]

{

printf("cannot open inFILE\n");
exit(0);

}[/color][/b]
[b][color=red]

s=0;[/color][/b]
[b][color=red]

for(i=0;i<4;i++)[/color][/b]
[b][color=red]

for(j=i+1;j<5;j++)[/color][/b]
[b][color=red]


s+=sqrt(pow(x[i]-x[j],2)+pow(y[i]-y[j],2));[/color][/b]
[b][color=red]

fprintf(p,"%.4f",s);[/color][/b]
[b][color=red]

fclose(p);[/color][/b]
[b][color=red]}[/color][/b]
[color=black]19.
[/color][b][color=black][font=黑体]程序设计题:[/font][/color][/b][color=black][font=宋体]考生目录下有[/font][/color][color=black]Design.c[/color][color=black][font=宋体]程序,请完成以下功能:数列第[/font][/color][color=black]1[/color][color=black][font=宋体]项为[/font][/color][color=black]81,[/color][color=black][font=宋体]此后各[/font][/color][color=black][/color]
[color=black][font=宋体]项均为它前[/font][/color][color=black]1[/color][color=black][font=宋体]项的平方根,统计该数列前[/font][/color][color=black]30[/color][color=black][font=宋体]项之和,并将和以格式[/font][/color][color=black]"%.3f"[/color][color=black][font=宋体]写入到考生[/font][/color][color=black][/color]
[color=black][font=宋体]目录下新建文件[/font][/color][color=black]design.dat[/color][color=black][font=宋体]。[/font][/color][color=black][/color]
[color=black]#include <stdio.h>[/color]
[color=black]#include <math.h>[/color]
[color=black]void main()
[/color][color=red]// [/color][b][color=red][font=宋体]运行结果[/font][/color][/b][b][color=red][font=黑体]: 121.336[/font][/color][/b][color=red][/color]
[color=black]{

FILE *p; float s=0,a=81,i;[/color]
[color=black][font=楷体_GB2312]

[b][i]/*[/i][/b][/font][/color][b][/b][b][i][color=black][font=黑体]此处起要求考生自己编制程序[/font][/color][/i][/b][b][i][color=black][font=楷体_GB2312] */[/font][/color][/i][/b][color=black][font=楷体_GB2312][/font][/color]
[color=black]
[/color][color=red]

[b]if((p=fopen("design.dat","w"))==NULL)[/b][/color]
[b][color=red]

{
printf("Can't open file\n");


exit(0);
}[/color][/b]
[b][color=red]

for(i=0;i<30;i++)[/color][/b]
[b][color=red]

{
s+=a;
[/color][/b]
[b][color=red]


a=sqrt(a);
[/color][/b]
[b][color=red]}[/color][/b]
[b][color=red]
fprintf(p,"%.3f",s);[/color][/b]
[b][color=red]
fclose(p);[/color][/b]
[b][color=red]}[/color][/b]
[color=black]20.
[/color][b][color=black][font=黑体]程序设计题:[/font][/color][/b][color=black][font=宋体]考生目录下有[/font][/color][color=black]Design.c[/color][color=black][font=宋体]程序,请完成以下功能:在[/font][/color][color=black]1000[/color][color=black][font=宋体]至[/font][/color][color=black]1100[/color][color=black][font=宋体]内找出[/font][/color][color=black][/color]
[color=black][font=宋体]所有的素数,并顺序将每个素数用语句“[/font][/color][color=black]fprintf(p,"%5d",i)[/color][color=black][font=宋体]”写入到考生目录下新建的[/font][/color][color=black][/color]
[color=black][font=宋体]文件[/font][/color][color=black]design.dat[/color][color=black][font=宋体]。说明:素数是自然数中除了[/font][/color][color=black]1[/color][color=black][font=宋体]以外只能被[/font][/color][color=black]1[/color][color=black][font=宋体]和其自身整除的数。[/font][/color][color=black][/color]
[color=black]#include <stdio.h>[/color]
[color=black]#include <math.h>[/color]
[color=black]#include <stdlib.h>[/color]
[color=black]void main()[/color]
[color=black]{
FILE *p;
int i,j;[/color]
[b][i][color=black][font=楷体_GB2312]/* [/font][/color][/i][/b][b][i][color=black][font=黑体]此处起要求考生自己编制程序[/font][/color][/i][/b][b][i][color=black][font=楷体_GB2312] */[/font][/color][/i][/b][color=black][font=楷体_GB2312][/font][/color]
[b][color=red]int prime(int n);[/color][/b]
[b][color=red]if((p=fopen("design.dat","w"))==NULL)[/color][/b]
[b][color=red]{
printf("cann't open a FILE");
exit(0);
}[/color][/b]
[b][color=red]for(j=1000;j<=1100;j++)[/color][/b]
[b][color=red]

if(prime(j)==1)[/color][/b]
[b][color=red]
fprintf(p,"%5d",j);[/color][/b]
[b][color=red]fclose(p);[/color][/b]
[b][color=red]}[/color][/b]
[b][color=red]int prime(int n)[/color][/b]
[b][color=red]{

int i;[/color][/b]
[b][color=red]for(i=2;i<sqrt(n);i++)[/color][/b]
[b][color=red]



if(n%i==0)[/color][/b]
[b][color=black]


[/color][color=red]return 0;[/color][/b]
[b][color=red]

return 1;
[/color][color=black]
// [/color][/b][b][color=black][font=黑体]注意:不能写成[/font][/color][color=black] else return 1[/color][/b]
[b][color=red]}[/color][/b]
[color=black]21. [/color][b][font=宋体]程序设计题:[/font][/b][font=宋体]计算多项式[/font]a0+a1*x+a2*x*x+a3*x*x*x+...[font=宋体]的值,并将其值以格式[/font]"%f"
[font=宋体]写到考生目录下新建文件[/font]design.dat[font=宋体]。[/font]
[color=black]
#include <stdio.h>[/color]
[color=black]
#include <stdlib.h>[/color]
[color=black]
#include <math.h>[/color]
[color=black]
void main()
[/color][color=red]// [/color][b][color=red][font=宋体]运行结果[/font][/color][/b][b][color=red][font=黑体]:[/font][/color][/b][b][color=red][font=黑体]98.722542[/font][/color][/b][b][color=black][font=黑体][/font][/color][/b]
[color=black]
{ FILE *p; int i; float x=1.279,t=1,y=0;[/color]
[color=black]
float a[10]={1.1,3.2,-2.5,5.67,3.42,-4.5,2.54,5.6,0.97,4.65};[/color]
[b][color=black]
/*
[/color][/b][b][i][color=black][font=黑体]此处起要求考生自己编制程序[/font][/color][/i][color=black] */[/color][/b]
[b][color=black]
[/color][color=red]
if((p=fopen("design.dat","w"))==NULL)[/color][/b]
[b][color=red]
{
printf("cann't open a FILE");
exit(0);
}[/color][/b]
[b][color=red]
for(i=0; i<10; i++)[/color][/b]
[b][color=red]
{
y+=a[i]*t;[/color][/b]
[b][color=red]
t=t*x;[/color][/b]
[b][color=red]
}[/color][/b]
[b][color=red]


fprintf(p,"%f",y);
[/color][/b]
[b][color=red]

fclose(p);[/color][/b]
[b][color=red]
[/color][/b][color=red]
}[/color]
22.
[b][font=宋体]程序设计题:[/font][/b][font=宋体]将[/font][font=宋体]数组[/font]a[font=宋体]的每[/font]1[font=宋体]行均除以该行上绝对值最大的元素,然后将[/font]a[font=宋体]数组写入到[/font]
[font=宋体]考生目录下新建文件[/font]design.dat[font=宋体]。[/font]

#include <stdio.h>

#include <stdlib.h>

#include <math.h>

void main()

{
float a[3][3]={{1.3,2.7,3.6},{2,3,4.7},{3,4,1.27}};


FILE *p; float x; int i,j;
[b]

[color=black]
/*
[/color][/b][b][i][color=black][font=黑体]此处起要求考生自己编制程序[/font][/color][/i][/b][b]
[color=black]*/[/color][/b]
[b]


[color=red]
for(i=0;i<3;i++)[/color][/b]
[b]
[color=red]
{
x=fabs(a[i][0]);[/color][/b]
[b][color=red]
for(j=1;j<3;j++) [/color][/b]
[b][color=red]

if(x<fabs(a[i][j])) x=fabs(a[i][j]);[/color][/b]
[b][color=red]

for(j=0;j<3;j++)[/color][/b]
[b][color=red]

a[i][j]=a[i][j]/x;[/color][/b]
[b][color=red]
}[/color][/b]

p=fopen("design.dat","w");

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

for(j=0;j<3;j++)
fprintf(p,"%10.6f",a[i][j]);

fprintf(p,"\n");

}
[b][color=red]
// [/color][/b][b][color=red][font=宋体]运行结果[/font][/color][/b][b][color=red][font=黑体]:[/font][/color][/b][b][color=red][font=黑体]0.361111
0.750000
1.000000[/font][/color][/b]
fclose(p);

[b][color=red]
0.425532
0.638298
1.000000[/color][/b]

}
[b][color=red]
0.750000
1.000000
0.317500[/color][/b]
[color=black]
[/color][b]23.[/b][b][font=宋体] 程序设计题: [/font][/b][font=宋体]数列各项为[/font]1,1,2,3,5,8,13,21,...[font=宋体],求其前[/font]40[font=宋体]项之和,并将求和的[/font]
[font=宋体]结果以格式[/font]"%ld"[font=宋体]写到考生目录下新建文件[/font]design.dat[font=宋体]。[/font]

#include <stdio.h>

#include <stdlib.h>

void main()
[color=red]
// [/color][b][color=red][font=宋体]运行结果[/font][/color][/b][b][color=red][font=黑体]:[/font][/color][/b][b][color=red][font=黑体]267914295[/font][/color][/b][color=red][/color]

{
FILE *p; long s=0,i,a[40];
[b]

/*
[/b][b][i][font=黑体]此处起要求考生自己编制程序[/font][/i] */[/b]
[b]
[color=red]
if((p=fopen("design.dat","w"))==NULL)[/color][/b]
[b][color=red]
{
printf("cann't open a FILE");
exit(0);
}[/color][/b]
[b][color=red]
a[0]=1;
a[1]=1;[/color][/b]
[b][color=red]
for(i=2;i<40;i++)[/color][/b]
[b][color=red]

a[i]=a[i-1]+a[i-2];[/color][/b]
[b][color=red]
for(i=0;i<40;i++)[/color][/b]
[b][color=red]

s+=a[i];[/color][/b]
[b][color=red]
fprintf(p,"%ld",s);
[/color][/b]
[b][color=red]
fclose(p);[/color][/b]
[color=red]

} [/color]
[color=black][b]24.[/b][/color][b][font=宋体]程序设计题:[/font][/b][font=宋体]将满足条件[/font]pow(1.05,n)<1e6<pow(1.05,n+1)[font=宋体]的[/font]n[font=宋体]、[/font]pow(1.05,n)

[font=宋体]值以格式[/font]"%d,%.0f"[font=宋体]写入到考生目录下新建的文件[/font]design.dat[font=宋体]。[/font]

#include <stdio.h>

#include <math.h>

void main()
[color=red]// [/color][b][color=red][font=宋体]运行结果[/font][/color][/b][b][color=red][font=黑体]:[/font][/color][/b][b][color=red][font=黑体]283[/font][/color][/b][b][color=red][font=黑体],[/font][/color][/b][b][color=red][font=黑体] 992137[/font][/color][/b][color=red][/color]


{
float y=1.05; int n=1;
FILE *p;
[b]
/*
[/b][b][i][font=黑体]此处起要求考生自己编制程序[/font][/i] */[/b]
[b]
[color=red]if((p=fopen("design.dat","w"))==NULL)[/color][/b]
[b][color=red]
{
printf("cann't open a FILE");
exit(0);
}[/color][/b]
[b][color=red]
for(n=1;;n++)[/color][/b]
[b][color=red]

if((pow(y,n)<1e6)&&(1e6<pow(y,n+1)))
break;[/color][/b]
[color=red]
[b]
fprintf(p,"%d,%.0f",n,pow(1.05,n));
[/b][/color]
[b][color=red]
fclose(p);[/color][/b]

[color=red]}[/color]
[color=black][b]25.[/b][/color][b][font=宋体] 程序设计题:[/font][/b][font=宋体]计算多项式[/font]a0-a1*x+a2*x*x/2!-a3*x*x*x/3!+...[font=宋体]的值,并将其以[/font]
[font=宋体]格式[/font]"%f"[font=宋体]写到考生目录下新建文件[/font]design.dat[font=宋体]。[/font]

#include <stdio.h>

#include <math.h>

void main()
[color=red]// [/color][b][color=red][font=宋体]运行结果[/font][/color][/b][b][color=red][font=黑体]:[/font][/color][/b][b][color=red][font=黑体]-6.495819[/font][/color][/b]

{
FILE *p; int i; float x=1.279,t,y;

float a[10]={1.1,3.2,-2.5,5.67,3.42,-4.5,2.54,5.6,0.97,4.65};
[b]

/*
[/b][b][i][font=黑体]此处起要求考生自己编制程序[/font][/i] */[/b]
[b]
[color=red]
t=1; y=0;[/color][/b]
[b][color=red]
if((p=fopen("design.dat","w"))==NULL)[/color][/b]
[b][color=red]
{
printf("cann't open a FILE");
exit(0);
}[/color][/b]
[b][color=red]
for(i=0; i<10; i++)[/color][/b]
[b][color=red]
{

y=y+a[i]*t;[/color][/b]
[b][color=red]

t=-t*x*1/(i+1);[/color][/b]
[b][color=red]
}[/color][/b]
[b][color=red]
fprintf(p,"%f",y);
[/color][/b]
[b][color=red]
fclose(p);[/color][/b]
[color=red]
}[/color]
[color=black][b]26. [/b][/color][b][font=宋体]程序设计题: [/font][/b][font=宋体]累加[/font]a[font=宋体]字符串中各个字符的[/font]ASCII[font=宋体]码值,然后将累加和以格式[/font]"%d"[font=宋体]写到[/font]
[font=宋体]考生目录下新建文件[/font]design.dat[font=宋体]。[/font]

#include <stdio.h>


#include <stdlib.h>

void main()
[color=red]
// [/color][b][color=red][font=宋体]运行结果[/font][/color][/b][b][color=red][font=黑体]:[/font][/color][/b][b][color=red][font=黑体]983[/font][/color][/b]



{
FILE *p; int s=0,i=0;


char *a="r235%^%34cdDW,.";
[b]
/*
[/b][b][i][font=黑体]此处起要求考生自己编制程序[/font][/i] */[/b]
[b]
[color=red]
if((p=fopen("design.dat","w"))==NULL)[/color][/b]
[b][color=red]
{
printf("cann't open a FILE");
exit(0);
}[/color][/b]
[b][color=red]
for(i=0;*(a+i)!='\0';i++)[/color][/b]
[b][color=red]

s+=*(a+i);[/color][/b]
[b][color=red]
fprintf(p,"%d",s);
[/color][/b]
[b][color=red]
fclose(p);[/color][/b]
[color=red]
}
[/color][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i]

夏七夕 发表于 2008-9-16 15:51

C语言上机操作

谁教教我C语言上机操作啊?
我没培训过 想自己看书
但看着上面的头大了啊
谢谢了哈
qq:543652306

页: [1]
站长:天涯海角 QQ:361707661 广告联系:0571-81509195
中国网络110报警服务 信息产业部互联网备案信息 绿色安全网站:无病毒,无插件! 浙江网络警察不良信息举报

Powered by Discuz! Archiver 6.1.0  © 2001-2007 Comsenz Inc.