亚洲国产福利在线一二三观看_精品国产伦一区二区三区欲臀_国产a∨视频精品视频护士_精品八戒人妻少妇av

江蘇省高校計(jì)算機(jī)等級(jí)考試命題研究院 江蘇省高校計(jì)算機(jī)等級(jí)考試輔導(dǎo)
c語言上機(jī)模擬

 一、改錯(cuò)題(18)

    函數(shù)Void fun(char str[][],int m*pt)的功能是:將數(shù)組str中的m(1mlo)個(gè)字

符串依次連接起來,組成一個(gè)新串,放入pt所指的字符數(shù)組中。

    例如,把3個(gè)串"abc""CD"、"EF"連起來,所得新字符串是"abcCDEF"。

    含有錯(cuò)誤的源程序如下:

  1    #include<stdioh>

  2    #include<stringh>

  3    void fun(char str[][],int m*pt)

  4    {

  5      int k,qi;

  6      for(k=0k<m;k++)

  7      {

  8       q=strlen(str[k]);

  9       for(i=O;i<qi++)   

  10          pt[i]=str[ki];

  11      pt+=q;

  12      pt[i]='\0;

  13      }

  14    }

  15    main()

  16    {

  17    int mh;

  18    char s[10][10]P[120];

  19    printf("\nPlease enter m")

  20    scanf("%d",&m);

  21    gets(s);

  22    printf("\nPlease enter%d string\n"m);

  23    for(h=0;h<mh++)  gets(s[h]);

  24    fun(s,pm);

  25    printf("\nThe result is%s\n",p);

  26   }

    【要求】

  1•將上述程序錄人到文件myflc中,根據(jù)題目要求及程序中語句之間的邏輯關(guān)系對(duì)

程序中的錯(cuò)誤進(jìn)行修改。

  2•改錯(cuò)時(shí),可以修改語句中的一部分內(nèi)容,調(diào)整語句次序,增加少量的變量說明或編譯

   預(yù)處理命令,但不能增加其他語句,也不能刪去整條語句。

  3.改正后的源程序(文件名myflc)必須放在考試軟盤的根目錄下,供閱卷用,否則不

  予評(píng)分。

  二:編程題(22)

  1.函數(shù)void fun(int m, int *k, int xx[])的功能是:將所有大于1小于整數(shù)m的非素?cái)?shù)存入

 xx所指數(shù)組中,非素?cái)?shù)的個(gè)數(shù)通過k傳回

  2.編寫main函數(shù),從鍵盤輸入m,調(diào)用fun函數(shù),將函數(shù)fun返回的全部數(shù)據(jù)寫入文件myf2.out,

   例如;若輸入10,則輸出為4以及4 6 8 9

  要求:

  1.將源文件取名為myf2.c,輸出結(jié)果為myf2.out

  答案:

    一、改錯(cuò)題   

    1.第3void fun(char str[][],int m,*pt)  

           改為void fun(char str[][10]int m,char *pt)

    2•第10pt[i]=str[k,i];    改為pt[i]=str[k][i];

    3.12pt[i]='\0';           改為pt[0]='\0';

4.24 fun(s,p,m);         改為fun(s,m,p);

二編程題:

#include <stdio.h>

void fun( int m, int *k, int xx[ ])

{

  int i,j;

  *k=0;

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

  {

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

       if(i%j==0)  break;

     if(j<i) xx[(*k)++]=i;

}

     } 

    main() 

    {

      int m,n,zz[100]

      FILE  *out

      if((out=fopen("myf2.out","w"))==NULL)

      {

        printf("open file myf2out failed!\n")

        exit(0);

       }

     printf("\nPlease enter n(10<=n<=100)");

     scanf("%d"&n);

     fun(n,&m,zz);   

     fprintf(out"\n\nThere are%d non-prime numbers less than%d",m,n)

     for(n=0;n<mn++)

       fprintf(out,"\n%4d"zz[n]);

     fclose(out)   

    } 

    分析:本題主要考查的是求素?cái)?shù)的算法。本題的基本思路是判斷從2到指定數(shù)m之間

的每個(gè)數(shù)是素?cái)?shù)還是非素?cái)?shù)。   

    判斷某數(shù)是否為素?cái)?shù)的算法思想是:判斷此數(shù)是否只能被1和其自身整除,而不能被其

他任何數(shù)整除。若能被1到自身之間的任何一個(gè)數(shù)整除,則此數(shù)為非素?cái)?shù),將此數(shù)存放到數(shù)’

XX中,并且指針k所指向變量中的數(shù)值加1。