85.已知數(shù)據文件IN.dat中存有200個四位數(shù),并已調用讀函數(shù)Rdata()把這些數(shù)存入數(shù)組a中,請編寫函數(shù)spellNum(),其功能是:把千位數(shù)字和個位數(shù)字重新組成一個新的二位數(shù)(新二位數(shù)的十位數(shù)字是原四位數(shù)的千位數(shù)字,新二位數(shù)的個位數(shù)字是原四位數(shù)的個位數(shù)字),以及把百位數(shù)字和十位數(shù)字組成另一個新的二位數(shù)(新二位數(shù)的十位數(shù)字是原四位數(shù)的百位數(shù)字,新二位數(shù)的個位數(shù)字是原四位數(shù)的十位數(shù)字),如果新組成的兩個二位數(shù)均是奇數(shù)并且兩個二位數(shù)中至少有一個數(shù)能被5整除,同時兩個新數(shù)的十位數(shù)字均不為0,則將滿足此條件的四位數(shù)按從大到小的順序存入數(shù)組b中,并要計算滿足上述條件的四位數(shù)的個數(shù)count。最后main()函數(shù)調用寫函數(shù)Wdata(),把結果count以及數(shù)組b中符合條件的四位數(shù)輸出到OUT.dat文件中。
【答案】
void spellNum()
{ int i, thou, hun, ten, data, j;
int ab, cd;
for (i=0; i<200; i++)
{ thou = a[i]/1000;
hun = a[i]%1000/100;
ten = a[i]%100/10;
data = a[i]%10;
if (thou==0 || hun==0)
continue;
ab = 10*thou+data;
cd = 10*hun+ten;
if (ab%2==1 && cd%2==1 && (ab%5==0 || cd%5==0))
{ b[count] = a[i];
count++;
}
}
for (i=0; i for (j=i+1; j if (b[i] < b[j]) { data = b[i]; b[i] = b[j]; b[j] = data; } } 86.函數(shù)RData()實現(xiàn)從文件IN.dat中讀取一篇英文文章存入到字符串數(shù)組str中,請編寫ConvertCharA()函數(shù),其功能是:以行為單位把字符串中的所有小寫字母改寫成該字母的下一個字母,如果是字母z,則改寫成字母a。大寫字母仍為大寫字母,小寫字母仍為小寫字母,其他字符不變。把已處理的字符串仍按行重新存入字符串數(shù)組str中,最后調用函數(shù)WData(),把結果str輸出到OUT.dat文件中。原始數(shù)據文件存放的格式是:每行的寬度均小于80個字符(含標點符號和空格)。 例如,原文:Adb.Bcdza abck.LLhj 結果:Aec.Bdeab bcdl.LLik 【答案】 void ConvertCharA(void) { int i, j, str1; for (i=0; i { str1 = strlen(str[i]); for (j=0; j if (str[i][j] == 'z') str[i][j] = 'a'; else if (str[i][j]>='a' && str[i][j]<='y') str[i][j] += 1; } } 87.請補充完整程序,使得程序能實現(xiàn)以下功能: 從文件IN.dat中讀取200個整數(shù)至數(shù)組number中,求出奇數(shù)的個數(shù)cnt1和偶數(shù)的個數(shù)cnt2,以及數(shù)組number中下標為奇數(shù)的元素的算術平均值ave(保留2位小數(shù))。把結果cnt1、cnt2、ave輸出到OUT.dat文件中。 變量j的值加1。退出循環(huán)后變量k的值除以j得到數(shù)組number下標為奇數(shù)的元素值的算術平均值,再轉換成單精度實數(shù)賦給變量ave。 【答案】 i = j = k = cnt1 = cnt2 = 0; ave = 0.0; for (i=0; i { if (number[i]%2) cnt1++; else cnt2++; if (i%2) { k += number[i]; j++; } } ave = (float)k/j;
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內蒙古 |