日语 口译 雅思 四六级 小语种 青少儿教育 学校 自学考试 网络学院 MBA 在职研 新闻中心 资讯中心
会计 高考 报关 计算机 公务员 人力资源 课程 成人高考 国际办学 GCT 总裁研修 专题中心 北斗论坛
英豪教育Adobe网页设计师认证

南开计算机等级考试上机100题(三级)

教育人生网  2005-10-23 来源:招生考试在线


      1. 函数ReadDat()实现从文件ENG.IN中读取一篇英文文章,存入到字符串数组xx中;请编制函数encryptChar(),按给定的替代关系对数组xx中的所有字符进行替代,仍存入数组xx的对应的位置上,最后调用函数WriteDat()把结果xx输出到文件PS10.DAT中。

  替代关系:f(p)=p*11 mod 256 (p是数组中某一个字符的ASCII值,f(p)是计算后新字符的ASCII值),如果原字符的ASCII值是偶数或计算后f(p)值小于等于32,则该字符不变,否则将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;

  char *p;

  for(i=0;i='a'&&xx[j]='0'&&p='A'&&p='0'&&xx[j]='A'&&xx[j]='a'&&p130)

  ;

  else xx[j]=p; } }

  11.函数ReadDat()实现从文件in.dat中读取20行数据存放到字符串数组xx中(第行字符串长度均小于80)。请编制函数jsSort(),其函数的功能是:以行为单位对字符串按给定的条件进行排序,排序后的结果仍按行重新存入字符串数组xx中,最后调用函数WriteDat()把结果xx输出到文件out.dat中。

  条件:从字符串中间一分为二,左边部分按字符的ASCII值升序排序,排序后左边部分与右边部分进行交换。如果原字符串长度为奇数,则最中间的字符不参加处理,字符仍放在原位置上。

  例如:位置 0 1 2 3 4 5 6 7 8

   源字符串 d c b a h g f e

  4 3 2 1 9 8 7 6 5

  则处理后字符串 h g f e a b c d

  8 7 6 5 9 1 2 3 4

  部分源程序已给出。 请勿改动主函数main()、读函数ReadDat()和写函数WriteDat()的内容。

  #include

  #include

  #include

  char xx[20][80];

  void jsSort()

  { int i,j,k,m;

  char c;

  for(i=0;ixx[m])

  { c=xx[j];

  xx[j]=xx[m];

  xx[m]=c; }

  for(j=0;jxx[m])

  { c=xx[j];

  xx[j]=xx[m];

  xx[m]=c; } }

  }

  14.函数ReadDat()实现从文件in.dat中读取20行数据存放到字符串数组xx中(第行字符串长度均小于80)。请编制函数jsSort(),其函数的功能是:以行为单位对字符串变量的下标为奇数的字符按其ASCII值从小到大的顺序进行排序,排序后的结果仍按行重新存入字符串数组xx中,最后调用函数WriteDat()把结果xx输出到文件out.dat中。

  例如:位置 0 1 2 3 4 5 6 7

   源字符串 h g f e d c b a

  则处理后字符串 h a f c d e b g

  部分源程序已给出。请勿改动主函数main()、读数据函数ReadDat()和输出数据函数WriteDat()的内容。

  void jsSort()

  { int i,j,k,m;

  char c;

  for(i=0;ixx[m])

  { c=xx[j];

  xx[j]=xx[m];

  xx[m]=c; } } }

  15.函数ReadDat()实现从文件in.dat中读取20行数据存放到字符串数组xx中(第行字符串长度均小于80)。请编制函数jsSort(),其函数的功能是:以行为单位对字符串按给定的条件进行排序,排序后的结果仍按行重新存入字符串数组xx中,最后调用函数WriteDat()把结果xx输出到文件out.dat中。条件:从字符串中间一分为二,右边部分按字符的ASCII值升序排序,排序后左边部分与右边部分进行交换。如果原字符串长度为奇数,则最中间的字符不参加排序,字符仍放在原位置上。

  例如:位置 0 1 2 3 4 5 67 8

   源字符串 d c b a h g f e

  8 7 6 5 9 1 2 3 4

  则处理后字符串 e f g h d c b a

  5 6 7 8 9 4 3 2 1

   部分源程序已给出。请勿改动主函数main()、读数据函数ReadDat()和输出数据函数 WriteDat()的内容。

  void jsSort()

  { int i,j,k,m,n;

  char c;

  for(i=0;ixx[m])

  { c=xx[j];

  xx[j]=xx[m];

  xx[m]=c; }

  for(j=0;jxx[m])

  { c=xx[j];

  xx[j]=xx[m];

  xx[m]=c; }

  if(k%2==0)

  n=k/2;

  else n=k/2+1;

  for(j=n;jn)

  { c=aa;

  aa=aa[j];

  aa[j]=c; }

  if(m==n)

  { if(aa(aa.x2+aa.x3))

  bb[k++]=aa;

  for(i=0;ibb[j].x1+bb[j].x3)

  { m=bb;

  bb=bb[j];

  bb[j]=m; }

  return k;

  }

  void main()

  { int count;

  readDat();

  count=jsSort(); /*返回满足条件的个数*/

  writeDat(count); }

  readDat(int count)

  { FILE *in;

  int i;

  in=fopen(\"in.dat\",\"r\");

  for(i=0; ia[j].s)

  { *s=a;

  a=a[j];

  a[j]=*s; }

  return a[0].s;

  }

  main()

  {

  STU a[N]={ {"A01",81},{"A02",89},{"A03",66},{"A04",87},{"A05",77},

  {"A06",90},{"A07",79},{"A08",61},{"A09",80},{"A10",71} }, m ;

  int i;

  clrscr();

  printf("***** The original data *****\n");

  for(i=0; i0;m++)

  if(isP(m))

  { xx[i++]=m;

  k--; } }

  main()

  {

  int m, n, xx[1000] ;

  clrscr() ;

  printf("\nPlease enter two integers:") ;

  scanf("%d%d", &m, &n ) ;

  num(m, n, xx) ;

  for(m = 0 ; m sell[j].je)

  { c=sell;

  sell=sell[j];

  sell[j]=c; } } }

  33..已知在文件IN.DAT中存有100个产品销售记录,每个产品销售记录由产品代码dm(字符型4位),产品名称mc(字符型10位),单价dj(整型),数量sl(整型),金额je(长整型)四部分组成。其中:金额=单价*数量计算得出。函数ReadDat()是读取这100个销售记录并存入结构数组sell中。请编制函数SortDat(),其功能要求:按产品名称从大到小进行排列,若产品名称相同,则按金额从大到小进行排列,最终排列结果仍存入结构数组sell中,最后调用函数WriteDat()把结果输出到文件OUT6.DAT中。

  部分源程序已给出。请勿改动主函数main()、读数据函数ReadDat()和输出数据函数WriteDat()的内容。

  void SortDat()

  { int i,j;

  PRO c;

  for(i=0;isell[j].je)

  { c=sell;

  sell=sell[j];

  sell[j]=c; }

  else

  if(sell.je==sell[j].je)

  if(strcmp(sell.dm,sell[j].dm)sell[j].je)

  { c=sell;

  sell=sell[j];

  sell[j]=c; }

  else

  if(sell.je==sell[j].je)

  if(strcmp(sell.dm,sell[j].dm)>0)

  { c=sell;

  sell=sell[j];

  sell[j]=c; } } }

  37.已知在文件IN.DAT中存有100个产品销售记录,每个产品销售记录由产品代码dm(字符型4位),产品名称mc(字符型10位),单价dj(整型),数量sl(整型),金额je(长整型)四部分组成。其中:金额=单价*数量计算得出。函数ReadDat()是读取这100个销售记录并存入结构数组sell中。请编制函数SortDat(),其功能要求:按金额从大到小进行排列,若金额相等,则按产品代码从小到大进行排列,最终排列结果仍存入结构数组sell中,最后调用函数WriteDat()把结果输出到文件OUT3.DAT中。部分源程序已给出。

  请勿改动主函数main()、读数据函数ReadDat()和输出数据函数WriteDat()的内容。

  void SortDat()

  { int i,j;

  PRO c;

  for(i=0;i0)

  { c=sell;

  sell=sell[j];

  sell[j]=c; } } }

  38.已知在文件IN.DAT中存有100个产品销售记录,每个产品销售记录由产品代码dm(字符型4位),产品名称mc(字符型10位),单价dj(整型),数量sl(整型),金额je(长整型)四部分组成。其中:金额=单价*数量计算得出。函数ReadDat()是读取这100个销售记录并存入结构数组sell中。请编制函数SortDat(),其功能要求:按产品名称从小到大进行排列,若产品名称相等,则按金额从小到大进行排列,最终排列结果仍存入结构数组sell中,最后调用函数WriteDat()把结果输出到文件OUT5.DAT中。部分源程序已给出。请勿改动主函数main()、读数据函数ReadDat()和输出数据函数WriteDat()的内容。

  void SortDat()

  { int i,j;

  PRO c;

  for(i=0;i0)

  { c=sell;

  sell=sell[j];

  sell[j]=c; }

  else

  if(strcmp(sell.mc,sell[j].mc)==0)

  if(sell.je>sell

新闻标签:
    特别说明:由于各方面情况的不断调整与变化,教育人生网所提供的所有考试信息仅供参考,敬请考生以权威部门公布的正式信息为准。
热点推荐
2012寒假班
教育资讯访问排行
上海教育名校一览
报名热线
上海培训报名:021-31265526
高校招生报名:021-51093665
在职硕士咨询:021-29262519
视频·访谈
教育人生网快报
北斗论坛访问排行
教育人生网首页    培训报名 - 在职硕士 - 高校招生 - 会员登陆资料中心 - 搜索中心 - 网站活动