55.已知在文件IN.dat中存有若干個(gè)(不多于200個(gè))四位數(shù)字的正整數(shù),函數(shù)ReadDat()讀取這若干個(gè)正整數(shù)并存入數(shù)組number中。請(qǐng)編寫函數(shù)CalValue(),其功能要求是:①求出文件中所有的正整數(shù)個(gè)數(shù)totNum;②求這些數(shù)中的各位數(shù)字之和是奇數(shù)的個(gè)數(shù)totCnt,以及滿足此條件的這些數(shù)的算術(shù)平均值totave。最后調(diào)用函數(shù)writeDat()把所求的結(jié)果輸出到OUT.dat文件中。
【答案】
void CalValue(void)
{ int i, thou, hun, ten, data;
for (i=0; i { if (!number[i]) break; if (number[i] > 0) totNum++; thou = number[i]/1000; hun = number[i]%1000/100; ten = number[i]%100/10; data = number[i]%10; if ((thou+hun+ten+data)%2) { totCnt++; totave += number[i]; } } totave /= totCnt; } 56.下列程序的功能是:計(jì)算500~800區(qū)間內(nèi)素?cái)?shù)的個(gè)數(shù)count,并按所求素?cái)?shù)的值從大到小的順序排序,再計(jì)算其間隔加、減之和,即第1個(gè)素?cái)?shù)-第2個(gè)素?cái)?shù)+第3個(gè)素?cái)?shù)-第4個(gè)素?cái)?shù)+第5個(gè)素?cái)?shù)……的值sum。請(qǐng)編寫函數(shù)primeValue()實(shí)現(xiàn)程序的要求。最后調(diào)用函數(shù)writeDat(),把結(jié)果count和sum輸出到OUT.dat文件中。 【答案】 void primeValue() { int i, j, half, yy[100]; for (i=800; i>=500; i--) { half = i/2; for (j=2; j if (i%j == 0) break; if (j >= half) { yy[count] = i; count++; } } for (i=0, j=1; i { sum += j*yy[i]; j = j*-1; } } 57.下列程序的功能是:選出5000以下符合條件的自然數(shù)。條件是:千位數(shù)字與百位數(shù)字之和等于十位數(shù)字與個(gè)位數(shù)字之和,且千位數(shù)字與百位數(shù)字之和等于個(gè)位數(shù)字與千位數(shù)字之差的10倍。計(jì)算并輸出這些四位自然數(shù)的個(gè)數(shù)count以及這些數(shù)的和sum。請(qǐng)編寫函數(shù)calValue()實(shí)現(xiàn)程序的要求,最后調(diào)用函數(shù)writeDat(),把結(jié)果count和sum輸出到OUT.dat文件中。 【答案】 void calValue() { int i, thou, hun, ten, data; for (i=5000; i>=1000; i--) { thou = i/1000; hun = i%1000/100; ten = i%100/10; data = i%10; if (thou+hun==ten+data && thou+hun==(data-thou)*10) { count++; sum += i; } } } 2011計(jì)算機(jī)等級(jí)三級(jí)數(shù)據(jù)庫考前實(shí)訓(xùn)練習(xí)匯總
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |