。1)仔細(xì)閱讀題目和程序知道,strlen是求字符串長度的函數(shù),s應(yīng)該是字符指針。而形參s被定義成了字符變量,因此應(yīng)該改為:void fun(char *s,char *t)。(2)第2處錯誤為t[2*d-1]='\0';,因?yàn)闇p1是多余的,新字符串串長是原來串長的2倍,因此應(yīng)該改為t[2*d]='\0';。
三、編程題
函數(shù)fun的功能是:將s所指字符串中除了下標(biāo)為奇數(shù)、同時ASCII值也為奇數(shù)的字符之外,其余的所有字符都刪除,串中剩余字符所形成的一個新串放在t所指的數(shù)組中。
例如,若s所指字符串中的內(nèi)容為:“ABCDEFG 12345”,其中字符A的ASCII碼值雖為奇數(shù),但所在元素的下標(biāo)為偶數(shù),因此必需刪除;而字符1的ASCII碼值為奇數(shù),所在數(shù)組中的下標(biāo)也為奇數(shù),因此不應(yīng)當(dāng)刪除,其他依此類推。最后t所指的數(shù)組中的內(nèi)容應(yīng)是:“135”。
注意:部分源程序已給出。請勿改動主函數(shù)main和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)fun的花括號中填入所編寫的若干語句。
#include <stdio.h>
#include <string.h>
void fun(char *s,char t[])
{
}
main()
{
char s[100],t[100];
printf("Please enter string S:");
scanf("%s",s);
fun(s,t);
printf(" The result is: %s\n",t);
}
【答案與解析】
相關(guān)推薦:2009年9月計算機(jī)等級考試二級C語言模擬試題(1)北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |