首页 考试吧论坛 Exam8视线 考试商城 网络课程 模拟考试 考友录 实用文档 求职招聘 论文下载
2011中考 | 2011高考 | 2012考研 | 考研培训 | 在职研 | 自学考试 | 成人高考 | 法律硕士 | MBA考试
MPA考试 | 中科院
四六级 | 职称英语 | 商务英语 | 公共英语 | 托福 | 雅思 | 专四专八 | 口译笔译 | 博思 | GRE GMAT
新概念英语 | 成人英语三级 | 申硕英语 | 攻硕英语 | 职称日语 | 日语学习 | 法语 | 德语 | 韩语
计算机等级考试 | 软件水平考试 | 职称计算机 | 微软认证 | 思科认证 | Oracle认证 | Linux认证
华为认证 | Java认证
公务员 | 报关员 | 银行从业资格 | 证券从业资格 | 期货从业资格 | 司法考试 | 法律顾问 | 导游资格
报检员 | 教师资格 | 社会工作者 | 外销员 | 国际商务师 | 跟单员 | 单证员 | 物流师 | 价格鉴证师
人力资源 | 管理咨询师考试 | 秘书资格 | 心理咨询师考试 | 出版专业资格 | 广告师职业水平
驾驶员 | 网络编辑
卫生资格 | 执业医师 | 执业药师 | 执业护士
会计从业资格考试会计证) | 经济师 | 会计职称 | 注册会计师 | 审计师 | 注册税务师
注册资产评估师 | 高级会计师 | ACCA | 统计师 | 精算师 | 理财规划师 | 国际内审师
一级建造师 | 二级建造师 | 造价工程师 | 造价员 | 咨询工程师 | 监理工程师 | 安全工程师
质量工程师 | 物业管理师 | 招标师 | 结构工程师 | 建筑师 | 房地产估价师 | 土地估价师 | 岩土师
设备监理师 | 房地产经纪人 | 投资项目管理师 | 土地登记代理人 | 环境影响评价师 | 环保工程师
城市规划师 | 公路监理师 | 公路造价师 | 安全评价师 | 电气工程师 | 注册测绘师 | 注册计量师
缤纷校园 | 实用文档 | 英语学习 | 作文大全 | 求职招聘 | 论文下载 | 访谈 | 游戏
您现在的位置: 考试吧(Exam8.com) > 软件水平考试 > 模拟试题 > 程序员 > 正文

2010软件水平考试程序员考试模拟试题及答案(1)

来源:考试吧Exam8.com) 2010-10-7 10:16:16 考试吧:中国教育培训第一门户 模拟考场
考试吧整理了2010软件水平考试程序员考试模拟试题及答案(1),帮助考生备考软考程序员考试。

  试题四(15分,每空3分)

  阅读以下说明和C语言程序,将应填入___(n)___处的字句写在答题纸的对应栏内。

  [说明]

  本程序对某电码文(原文)进行加密形成密码文,其加密算法如下:

  假定原文为C1,C2,C3,…,Cn加密后形成的密文为S1,S2,S3,…,Sn,首先读入正整数

  key(key>1)作为加密钥匙,并将密文字符位置按顺时针方向连成一个环,如下图所示:

  加密时从 S1 位置起顺时针计数,当数到第 key 个字符位置时,将原文中的字符放入该密文字符位置中,同时从环中除去该字符位置;接着从环中下一个字符位置起继续计数,当再次数到第 key 个字符位置时,将原文中字符 C2 放入其中,并从环中除去该字符位置;依次类推,直至 n 个原文字符全部放入密文环中。由此产生的 S1S2...Sn 即为原文的密文。

  例如,当 Key=3 时,原文:this is a decoding system 的密文为:

  aotgnhedi ys d imietsnc ss

  当Key=4时,该原文的密文为:

  ssdtyd htegiasiscnm e ion

  #include

  #include

  typedef struct node

  { char ch;

  struct node *forward; /* Link to next node. */

  struct node *backward;/* Link to previous node.*/

  } CODE;

  int strlen(char *s)

  { int len = 0;

  while (*s++ != ’\0’ )

  len++;

  return( len );

  }

  char *decode(char *old,int key)

  { char *New; int length,count,i;

  CODE *loop,*p;

  length=strlen(old);

  loop=(CODE *) malloc( length*sizeof(CODE) );

  for ( i = 1;i

  { loop[i].forward = &loop[i+1];

  ___(1)___

  }

  loop[0].backward = &loop[length-1];

  loop[0].forward = &loop[1];

  loop[length-1].forward = loop;

  ___(2)___

  for ( p = loop,i = 0;i

  { for ( count = 1;count

  p= p->forward ;

  ___(3)___

  p->backward->forward = p->forward ;

  p->forward->backward = p->backward ;

  ___(4)___

  }

  New = ( char *)malloc( ( length+1 ) *sizeof(char) );

  for ( i=0;i

  ___(5)

  ___

  New[length]=’\0’;

  return (New);

  }

  void main()

  { char old[256];

  int key , num=0;

  printf("\nPlease input the telegraph: \n");

  while ( num<255 && ( old[num++] = getchar()) != ’\n’ );

  old [ (num==255)?num:num-1] = ’\0’;

  do

  { printf( "\nPlease input Key ( Key>1 ):" );

  scanf("%d",&key);

  } while ( key<=1 );

  printf( "\nThe decode of telegraph:’%s’ is:\n’%s’\n",old,decode( old,key ) );

  }

上一页  1 2 3 4 5 6 7 8 下一页
  相关推荐:计算机软考程序员备考:程序设计知识点汇总
       2010年计算机软件水平考试时间安排通知
文章搜索
软件水平考试栏目导航
版权声明:如果软件水平考试网所转载内容不慎侵犯了您的权益,请与我们联系800@exam8.com,我们将会及时处理。如转载本软件水平考试网内容,请注明出处。