程序出错,找不到问题在哪?——我给你方法
很多学习语言编程的道友在写程序都有这样一个感受:程序写完后,点击运行,却不是预期的结果。然后就困恼到底是哪里出错?今天我就这个问题,给道友们一些建议:
1、避免写代码马虎,发生低级错误
比如说本来是if(a==b),但是写的快,却写成了if(a=b);
本来是printf("%d",a)却少了%,scanf("%d",&a);却少了&等等问题。这些问题单独拿出来看,大家都说知道,但是当我们的程序很复杂的时候,我们就忽略了这些细节问题。有时候真的是这些细节会让你崩溃!!!
2、逻辑问题
这个问题也很常见,因为有的道友从头到尾看了一遍程序,没有语法问题,逻辑也清晰,感觉程序就应该是这样的,为什么还会错呢?主要分为以下情况:
(1)你认为的”正确的逻辑思路“根本不能解决问题
例如:用天平称重的问题,有的道友只知道一直两两分,然后得到答案,但实际上,这种思路得不到答案的!
(2)逻辑不具备普遍性
看起来你的逻辑适合大部分的数据,但是却没有考虑到特殊的情况,
举个最简单的例子:
输入任意数,求这个数各位数字之和,并用拼音表示出来,比如和为123,输出 yi er san;
看到这道题,有的道友立马想到用while循环来截取和的每一位,代码如下:
while(sum!=0) {b[k++]=sum%10; //数组b存储各位数字sum=sum/10;}
然后提交就WA,因为他们没有考虑到while循环的条件,是当数不为0时才执行!而对于特殊的数字0,它各位数字和为0,按照这个程序逻辑就无法得出结果,所以需要单独考虑,改为:
if(sum==0)cout<<a[0]<<endl;else {while(sum!=0) {b[k++]=sum%10;sum=sum/10;}}
3、输入输出格式不对
这个问题很容易被忽略,而且也不容易发现。
比如:输出数据多了一个空格,或者多了一个空行,或者引号的格式不对之类的问题。
那么对于这种情况,需要道友们细心!
为了便于道友们向我咨询问题,特意开设了一个免费的知识星球——CaptianXue,星球提供学习、理财、生活、职场等各类文章和免费答疑!!
程序出错,找不到问题在哪?——我给你方法相关推荐
- 新手Java程序员找工作更看重Java项目经验?
动力节点IT培训,全真项目实操实训,贯穿八大行业,彻底帮助学员摆脱纸上谈兵的尴尬,一技成,天下行. 新手Java程序员找工作更看重Java项目经验?这个问题,想必是很多学Java的朋友也特别好奇的地方 ...
- linux系统在硬盘上安装程序,怎么样用硬盘上的镜象文件来安装Linux系统?我都进入安装界面了,但是那个安装程序好像找不到那几个镜象文件,请指点...
怎么样用硬盘上的镜象文件来安装Linux系统?我都进入安装界面了,但是那个安装程序好像找不到那几个镜象文件,请指点 光盘镜象文件名字为: 5.1-RELEASE-i386-disc1.iso 5.1- ...
- 程序员找工作必看面试题1
1 / 100 目录 1. 说出一些数据库优化方面的经验?(重点).......................................................8 2. 你有优化 SQ ...
- java.exe应用程序出错_EXPLORER.EXE应用程序错误的原因和解决办法
在使用电脑到时候经常会碰到EXPLORER.EXE应用程序错误,很多人找不到具体原因就乱杀毒和重装系统,这样既浪费时间又麻烦,有时还不一定能解决问题,下面我爱电脑网小编收集导致EXPLORER.EXE ...
- 帝国时代三计算机丢失,修复安装帝国时代程序出错3d3dx9_25.dll丢失在win7中方法...
win7的电脑中很多的小伙伴喜欢在休闲的时候玩一下游戏来打发我们的时间的,对于帝国时代这一款游戏是很多的用户喜欢的,在win7电脑中有喜欢使用的遇到了问题,对于安装的提示帝国时代程序出现3d3dx9_ ...
- 数字溢出为啥程序出错
数字溢出为啥程序出错 public class test2 {public static void main(String[] args) {int max = Integer.MAX_VALUE;i ...
- Java黑皮书课后题第8章:**8.17(金融风暴)银行会互相借款……银行的总资产是它当时的余款减去它欠其他银行的贷款。如果一个银行的总资产在某个限以下,那么这个银行是不安全的。编写程序,找出所有不安
**8.17(金融风暴)银行会互相借款--银行的总资产是它当时的余款减去它欠其他银行的贷款.如果一个银行的总资产在某个限以下,那么这个银行是不安全的.编写程序,找出所有不安全银行 题目 题目描述 破题 ...
- Java黑皮书课后题第8章:*8.7(距离最近的两个点)程序清单8-3给出了找到二维空间中距离最近的两个点的程序。修改该程序,让程序能找出在三维空间上距离最近的两个点
*8.7(距离最近的两个点)程序清单8-3给出了找到二维空间中距离最近的两个点的程序.修改该程序,让程序能找出在三维空间上距离最近的两个点 题目 题目描述 代码 结果 题目 题目描述 *8.7(距离最 ...
- Java黑皮书课后题第6章:**6.29(双素数)双素数是指一对差值为2的素数。例如,3和5就是一对双素数,5和7是一对双素数,而11和13也是一对双素数。编写程序,找出小于1000的所有双素数
6.29(双素数)双素数是指一对差值为2的素数.例如,3和5就是一对双素数,5和7是一对双素数,而11和13也是一对双素数.编写程序,找出小于1000的所有双素数 题目 题目描述 破题 代码 运行示例 ...
- Java黑皮书课后题第6章:**6.28(梅森素数)如果一个素数可以写成2^p-1的形式,其中p是某个正整数,那么这个素数就称作梅森素数。编写程序,找出p≤31的所有梅森素数,然后显示如下结果
6.28(梅森素数)如果一个素数可以写成2^p-1的形式,其中p是某个正整数,那么这个素数就称作梅森素数.编写程序,找出p≤31的所有梅森素数,然后显示如下结果 题目 题目描述 破题 代码 题目 题目 ...
最新文章
- mysql主从不同步怎么恢复_mysql主从不同步时,怎么恢复
- java io源码解读_Java IO源码分析(五)——CharArrayReader 和 CharArrayWriter
- 打造GTD style的办公环境 V1.0
- della计算机驱动检测,nexus6安装BPTOOLS中的diag驱动图文教程
- 前端:CSS/15/全局CSS设置,常用的兼容性调试技巧,CSSHACK
- html获取location,通过定义JS窗口对象获取url地址location.search部分的参数值
- 互联网轻量级框架SSM-查缺补漏第九天
- ticketea如何从一体化转向多体化架构
- DDC——Deep Domain Confusion Maximizing for Domain Invariance
- 使用EasyRecovery来恢复丢失的视频
- 不借助第三方变量实现两个整数变量值的互换
- 昨天又发火了:领导拒不给他人安排工作
- linux拓实n87驱动下载,拓实N87无线网卡驱动
- Android 11 状态栏电池图标的定制
- 设计师网页导航 php,设计师必须收藏的7个网址导航
- MySQL医疗信息管理系统数据库(源码)
- Flutter 调用百度地图APP实现位置搜索、路线规划
- final修饰的变量必须初始化吗?
- 书法拓片matlab,书法拓片是怎么做出来的?
- 相约,一朵春天的微笑
热门文章
- Ubuntu16.04和Windows10下直接用网线连接海康威视网络摄像头
- PLSQL格式化代码
- 洗牌算法(Fisher–Yates Shuffle and Knuth-Durstenfeld Shuffle)
- MATLAB实现用有限元方法解决下列方程,求助大神,谢谢
- 攀爬机器人 蝎子_几款异常奇妙的国外机器人
- 使用Servlet实现重定向到另一个Servlet文件下载服务端下载
- 连接阿里云物联网平台
- Revit拼接线、放置视图参照
- 基于STM32C8T6、ESP8266-01S、JavaWeb、JSP、Html、JavaScript、Android、服务器和客户端设计、上位机和下位机设计等技术融合的物联网智能监控系统设计与实现
- SpringBoot 之自定义Banner