鸭子tv国产极品在线观看_成人69视频在线播放_91精品免费在线观看_亚洲AT永久偷窥无码精品_国产精品自产拍在线观看涩浪潮久

江蘇省高校計(jì)算機(jī)等級(jí)考試命題研究院 江蘇省高校計(jì)算機(jī)等級(jí)考試輔導(dǎo)
2015年3月全國(guó)二級(jí)C語(yǔ)言考試真題第3套

106套

一、基本操作

   給定程序中,函數(shù)fun的作用是:不斷從終端讀入整數(shù),由變量a統(tǒng)計(jì)大于0的個(gè)數(shù),用變量c來統(tǒng)計(jì)小于0的個(gè)數(shù),當(dāng)輸入0時(shí)結(jié)束輸入,并通過形參pa和pb把統(tǒng)計(jì)的數(shù)據(jù)傳回主函數(shù)進(jìn)行輸出。

    請(qǐng)?jiān)诔绦虻南聞澗處填入正確的內(nèi)容并把下劃線刪除,使程序得出正確的結(jié)

果。

    注意:源程序存放在考生文件夾下的BLANK1.C中。

 

          不得增行或刪行,也不得更改程序的結(jié)構(gòu)!

 #include  <stdio.h>
void  fun( int *px,  int  *py)
{
/**********found**********/
   int  __(1)__ ;
   scanf( "%d", &k );
/**********found**********/
   while  __(2)__
   {  if (k>0 ) a++;
      if(k<0 ) b++;
/**********found**********/
      __(3)__;
   }
   *px=a;  *py=b;
}
main()
{  int  x,  y;
   fun( &x, &y );
   printf("x=%d  y=%d\n", x,y );
}

 

   二、簡(jiǎn)單應(yīng)用

  給定程序modi1.c的主函數(shù)中,將a、b、c三個(gè)結(jié)點(diǎn)鏈成一個(gè)單向鏈表,并給各結(jié)點(diǎn)的數(shù)據(jù)域賦值,函數(shù)fun( )的作用是:累加鏈表結(jié)點(diǎn)數(shù)據(jù)域中的數(shù)據(jù)作為函數(shù)值返回。

    請(qǐng)改正函數(shù)fun中指定部位的錯(cuò)誤,使它能得出正確的結(jié)果。

 

    注意:不要改動(dòng)main函數(shù),不得增行或刪行,也不得更改程序的結(jié)構(gòu)。

#include  <stdio.h>
typedef  struct  list
{  int  data;
   struct list  *next;
} LIST;
int fun(LIST *h)
{  LIST  *p;
/**********found**********/
   int  t;
   p=h;
/**********found**********/
   while( *p )
   {
/**********found**********/
      t=t+p.data;
      p=(*p).next;             
   }
   return  t;
}
main()
{  LIST  a, b, c, *h;
   a.data=34;  b.data=51;  c.data=87;  c.next='\0';
   h=&a;  a.next=&b;  b.next=&c;
   printf("總和 = %d\n",fun( h ));
}

 

 

   三、綜合應(yīng)用

  請(qǐng)編寫函數(shù)fun,其功能是分別統(tǒng)計(jì)形參t所指二維數(shù)組中字母A和C的個(gè)數(shù)。

    注意:部分源程序存在PROG1.C中,請(qǐng)勿改動(dòng)主函數(shù)main和其他函數(shù)中的任何

 

內(nèi)容,僅在函數(shù)fun的花括號(hào)中填入所編寫的若干語(yǔ)句。

 #include  <stdio.h>
#include  <stdlib.h>
#define  M  14
void NONO();
void  fun( char (*t)[M], int *a ,int *c)
{

 

}

void  get( char (*s)[M] )
{  int  i, j;
   for( i=0; i<M; i++ )
   {  for( j=0; j<M; j++)
      {  s[i][j]=65+rand()%12; printf( "%c ",s[i][j]); }
      printf("\n");
   }
}

main()
{  char  a[M][M];
   int   x, y;
   get (a);
   fun ( a, &x,&y );
   printf("A = %d   C = %d\n",x,y);
   NONO();
}

void NONO()
{/* 本函數(shù)用于打開文件,輸入數(shù)據(jù),調(diào)用函數(shù),輸出數(shù)據(jù),關(guān)閉文件。 */
  FILE *fp, *wf ;
  int i, j, x, y ;
  char  a[M][M];

  fp = fopen("in.dat","r") ;
  wf = fopen("out.dat","w") ;
  for( i=0; i<M; i++ )
  {  for( j=0; j<M; j++)
     {  fscanf(fp, "%c ", &a[i][j]); }
  }
  fun ( a, &x,&y );
  fprintf(wf, "A=%d\n", x) ;
  fprintf(wf, "C=%d\n", y) ;
  fclose(fp) ;
  fclose(wf) ;
}

 

 

一、基本操作答案

 

【參考答案】

 

(1)    a=0,b=0,k

(2)    k!=0

(3)    scanf( "%d", &k )

 

【考點(diǎn)分析】

 

主要考察考生對(duì)循環(huán)結(jié)構(gòu)的理解。

 

【解題思路】

 

填空1a=0,b=0,k下面的scanf函數(shù)用到變量k,需要提前定義,在while循環(huán)中使用了臨時(shí)存放正負(fù)數(shù)個(gè)數(shù)的變量a,b,因此也要提前定義。

 

填空2( k!=0 )根據(jù)題意,輸入0時(shí)結(jié)束程序,因此當(dāng)k!=0時(shí)進(jìn)入循環(huán)記錄正負(fù)數(shù)的個(gè)數(shù)。

 

填空3scanf( "%d", &k ) 需要不斷從終端輸入整數(shù),因此在循環(huán)體內(nèi)添加輸入操作。

 

 二、簡(jiǎn)單應(yīng)用答案

 

【參考答案】

 

(1)    int t;改為int t=0;

(2)    *p 改為p或者p!=NULL

(3)    p.data改為p->data

 

【考點(diǎn)分析】

 

主要考察考生對(duì)于操作符.->的異同的理解,指針只能有->,數(shù)組元素可以有.或者->

 

【解題思路】

 

(1) int t;改為int t=0; 題目中變量t是用來存放累加和的,必須初始化。

(2)*p 改為p或者p!=NULL,題目中*p是結(jié)構(gòu)體,不能轉(zhuǎn)化為bool型;

 

(3)p.data改為p->datap是指針,只能用p->,不能用p.。

 

三、綜合應(yīng)用答案

【參考答案】

 

int i=0,j=0;//循環(huán)統(tǒng)計(jì)的下標(biāo)

         *a=0;//初始化a字符統(tǒng)計(jì)的個(gè)數(shù)

         *c=0; //初始化c字符統(tǒng)計(jì)的個(gè)數(shù)

         for(i=0;i<M;i++)//

         {

                   for(j=0;j<M;j++)//

                   {

                            if(t[i][j]=='A')//字符是a,計(jì)數(shù)

                                     (*a)++;

                            if(t[i][j]=='C') //字符是c,計(jì)數(shù)

                                     (*c)++;

                    }

         }

 

【考點(diǎn)分析】

 

主要考察考生對(duì)多重循環(huán)的理解與使用,以及字符串的比較

 

【解題思路】

 

對(duì)二維數(shù)組的行列分別循環(huán),行優(yōu)先,查找數(shù)組中元素為A或者C,分別對(duì)其進(jìn)行計(jì)數(shù)