
if(a>c)
b=a
a=c
c=b
2,若有说明int i,j,k则执行i=10;j=20;k=30;k*=i+j后k的值为__ 900 ____。
3,C语言中用__非0的任何数值____表示逻辑“真”,用__0____表示逻辑“假”。
4,执行a=12,a*=2+3后a的值为 __60__ 。
5,以下程序的输出结果是 __3___
main( )
{
int x=10, y=3
printf(“%d\n”, x/y)
}
6,为表示关系x>=y>=z, 应使用的C语言表达式是 __x>=y&&y>=z__
7,传统流程图中, 表示
8,把以下for语句的一般形式转换成对应的while循环
for(初始值;条件;循环变量)
{
循环体;
}
:
初始值;
while(条件){
循环体;
循环变量;
}
其中第七题不明其意,题目应该不完整。
第2,4题考点相似都是注意a*=b+c其实是等于a=a*(b+c)
第5题,在printf语句中x/y是当一个整体输出的要注意,再就是x,y都是定义的整形,当两个整形数值相除时得到的还是整形数值,要舍弃小数点后面的数取整
第8题中考查的事三种循环语句的掌握还要注意do-while语句的情况又是怎样
//请测试!#include <stdio.h>
#include <string.h>
int max_len(char *s[],int n)
void main()
{
int i,n
char s[10][80],*p[10]
scanf("%d",&n)
for(i=0i<ni++)
{
p[i]=s[i]
scanf("%s",s[i])
}
printf("length=%d\n",max_len(p,n))
}
int max_len(char *s[],int n)
{
int i,j=0
for(i=0i<ni++)
{
if((int)strlen(s[i])>j)
j=(int)strlen(s[i])
}
return j
}
01
开发软件不等于编码
写程序时会有"编码-->测试-->调试"的习惯.很不幸,这是开发软件的错误方法.专业的程序员会使用策略来预防、检测及消除软件bug.编码不是在开发软件.编码的意思是在文本编辑器中输入语句.编码只是开发软件的小部分.开发软件需要编程前、编程中、编程后的许多步骤.下面分着讲解.
02
编程前
1、了解需求.
2、考虑可能的输入和期望的输出.
3、识别出有效但非期望的输入和正确的输出.这是对于开发可靠的软件而言是一个关键点.
4、识别出无效输入并找到检测它们的方法.要注意即使输入无效的数据时,程序也不能奔溃.
5、想出解决办法,并记录.
6、设计程序,可以节省大量的时间.
03
编程中
1、若想正确且更快的完成程序, 就写更多的代码.为了满足一个要求而把代码放到一个更大的程序之前,写一个小程序来测试你的解决方案.即单元测试.
2、使用自动缩进的文本编辑器可以帮你检查代码是否对齐,可以节省宝贵的时间.
3、在运行之前一行一行的读代码.可以帮你找到通过测试很难发现的问题.
4、自己想一些测试例子. 若自己不知道自己写的代码,则计算机也不知道.
5、尽量使用函数来重构代码,避免复制代码.
6、要用版本控制系统(这不是废话吗).
7、编译时,警告信息也不要放过.
04
编程后
不要依赖测试,测试只会告诉你程序没有正常工作,不会告诉你程序真的在正常运行.很可能测试用例没有涵盖所有可能的方案.通过测试用例涵盖所有可能的方案是很困难的.
05
常见错误
未初始化变量: 一些人认为所有的变量都会自动初始化为0,C语言中不会初始化.通过测试很难测试出来.
错误数据类型: 需要理解并正确地使用类型,编程语言的趋势是让数据类型更有限制性,防止犯意外的错误.
06
后执行式和交互式调试
调试一个程序分为几个阶段, 举个列子:
1、从一个文件中读取一些整数
2、把整数排序
3、把排好序的整数存到另一个文件中
单元测试: 在上面三部整合之前测试每一部分叫作单元测试.
对于单元测试,经常需要写一些额外的代码,作为单独部分的"驱动".调试可能是交互式或后执行式的.若程序会花费几个小时,你就不会想要用交互式来调试这个程序了.相反,你会想要程序打印出调试信息,即日志.
对交互式调试而言打印调试信息存在多个问题:
1、需要插入代码来打印调试信息.多数情况下,调试信息必须在随后被移除,因为此信息不应该出现在最终的代码和它的输出中.
2、如果有很少的信息,那么就会缺少足够的信息帮助你判断哪里错了.
3、如果信息太多,可以忽略不相关的信息,获得好信息是很困难的.
4、最糟糕的是,问题可能会出现在意想不到的地方,而那里却并未插入调试信息.结果就是添加越来越多的调试信息.这是很耗时的.
07
生产代码与测试代码分离
自己应该能检测出自身bug的程序.编写程序之前就应该考虑编写测试代码.这是普遍的做法,这个称为 测试驱动的开发. 开发的时候需要将测试代码和开发代码分开,这样可以随意删除测试代码.
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)