• 网络学院
  • 新手学堂
  • 操作系统
  • 网络技术
  • 软件应用
  • 办公软件
  • 编程技术
  • 网站架设
  • 数据库类
  • 平面设计
  • 多媒体类
  • 游戏资讯
  • 教学论文
  • 认证考试
机考如何避免范围性错误
广告位
  站点:
  • 首 页
  • 最新软件
  • 最新文章
  • 国内软件
  • 国外软件
  • 汉化软件
  • 源码下载
  • 字体下载
机考如何避免范围性错误
软件发布 机考如何避免范围性错误
网络软件 系统工具 应用软件 联络聊天 图形图像 多媒体类 行业软件 游戏娱乐 编程开发 安全相关 教育教学 数码软件
热门软件: QQ 瑞星 pplive e话通 木马克星 千千静听 office2000 五笔字根 Photoshop 视频分割
返回首页 | 文章首页 | 认证考试 | 计算机等级考试 | 计算机等级考试动态 | 机考如何避免范围性错误

机考如何避免范围性错误

 

添加时间: 2007-5-26 3:00:57  作者: 计算机等级考试认证参考  阅读次数:70   来源: http://www.d9soft.com

 

 

       

 
  机考如何避免范围性错误 

  小编:参加上机考试的朋友最忌讳犯的错误就是粗心,有时明明会做的题,却因为一个小小的符号错误导致全盘皆输。下面这位朋友在做上机练习时,发现自己所编程序的运行结结果正确无误,但评分系统没有给分,这是为什么呢?下面让她来告诉我们其中的原委。  

  在上机操作时,要多注意循环的范围。这种错误往往只有一个符号之差,用run运行时并不报错,在你输入数据后查看结果时,可能结果显示也正确,但却不一定能得分。我在复习过程中,做上机模拟时遇到了这种情况:运行结果正确,评分时却是0分。下面这道题并不难,却让我颇费周折,大家不妨看看,也好引以为戒。  

  “请编写一个函数void fun(int x,int pp[ ],intn)。它的功能是:求出能整除x且不是偶数的各整数,并放在数组pp[ ]中,这些除数的个数由n返回。运行时输入x的值为30。”  

  (注意:部分源程序在文件prog.c中。请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。)  

  我是这样编写的:  

  void fun(int x,int pp[ ],int n)  
  {  
  int i, j=0,point;  
  point=pp;  
  for(i=1,i  
  if((x%i= =0)&&&&(i%2!=0))  
  { point=i;  
  point++;  
  j++; }  
  point=NULL;  
  n=j;  
  }  

  按F9未显示异常,按ctrl +F9后输入“30”,结果是:“1 3 5 15”。再次验证输入40,结果是:“1 5”。多次验证(用20、50或其他偶数)结果都正确,可就是评分系统却不给分。我开始怀疑评分系统是不是做得太死板了,或有错误。  

  打开答案,发现答案的解题思路和我的是一致的,参考答案如下:  

  #include  
  #include  
  void fun(int x,int pp[ ],int n)  
  {  
  int i ;  
  int j=0;  
  int point;  
  point=pp;  
  for(i=1,i<=x;i++)  
  {if((x%i= =0)&&&&(i%2!=0))  
  { point=i;  
  point++;  
  j++; }  
  }  
  point=NULL;  
  n=j;  
  }  
  main()  
  { int x,aa[1000],n,i; 
  clrscr;  
  printf(“  please enter an integer number: );  
  scanf(“%d”,&&x)  
  fun(x,aa,&&n);  
  for(i=0;i  
  printf(“%d”,aa[i]);  
  printf(“ ”);  
  NONO( );  
  }  

  我的解答和答案相比,只有几处不同:答案中从if语句前,一直到j++后,还有一层“{ }”;在定义变量时的写法不同,我是用一条语句定义了变量和指针,答案却用了三条语句。虽然认为这两处都不会影响程序的运行,但还是按它的意思做了修改。  

  修改后重新运行,再看评分还是0分。这就更让我肯定自己编写无误,是评分系统的问题。这时候,粗心的我并没有发现for语句内的第二表达式是小于等于x而不是小于x。也许是只注意结果的正确,主观上没怀疑程序有问题。  

  就在我准备放弃的时候,还是不甘心,再仔细看一遍答案,才突然发现第二表达式的错误。  

  我这才明白了为什么每次运行结果都正确却不给分的原因:验证输入的数字(x)都用的是偶数。按本题的题意,偶数是不会显示在结果中的。但如果输入的是27、31或 41,由于结果没有显示这些数的本身,那么就会及早发现程序中的毛病,就能想到循环的范围。

  在正式考试的时候,没有答案可循,更没有评分系统可用。所以,我们在输入数字时一定要根据题意全面选择输入的数字,也好及早发现程序中的错误。另外还有两个小建议:  

  1. 编写程序时,一般主函数已经给出,只让考生编写某个子函数,这时你若定义了指针指向形参中的某个数组,那么在最后一定不要忘了给指针赋值NULL(或0或‘’),以防止指针越界。  
  2. 先保存再运行,以备程序编写欠妥导致死机。

 

 

 

上下文章:

 

上一篇文章: 2003年最新三级网络模拟题(2) 下一篇文章: 笔试样题(网络技术)

相关文章:

  • 教你如何向Google申请重新收录
  • 在ORACLE的存储过程中如何做简单的动态查询
  • 如何准备OCP考试?
  • 如何将excel数据导入oracle中
  • 常见问题诊断方法---(常见错误篇)

相关软件:

  • 如何配置dns系统虚拟域名的配置和设置方法(PDF)
  • 如何使用Access 2000 中文版(PDG)

 

 

快速导航

  • 网络学院
  • 精品汇聚
  • 字体下载
  • 教程下载
  • ASP源码
  • PHP源码
  • Net源码
  • JSP 源码

计算机等级考试分类导航

  • 计算机等级考试动态
  • 计算机一级考试
  • 计算机二级考试
  • 计算机三级考试
  • 计算机四级考试

本类经典文章推荐

  • 全国计算机等级考试三级网络技术(...
  • 三级网络技术复习笔记(第1-2章)
  • 三级笔试样题(PC技术)
  • 三级数据库技术样题
  • 三级网络技术复习笔记(5-7)
  • 三级网络技术复习笔记(第3-4章)
  • 笔试样题(网络技术)
  • 机考如何避免范围性错误
  • 2003年最新三级网络模拟题(2)
  • 全国计算机等级考试三级网络技术部...

计算机等级考试动态阅读排行

  • 计算机等级考试:VFp练习题1
  • 全国计算机等级考试三级网络技术(...
  • 计算机等级考试:VFp练习题2
  • 完整的计算机等级考试上机模拟系统
  • 历年操作系统论述题及答案(2)
  • 三级网络技术复习笔记(第1-2章)
  • 上海:计算机等级考试开始报名
  • 2005年全国计算机等级考试全真模拟...
  • 职称计算机考试报名今年最后一次
  • C语言教程连载--第一章 Turbo C...

计算机等级考试阅读总排行

  • 全国计算机等级考试一级模拟试题01
  • 全国计算机等级考试一级模拟试题10
  • 全国计算机等级考试一级模拟试题08
  • 全国计算机等级考试一级考试最新模...
  • 全国计算机等级考试一级模拟试题07
  • 全国计算机等级考试一级模拟试题02
  • 全国计算机等级考试一级模拟试题06
  • 全国计算机等级考试一级模拟试题03
  • 一级(WINDOWS)试题解析-Word篇
  • 全国计算机等级考试上机考试应试技...

广告位置

字母检索 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 回到顶部

关于我们 | 版权声明 | 免责条款 | 广告联系 | 软件发布 | 下载帮助 | 下载排行 | 网站地图 | 特别鸣谢 | 友情连接

copyright; 2005-2008 D9soft.com 第九软件网 版权所有