20xx年3月计算机等级考试三级网络技术上机题库内容摘要:

{ } void readDat() { int i。 FILE *fp。 fp = fopen(K:\\k85\\35003017\\, r)。 for(i = 0。 i MAX。 i++) fscanf(fp, %d, amp。 a[i])。 fclose(fp)。 } void main() { int i。 readDat()。 jsVal()。 printf(满足条件的数 =%d\n, t)。 for(i = 0。 i t。 i++) printf(%d , b[i])。 printf(\n)。 writeDat()。 } void writeDat() { FILE *fp。 int i。 fp = fopen(K:\\k85\\35003017\\, w)。 fprintf(fp, %d\n, t)。 for(i = 0。 i t。 i++) fprintf(fp, %d\n, b[i])。 fclose(fp)。 } /*标准答案 */ void jsVal() {int I,thou,hun,ten,data,j。 for(I=0。 IMAX。 I++) {thou=a[I]/1000。 hun=a[I]%1000/100。 ten=a[I]%100/10。 data=a[I]%10。 if ((thou=hun)amp。 amp。 (hun=ten)amp。 amp。 (ten=data)amp。 amp。 a[I]%2!=0) {b[t]=a[I]。 t++。 } } for(I=0。 It1。 I++) for(j=I+1。 jt。 j++) if(b[I]b[j]) {data=b[I]。 b[I]=b[j]。 b[j]=data。 } } 第十二套: 函数 ReadDat()实现从文件 中读取 20 行数据存放到字符串数组 xx 中 (第行字符串 长度均小于 80)。 请编制函数 jsSort(),其函数的功能是:以行为单位对字符串按给定的条件 进行排序 ,排序后的结果仍按行重新存入字符串数组 xx 中 ,最后调用函数 WriteDat()把结果 xx 输出到文件 中。 条件:从字符串中间一分为二 ,左边部分按字符的 ASCII 值降序排序 ,排序后左边部分与右 边部分进行交换。 如果原字符串长度为奇数 ,则最中间的字符不参加处理 ,字符仍放在原位置 上。 例如:位置 0 1 2 3 4 5 6 7 8 源字符串 a b c d h g f e 1 2 3 4 9 8 7 6 5 则处理后字符串 h g f e d c b a 8 7 6 5 9 4 3 2 1 部分源程序已给出。 请勿改动主函数 main()、读数据函数 ReadDat()和输出数据函数 WriteDat()的内容。 include include char xx[20][80]。 void readDat()。 void writeDat()。 void jsSort() { /* 第 i 行文 章的内容已作为字符串存入 xx[i]为起始地址的存储单元内 */ /* 提示:先对字符串左边部分的字符数组进行降序排序,左边部分字符数组对应的下标从 0 到 strlen(xx[i])/21。 */ /* 该提示仅供解题参考,考生也可用其他方法解题 */ } void main() { readDat()。 jsSort()。 writeDat()。 } void readDat() { FILE *in。 int i = 0。 char *p。 in = fopen(K:\\k85\\35003101\\, r)。 while(i 20 amp。 amp。 fgets(xx[i], 80, in) != NULL) { p = strchr(xx[i], 39。 \n39。 )。 if(p) *p = 0。 i++。 } fclose(in)。 } void writeDat() { FILE *out。 int i。 out = fopen(K:\\k85\\35003101\\, w)。 for(i = 0。 i 20。 i++) { printf(%s\n, xx[i])。 fprintf(out, %s\n, xx[i])。 } fclose(out)。 } /*标准答案 */ void jsSort() {int I,j,k,strl,half。 char ch。 for(I=0。 I20。 I++) {strl=strlen(xx[I])。 half=strl/2。 for(j=0。 jhalf1。 j++) for(k=j+1。 khalf。 k++) if (xx[I][j]xx[I][k]) {ch=xx[I][j]。 xx[I][j]=xx[I][k]。 xx[I][k]=ch。 } for(j=half1,k=strl1。 j=0。 j,k) {ch=xx[I][j]。 xx[I][j]=xx[I][k]。 xx[I][k]=ch。 } } } 第十三套: include int t, sum。 void writeDAT()。 void countValue() { } void main() { t = sum = 0。 countValue()。 printf(素数的个数 =%d\n, t)。 printf(满足条件素数值的和 =%d, sum)。 writeDAT()。 } void writeDAT() { FILE *fp。 fp = fopen(K:\\k85\\35000327\\, w)。 fprintf(fp, %d\n%d\n, t, sum)。 fclose(fp)。 } /*标准答案 */ void countValue() {int I,j,half,hun,ten,data。 for(I=101。 I1000。 I++) {hun=I/100。 ten=I%100/10。 data=I%10。 if(hun==(ten+data)%10) {half=I/2。 for(j=2。 jhalf。 j++) if(I%j==0) break。 if(j=half) {t++。 sum+=I。 } } } } 第十四套: include include include define MAX 1000 int xx[MAX], odd = 0, even = 0。 double aver = , totfc =。 void WriteDat(void)。 int ReadDat(void) { FILE *fp。 int i。 if((fp = fopen(K:\\k85\\35002813\\, r)) == NULL) return 1。 for(i = 0。 i MAX。 i++) fscanf(fp, %d, amp。 xx[i])。 fclose(fp)。 return 0。 } void Compute(void) { } void main() { int i。 for(i = 0。 i MAX。 i++) xx[i] = 0。 if(ReadDat()) { printf(数据文件 不能打开 !\007\n)。 return。 } Compute()。 printf(ODD=%d\nEVEN=%d\nAVER=%lf\nTOTFC=%lf\n, odd, even, aver, totfc)。 WriteDat()。 } void WriteDat(void) { FILE *fp。 fp = fopen(K:\\k85\\35002813\\, w)。 fprintf(fp, %d\n%d\n%lf\n%lf\n, odd, even, aver, totfc)。 fclose(fp)。 } /*标准答案 */ int ReadDat(void) {FILE *fp。 int I,j。 if((fp=fopen(,r))==NULL) return 1。 for(I=0。 I100。 I++) {for(j=0。 j10。 j++) fscanf(fp, %d, amp。 xx[I*10+j])。 fscanf(fp, 39。 n)。 if(feof(fp)) break。 } fclose(fp)。 return 0。 } void Compute(void) {int I, yy[MAX]。 for(I=0。 I1000。 I++) if(xx[I]%2){odd++。 ave1+=xx[I]。 yy[odd1]=xx[I]。 } else{even++。 ave2+=xx[I]。 } ave1/=odd。 ave2/=even。 for(I=0。 Iodd。 I++) totfc+=(yy[I]ave1)*(yy[I]ave1)/odd。 } 第十五套: include include include unsigned char xx[50][80]。 int maxline = 0。 /* 文章的总行数 */ int ReadDat(void)。 void WriteDat(void)。 void encryptChar() { /* 第 i 行内容已作为字符串存入 xx[i]为起始地址的存储单元内 */ /* 请使用中间变量来存放替代关系处理后的值 val */ /* 例如: val = (xx[i][j] * 17) % 256。 */ /* 该提示仅供解题参考,考生也可用其他方法解题 */ unsigned int val。 } void main() { if(ReadDat()) { printf(数据文件 不能打开 !\n\007)。 return。 } encryptChar()。 WriteDat()。 } int ReadDat(void) { FILE *fp。 int i = 0。 unsigned char *p。 if((fp = fopen(K:\\k85\\35000414\\, r)) == NULL) return 1。 while(fgets(xx[i], 80, fp) != NULL) { p = strchr(xx[i], 39。 \n39。 )。 if(p) *p = 0。 i++。 } maxline = i。 fclose(fp)。 return 0。 } void WriteDat(void) { FILE *fp。 int i。 fp = fopen(K:\\k85\\35000414\\, w)。 for(i = 0。 i maxline。 i++) { printf(%s\n, xx[i])。 fprintf(fp, %s\n, xx[i])。 } fclose(fp)。 } /*标准答案 , void encryptChar() {int I。 char *pf。 for(I=0。 Imaxline。 I++) {pf=xx[I]。 while(*pf!=0) {if(((*pf*17%256)%2!=0)||*pf*17%256=32) {pf++。 continue。 } *pf=*pf*11%256。 pf++。 } } } 第十六套: include include typedef struct { int x1, x2, x3。 } Data。 Data aa[200], bb[200]。 void readDat()。 void writeDat(int count)。 int jsSort() { } void main() { int count。 readDat()。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。