19.已知數(shù)據(jù)文件IN.dat中存有200個(gè)四位數(shù),并已調(diào)用讀函數(shù)rdata()把這些數(shù)存入數(shù)組a中,請(qǐng)編寫(xiě)函數(shù)evenvalue(),其功能是:如果四位數(shù)每位上的數(shù)字均是0、2、4、6或8,則統(tǒng)計(jì)出滿足此條件的四位數(shù)的個(gè)數(shù)count,并把這些四位數(shù)按從大到小的順序存入數(shù)組b中。最后main()函數(shù)調(diào)用寫(xiě)函數(shù)wdata(),把結(jié)果count以及數(shù)組b中符合條件的四位數(shù)輸出到OUT.dat文件中。
【答案】
void evenvalue()
{ int bb[4];
int i, j, k, flag;
for (i=0; i<200; i++)
{ bb[0] = a[i]/1000;
bb[1] = a[i]%1000/100;
bb[2] = a[i]%100/10;
bb[3] = a[i]%10;
for (j=0; j<4; j++)
{ if (bb[j]%2 == 0)
{ flag = 1;
}
else
{ flag = 0;
break;
}
}
if (flag == 1)
{ b[count] = a[i];
count++;
}
}
for (i=0; i for (j=i+1; j if (b[i] < b[j]) { k = b[i]; b[i] = b[j]; b[j] = k; } } 20.函數(shù)RData()實(shí)現(xiàn)從文件IN.dat中讀取一篇英文文章存入字符串?dāng)?shù)組StrResult中;請(qǐng)編寫(xiě)Strmove()函數(shù),其功能是:以行為單位,依次把字符串中所有小寫(xiě)字母"o"左邊的字符串內(nèi)容移到該字符串的右邊存放,然后把小寫(xiě)字母"o"刪除,余下的字符串內(nèi)容移到已處理字符串的左邊存放,之后把已處理的字符串仍按行重新存入字符串?dāng)?shù)組StrResult中。最后main()函數(shù)調(diào)用函數(shù)WData(),把結(jié)果StrResult輸出到文件OUT.dat中。原始數(shù)據(jù)文件存放的格式是:每行的寬度均小于80個(gè)字符,含標(biāo)點(diǎn)符號(hào)和空格。 例如,原文:n any field.Yu can create an index you have the corlrectrecord. 結(jié)果:n any field.Yu can create an index rd.yu have the crlrectrec 【答案】 void Strmove(void) { int i, j, k; char buf[80]; for (i=0; i { j = strlen(StrResult[i])-1; while (StrResult[i][j]!='o' && j>=0) j--; if (j < 0) continue; StrResult[i][j] = 0; strcpy(buf, &StrResult[i][j+1]); k = j = 0; while (StrResult[i][j]) { while (StrResult[i][j]!='o' && StrResult[i][j]) j++; if (!StrResult[i][j]) { strcat(buf, &StrResult[i][k]); break; } StrResult[i][j] = 0; strcat(buf, &StrResult[i][k]); j++; k = j; } strcpy(StrResult[i], buf); } } 21.函數(shù)RData()實(shí)現(xiàn)從文件IN.dat中讀取一篇英文文章并存入到字符串?dāng)?shù)組StrResult中,請(qǐng)編寫(xiě)函數(shù)StrRes(),其功能是:以行為單位對(duì)行中以空格或標(biāo)點(diǎn)符號(hào)為分隔的所有單詞進(jìn)行倒排。最后把已處理的字符串(應(yīng)不含標(biāo)點(diǎn)符號(hào))仍按行重新存入字符串?dāng)?shù)組StrResult中,最后調(diào)用函數(shù)WData(),把結(jié)果StrResult輸出到文件OUT.dat中。原始數(shù)據(jù)文件存放的格式是:每行的寬度均小于80個(gè)字符,含標(biāo)點(diǎn)符號(hào)和空格。 例如,原文:You He Me I am a student. 結(jié)果:Me He You student a am I 【答案】 char StrRes(void) { int i, j, k, strl, l; for (i=0; i for (j=0; j<(int)strlen(StrResult[i]); j++) if (!isalpha(StrResult[i][j]) && StrResult[i][j]!=' ') StrResult[i][j] = ' '; for (l=0; l { char ch[80] = {0}; char pp[80] = {0}; strl = strlen(StrResult[l]); i = strl-1; k = 0; while(1) { while (isalpha(StrResult[l][i]) && i >= 0) { for (j=k; j>=0; j--) pp[j+1] = pp[j]; pp[0] = StrResult[l][i]; k++; i--; } strcat(ch, pp); strcpy(pp, ""); k = 0; if (i < 0) break; while (!isalpha(StrResult[l][i]) && i >= 0) { for (j=k; j>=0; j--) pp[j+1] = pp[j]; pp[0] = StrResult[l][i]; k++; i--; } strcat(ch, pp); strcpy(pp, ""); k = 0; if (i < 0) break; } strcpy(StrResult[l], ch); } } 2011計(jì)算機(jī)等級(jí)三級(jí)數(shù)據(jù)庫(kù)考前實(shí)訓(xùn)練習(xí)匯總
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |