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

江蘇省高校計算機等級考試命題研究院 江蘇省高校計算機等級考試輔導
09二級VC++試卷評析

2009春上機試卷7

:改錯題:

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

例如:在字符串”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==' '){                  //第一次查詢或遇到空格時執(zhí)行查詢,所以flag==0

      flag=1;

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

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

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

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

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

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