全国计算机等级考试三级c语言程序设计上机考试习题集20xx年版(编辑修改稿)内容摘要:
0。 sell[i].dj=atoi(ch)。 memcpy(ch,str+18,5)。 ch[5]=0。 sell[i].sl=atoi(ch)。 sell[i].je=(long)sell[i].dj*sell[i].sl。 } fclose(fp)。 } void WriteDat(void) { FILE *fp。 int i。 fp=fopen(,w)。 for(i=0。 i100。 i++){ printf(%s %s %4d %5d %5d\n, sell[i].dm,sell[i].mc,sell[i].dj,sell[i].sl,sell[i].je)。 fprintf(fp,%s %s %4d %5d %5d\n, sell[i].dm,sell[i].mc,sell[i].dj,sell[i].sl,sell[i].je)。 } fclose(fp)。 } ***************************★ 题目 8(无忧 id 83 题 ) 函数 ReadDat()实现从文件 中读取一篇英文文章,存入到字符串数组 xx 中;请编制函数 encryptChar(),按给定的替代关系对数组 xx 中的所有字符进行替代,仍存入数组 xx 的对应的位置上,最后调用函数WriteDat()把结果 xx 输出到文件 中。 替代关系: f(p)=p*11 mod 256( p 是数组中某一个字符的ASCII 值, f(p)是计算后新字符的 ASCII 值),如果计算后 f(p)值小于 等于 32 或大于 130,则该字符不变,否则将 f(p)所对应的字符进行替代。 部分源程序存在文件 中。 原始数据文件存放的格式是:每行的宽度均小于 80 个字符。 请勿改动主函数 main()、读数据函数 ReadDat()和输出数据函数 WriteDat()的内容。 include include include include unsigned char xx[50][80]。 int maxline=0。 /*文章 的总行数 */ int ReadDat(void)。 void WriteDat(void)。 void encryptChar() { int i,j。 for(i=0。 imaxline。 i++) for(j=0。 jstrlen(xx[i])。 j++) if(xx[i][j]*11%256=32||xx[i][j]*11%256130) continue。 else xx[i][j]=xx[i][j]*11%256。 } void main() { clrscr()。 if(ReadDat()){ printf(数据文件 不能打开。 \n\007)。 return。 } 全国计算机等级考试三级 C 语言程序设计上机考试习题集( 20xx 年版)【终极无错版】 6 encryptChar()。 WriteDat()。 } int ReadDat(void) { FILE *fp。 int i=0。 unsigned char *p。 if((fp=fopen(,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(,w)。 for(i=0。 imaxline。 i++){ printf(%s\n,xx[i])。 fprintf(fp,%s\n,xx[i])。 } fclose(fp)。 } ***************************★ 题目 9(无忧 id 28; id 124题;捷成 id 16 题 ) 函数 ReadDat()实现从文件 中读取一篇英文文章存入到字符串数组 xx 中,请编制函数 SortCharD(),其函数的功能是:以行为单位对字符按从大到小的顺序进行排序,排序后的结果仍按行重新存入字符串数组 xx 中,最后调用函数writeDat()把结果 xx 输出到文件 中。 例:原文: dAe,BfC. CCbbAA 结果: fedCBA. bbCCAA 原始数据文件存放的格式是:每行的宽度均小于 80 个字符,含标点符号和空格。 部分源程序存在文件 中。 请勿改动主函数 main()、读数据函数 ReadDat()和输出数据函数 writeDat()的内容。 include include include char xx[50][80]。 int maxline=0。 /*文章的总行数 */ int ReadDat(void)。 void WriteDat(void)。 void SortCharD(void) {int I,j,k,strl。 char ch。 for(I=0。 Imaxline。 I++) {strl=strlen(xx[I])。 for(j=0。 jstrl1。 j++) for(k=j+1。 kstrl。 k++) if(xx[I][j]xx[I][k]) {ch=xx[I][j]。 xx[I][j]=xx[I][k]。 xx[I][k]=ch。 } } } void main() { clrscr()。 if(ReadDat()){ printf(数据文件 不能打开。 \n\007)。 return。 } SortCharD()。 WriteDat()。 } int ReadDat(void) { FILE *fp。 int i=0。 char *p。 if((fp=fopen(,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(,w)。 for(i=0。 imaxline。 i++){ printf(%s\n,xx[i])。 fprintf(fp,%s\n,xx[i])。 } fclose(fp)。 } ***************************题目 10(无忧 id 68 题 ) 函数 ReadDat()实现从文件 中读取一篇英文文章存入到字符串数组 xx 中,请编制函数 ConvertCharA(),其函数的功能是:以行为单位把字符串中的所有小写字母改写成该字母的下一个字母,如果是字母z,则改写成字母 a。 大写字母仍为大写字母,小写字母仍为小写字母,其他字符不变。 把已处理的字符串仍按行重新存入字符串数组 xx 中,最后调用函数 writeDat()把结果 xx 输出到文件 中。 例:原文: 结果: 原始数据文件存放的格式是:每行的宽度均小于 80 个字符,含标点符号和空格。 部分源程序存在文件 中。 请勿改动主函数 main()、读数据函数 ReadDat()和输出数据函数 writeDat()的内容。 include include include char xx[50][80]。 int maxline=0。 /*文章的总行数 */ int ReadDat(void)。 void WriteDat(void)。 全国计算机等级考试三级 C 语言程序设计上机考试习题集( 20xx 年版)【终极无错版】 7 void ConvertCharA(void) { int i,j。 for(i=0。 imaxline。 i++) { for(j=0。 jstrlen(xx[i])。 j++) if(xx[i][j]==39。 z39。 ) xx[i][j]=39。 a39。 else if(xx[i][j]=39。 a39。 amp。 amp。 xx[i][j]=39。 y39。 ) xx[i][j]+=1。 } } void main() { clrscr()。 if(ReadDat()){ printf(数据文件 不能打开。 \n\007)。 return。 } ConvertCharA()。 WriteDat()。 } int ReadDat(void) { FILE *fp。 int i=0。 char *p。 if((fp=fopen(,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。 clrscr()。 fp=fopen(,w)。 for(i=0。 imaxline。 i++){ printf(%s\n,xx[i])。 fprintf(fp,%s\n,xx[i])。 } fclose(fp)。 } ***************************题目 11(无忧 id 93 题 ) 程序 的功能是:把 s 字符串中的所有字母改写成该字母的下一个字母,字母 z 改写成字母 a。 要求大写字母仍为大写字母,小写字母仍为小写字母,其它字符不做改变。 请考生编写函数 chg(char *s)实现程序要求,最后调用函数 readwriteDAT( )把结果输出到文件 中。 例如: s 字符串中原有的内容为: ,则调用该函数后,结果为:。 注意:部分源程序存在文件 文件中。 请勿改动主函数 main( )和输出数据函数 readwriteDAT()的内容。 include include include include define N 81 void readwriteDAT()。 void chg(char *s) {while(*s) if(*s==39。 z39。 ||*s==39。 Z39。 ) {*s=25。 s++。 } else if(*s=39。 a39。 amp。 amp。 *s=39。 y39。 ) {*s+=1。 s++。 } else if(*s=39。 A39。 amp。 amp。 *s=39。 Y39。 ) {*s+=1。 s++。 } else s++。 } main( ) { char a[N]。 clrscr()。 printf(Enter a string : )。 gets(a)。 printf(The original string is : )。 puts(a)。 chg(a)。 printf(The string after modified : )。 puts (a)。 readwriteDAT()。 } void readwriteDAT() { int i。 char a[N]。 FILE *rf, *wf。 rf = fopen(, r)。 wf = fopen(, w)。 for(i = 0。 i 50。 i++) { fscanf(rf, %s, a)。全国计算机等级考试三级c语言程序设计上机考试习题集20xx年版(编辑修改稿)
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。
用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。