- 相關(guān)推薦
計(jì)算機(jī)二級(jí)C++考試簡(jiǎn)單應(yīng)用題
導(dǎo)語(yǔ):計(jì)算機(jī)等級(jí)考試的試題內(nèi)容一直都是考生重要的復(fù)習(xí)資料,以下是小編為大家精心整理的計(jì)算機(jī)二級(jí)C++考試簡(jiǎn)單應(yīng)用題,歡迎大家參考!
請(qǐng)編寫(xiě)函數(shù)fun(),該函數(shù)的功能是判斷字符串是否為回文,若是則函數(shù)返回1,主函數(shù)中輸出YES;否則返回0,主函數(shù)中輸出NO。回文是指順讀和倒讀都一樣的字符串。
例如:字符串LEVEL是回文,而字符串123312就不是回文。
注意:部分源程序已存在文件kt11_2.cpp中。
請(qǐng)勿修改主函數(shù)main和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)fun的花括號(hào)中填寫(xiě)若干語(yǔ)句。
文件kt11_2.cpp的內(nèi)容如下:
#include
#include
#defineN80
intfun(char*str)
{
}
voidmain()
{ chars[N];
cout<<"Enterastring:"<
gets(s);
cout<<" ";
puts(s);
if(fun(s))
cout<<"YES ";
else
cout<<"NO "; }
【參考答案】
int fun(char *str)
{
int i,n=0,fg=1;
char *p=str;
while(*p)
{ n++; p++; }
for(i=0;i
if(str[i]==str[n-1-i]) ;
else
{ fg=0; break; }
return fg;
}
【試題解析】
本題的解題思路是:先利用循環(huán)中指針的移動(dòng)來(lái)求得字符串的長(zhǎng)度n,然后用一個(gè)for循環(huán)依次取得數(shù)組中的前半部分元素,用取得的前半部分內(nèi)的元素逐個(gè)與后半部分內(nèi)的對(duì)應(yīng)位置的元素進(jìn)行比較,如果相同,不做任何工作,接著取下一個(gè)元素,繼續(xù)比較;如果不相同,可以判斷該字符串肯定不是回文,就給標(biāo)志變量fg賦值0(fg的初始值為1)。最終把fg作為函數(shù)的返回值返回(fg值為1表明是回文,fg值為0表明不是回文)。
【計(jì)算機(jī)二級(jí)C++考試簡(jiǎn)單應(yīng)用題】相關(guān)文章:
計(jì)算機(jī)二級(jí)考試C++練習(xí)及答案10-09
全國(guó)計(jì)算機(jī)二級(jí)考試C++真題09-20
全國(guó)計(jì)算機(jī)二級(jí)考試C++精選試題及答案08-17
2016年計(jì)算機(jī)二級(jí)考試C++考試題及答案10-09
2016計(jì)算機(jī)二級(jí)考試《C++》練習(xí)題及答案10-23
2016計(jì)算機(jī)二級(jí)考試C++練習(xí)題及答案07-15
全國(guó)計(jì)算機(jī)二級(jí)考試《C++》筆試樣卷06-12
計(jì)算機(jī)二級(jí)C++考試強(qiáng)化訓(xùn)練題201710-26