亚洲免费乱码视频,日韩 欧美 国产 动漫 一区,97在线观看免费视频播国产,中文字幕亚洲图片

      1. <legend id="ppnor"></legend>

      2. 
        
        <sup id="ppnor"><input id="ppnor"></input></sup>
        <s id="ppnor"></s>

        2016年計算機三級考試網(wǎng)絡技術精選試題及答案(2)

        字號:


            1.函數(shù)ReadDat()的功能是實現(xiàn)從文件IN5.DAT中讀取一篇英文文章存入到字符串數(shù)組xx中。請編制函數(shù)ConvertCharA(),該函數(shù)的功能是:以行為單位把字符串中的所有小寫字母改寫成該字母的下一個字母,如果是字母z,則改寫成字母a。大寫字母仍為大寫字母,小寫字母仍為小寫字母,其他字符不變。把已處理的字符串仍按行重新存入字符串數(shù)組xx中,最后調(diào)用函數(shù)WriteDat()把結果xx輸出到文件OUT5.DAT中。
            例如,原文:Adb.Bcdza
            abck.LLhj
            結果:Aec.Bdeab
            bcdl.LLik
            原始數(shù)據(jù)文件存放的格式是:每行的寬度均小于80個字符,含標點符號和空格。
            注意:部分源程序已給出。
            請勿改動主函數(shù)main()、讀函數(shù)ReadDat()和寫函數(shù)WriteDat()的內(nèi)容。
            #include
            #include
            #include
            char xx[50][80] ;
            int maxline = 0 ;/* 文章的總行數(shù) */
            int ReadDat(void) ;
            void WriteDat(void) ;
            void ConvertCharA(void)
            {
            int i,j; /*定義循環(huán)控制變量*/
            int str; /*存儲字符串的長度*/
            for(i=0;i
            {
            str=strlen(xx[i]); /*求得當前行的字符串的長度*/
            for(j=0;j
            if(xx[i][j]>='a' && xx[i][j]<='z') /*如果是小寫字母*/
            if(xx[i][j]=='z')
            xx[i][j]='a'; /*如果是小寫字母z,則改寫成字母a*/
            else
            xx[i][j]+=1; /*其他的小寫字母則改寫為該字母的下一個字母*/
            }
            }
            void main()
            {
            system("CLS");
            if(ReadDat())
            {
            printf("數(shù)據(jù)文件IN5.DAT不能打開!\n\007") ;
            return ;
            }
            ConvertCharA() ;
            WriteDat() ;
            }
            int ReadDat(void)
            {
            FILE *fp ;
            int i =0 ;
            char *p ;
            if((fp = fopen("IN5.DAT", "r")) == NULL) return 1 ;
            while(fgets(xx[i], 80, fp) !=NULL)
            {
            p = strchr(xx[i], '\n') ;
            if(p) *p = 0 ;
            i++;
            }
            maxline = i ;
            fclose(fp) ;
            return 0 ;
            }
            void WriteDat(void)
            {
            FILE *fp ;
            int i ;
            system("CLS");
            fp = fopen("OUT5.DAT", "w") ;
            for(i = 0 ; i < maxline ; i++)
            {
            printf("%s\n", xx[i]) ;
            fprintf(fp, "%s\n", xx[i]) ;
            }
            fclose(fp) ;
            }
            2.在文件IN6.DAT中有200個正整數(shù),且每個數(shù)均在1000至9999之間。函數(shù)readDat()的功能是讀取這200個數(shù)存放到數(shù)組aa中。請編制函數(shù)jsSort(),該函數(shù)的功能是:要求按每個數(shù)的后3位的大小進行降序排列,將排序后的前10個數(shù)存入數(shù)組b中,如果數(shù)組b中出現(xiàn)后3位相等的數(shù),則對這些數(shù)按原始4位數(shù)據(jù)進行升序排列。最后調(diào)用函數(shù)writeDat()把結果bb輸出到文件OUT6.DAT中。
            例如:處理前 9012 5099 6012 7025 8088
            處理后 5099 8088 7025 6012 9012
            注意:部分源程序已給出。
            請勿改動主函數(shù)main()、讀函數(shù)readDat()和寫函數(shù)writeDat()的內(nèi)容。
            #include
            #include
            #include
            int aa[200], bb[10] ;
            void readDat();
            void writeDat();
            void jsSort()
            {
            int i,j; /*定義循環(huán)控制變量*/
            int temp; /*定義數(shù)據(jù)交換時的暫存變量*/
            for(i=0;i<199;i++) /*用選擇法對數(shù)組進行排序*/
            for(j=i+1;j<200;j++)
            {
            if(aa[i]%1000
            {
            temp=aa[i];
            aa[i]=aa[j];
            aa[j]=temp;
            }
            else if(aa[i]%1000==aa[j]%1000) /*如果后3位數(shù)相等*/
            if(aa[i]>aa[j]) /*則要按原4位數(shù)的值進行升序排序*/
            {
            temp=aa[i];
            aa[i]=aa[j];
            aa[j]=temp;
            }
            }
            for(i=0;i<10;i++) /*將排序后的前10個數(shù)存入數(shù)組b中*/
            bb[i]=aa[i];
            }
            void main()
            {
            readDat() ;
            jsSort() ;
            writeDat() ;
            }
            void readDat()
            {
            FILE *in ;
            int i ;
            in = fopen("IN6.DAT", "r") ;
            for(i = 0 ; i < 200 ; i++) fscanf(in, "%d,", &aa[i]);
            fclose(in) ;
            }
            void writeDat()
            {
            FILE *out ;
            int i ;
            out = fopen("OUT6.DAT", "w") ;
            system("CLS");
            for (i = 0 ; i < 10 ; i++)
            {
            printf("i=%d,%d\n", i + 1, bb[i]) ;
            fprintf(out, "%d\n", bb[i]) ;
            }
            fclose(out) ;
            }
            3.函數(shù)ReadDat( )的功能是實現(xiàn)從文件IN7.DAT中讀取一篇英文文章存入到字符串數(shù)組xx中。請編制函數(shù)SortCharD( ),該函數(shù)的功能是:以行為單位對字符按從大到小的順序進行排序,排序后的結果仍按行重新存入字符串數(shù)組xx中,最后調(diào)用函數(shù)WriteDat( )把結果xx輸出到文件OUT7.DAT中。
            例如,原文:dAe,BfC
            CCbbAA
            結果:fedCBA,
            bbCCAA
            原始數(shù)據(jù)文件存放的格式是:每行的寬度均小于80個字符,含標點符號和空格。
            注意:部分源程序已給出。
            請勿改動主函數(shù)main( )、讀函數(shù)ReadDat( )和寫函數(shù)WriteDat( )的內(nèi)容。
            #include
            #include
            #include
            char xx[50][80];
            int maxline=0;
            int ReadDat(void);
            void WriteDat(void);
            void SortCharD()
            {
            int i,j,k; /*定義循環(huán)控制變量*/
            int str; /*存儲字符串的長度*/
            char temp; /*定義數(shù)據(jù)交換時的暫存變量*/
            for (i=0;i
            {
            str=strlen(xx[i]); /*求得當前行的字符串長度*/
            for(j=0;j
            for(k=j+1;k
            if(xx[i][j]
            {
            temp=xx[i][j];
            xx[i][j]=xx[i][k];
            xx[i][k]=temp;
            }
            }
            }
            void main()
            {
            system("CLS");
            if (ReadDat())
            {
            printf("數(shù)據(jù)文件IN7.DAT不能打開!\n\007");
            return;
            }
            SortCharD();
            WriteDat();
            }
            int ReadDat(void)
            {
            FILE *fp;
            int i=0;
            char *p;
            if((fp=fopen("IN7.DAT","r"))==NULL)
            return 1;
            while (fgets(xx[i],80,fp)!=NULL)
            {
            p=strchr(xx[i],'\n');
            if (p) *p=0;
            i++;
            }
            maxline=i;
            fclose(fp);
            return 0;
            }
            void WriteDat()
            {
            FILE *fp;
            int i;
            system("CLS");
            fp=fopen("OUT7.DAT","w");
            for(i=0;i
            {
            printf("%s\n",xx[i]);
            fprintf(fp,"%s\n",xx[i]);
            }
            fclose(fp);
            }
            4.對10個候選人進行選舉,現(xiàn)有一個100條記錄的選票數(shù)據(jù)文件IN8.DAT,其數(shù)據(jù)存放的格式是每條記錄的長度均為10位,第一位表示第一個人的選中情況,第二位表示第二個人的選中情況,依次類推。每一位內(nèi)容均為字符0或1,1表示此人被選中,0表示此人未被選中,若一張選票選中人數(shù)小于等于5個人時則被認為是無效的選票。給定函數(shù)ReadDat()的功能是把選票數(shù)據(jù)讀入到字符串數(shù)組xx中。請編制函數(shù)CountRs()來統(tǒng)計每個人的選票數(shù)并把得票數(shù)依次存入yy[0]到y(tǒng)y[9]中,最后調(diào)用函數(shù)WriteDat()把結果yy輸出到文件OUT8.DAT中。
            注意:部分源程序已給出。
            請勿改動主函數(shù)main()、讀函數(shù)ReadDat()和寫函數(shù)WriteDat()的內(nèi)容。
            #include
            #include
            char xx[100][11];
            int yy[10];
            int ReadDat(void);
            void WriteDat(void);
            void CountRs(void)
            {
            int i,j; /*定義循環(huán)控制變量*/
            int cnt; /*用來存儲每張選票中選中人數(shù),以判斷選票是否有效*/
            for(i=0;i<10;i++) /*初始化數(shù)組yy*/
            yy[i]=0;
            for(i=0;i<100;i++) /*依次取每張選票進行統(tǒng)計*/
            {
            cnt=0; /*初始化計數(shù)器變量*/
            for(j=0;j<10;j++) /*統(tǒng)計每張選票的選中人數(shù)cnt*/
            if(xx[i][j]=='1')
            cnt++;
            if(cnt>5) /*當cnt值大于5時為有效選票*/
            {
            for(j=0;j<10;j++) /*統(tǒng)計有效選票*/
            if(xx[i][j]=='1')
            yy[j]++;
            }
            }
            }
            void main()
            {
            int i;
            for (i=0; i<10; i++)
            yy[i] = 0;
            if(ReadDat())
            {
            printf("選票數(shù)據(jù)文件IN8.DAT不能打開!\007\n");
            return;
            }
            CountRs();
            WriteDat();
            }
            int ReadDat(void)
            {
            FILE *fp;
            int i;
            char tt[13];
            if((fp = fopen("IN8.DAT", "r")) == NULL)
            return 1;
            for (i = 0; i < 100; i++)
            {
            if(fgets(tt, 13, fp) == NULL)
            return 1;
            memcpy(xx[i], tt, 10);
            }
            fclose(fp);
            return 0;
            }
            void WriteDat(void)
            {
            FILE *fp;
            int i;
            fp = fopen("OUT8.DAT", "w");
            for(i = 0; i < 10; i++)
            {
            fprintf(fp, "%d\n", yy[i]);
            printf("第%d個人的選票數(shù)=%d\n", i+1, yy[i]);
            }
            fclose(fp);
            }