<samp id="uu9tx"></samp>
        <samp id="uu9tx"><tr id="uu9tx"><nav id="uu9tx"></nav></tr></samp>
        <delect id="uu9tx"><legend id="uu9tx"><meter id="uu9tx"></meter></legend></delect>
                <samp id="uu9tx"><tr id="uu9tx"><meter id="uu9tx"></meter></tr></samp><nav id="uu9tx"></nav>
                <samp id="uu9tx"></samp>
                  <samp id="uu9tx"><tr id="uu9tx"><meter id="uu9tx"></meter></tr></samp>
                  江蘇省高校計算機等級考試命題研究院 江蘇省高校計算機等級考試輔導
                  09二級VC++試卷評析

                  2009春上機試卷7

                  :改錯題:

                  【題目】以下程序的功能是:查找某個指定單詞在字符串中出現的次數,單詞之間由一個或多個空格分隔,判斷字符時不區分字母的大小寫:

                  例如:在字符串”I am a studeng. My Name is Tony. I am twenty”中包含T的單詞有3

                  含有錯誤的源程序如下:

                  #include <iostream.h>

                  char convert(char c)                      //本函數實現將大寫字母轉換為小寫字母

                  {if(c>='A' && c<='Z')

                    return c+'A'-'a';                      //因為是轉化為小寫,所以應該為c+'a'-'A'

                   return c;

                  }

                  int search(char *str, char *s)

                  {int count=0,flag=0;

                  for(;*str;str++){

                           if(flag || *str==' '){                  //第一次查詢或遇到空格時執行查詢,所以flag==0

                        flag=1;

                        while(*(str++)==' ');              //跳過空格,使其指向有字母的單詞

                            str--;                      //str指向空格后的第一個字符

                        for(char *str1=str;*str1==’ ’ && *str;str1++){   //本循環實現查找T,所以應為*str1!=’ ’

                           if(convert(*str1)==convert(*s1))     //如果查找到T,則將count1,并且跳出for循環

                  {count++;                   //因為標明該單詞中有T,就無需再繼續查找該單詞中的其他單詞

                  return count;    

                           }

                       }

                    }

                   }

                     return count;

                  }

                   

                  void main()

                  {char str[40]=" I am a studeng. My Name is Tony. I am twenty ", ch=’T’;

                   cout<<"字符串"<<"中單詞"<<s<<"出現了"<<search(str,s)<<""<<endl;

                  }

                   

                   

                   

                   

                   

                   

                   

                   

                   

                   

                                                                                                                                                                                         u

                  亚洲欧美日韩国产一区二区三区_全亚洲免费一级黄片_国产一区二区三区不卡视频手机版_国产污三级网站在线观看