C语言教学设计(推荐)_c语言教学设计
C语言教学设计(推荐)由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“c语言教学设计”。
C语言中的“潜规则”
C语言中有一些默认处理规则,了解这些规则对于阅读程序和理解程序运行结果非常有帮助。
(1)自动类型转换。① 将一个值赋值给变量时,如果那个值与变量的数据类型不同,则将自动转换为变量的数据类型,否则数据无法写入变量。② 表达式求值过程中,char型变量和常量被引用时,自动转换为int型;float型变量被引用时,自动转换为double型;然后按照“int
在C语言中,任何标识符都有意义。但是函数名的意义是什么呢?它实际上是一种函数指针值,代表着函数的第一条指令。初学者在调用函数时容易漏掉(),可能导致逻辑错误。试比较下面程序中的2条if语句。if fun()
{ …
} void main()
{ if(fun())/*如果函数fun的返回值逻辑上为真,则如何如何*/ …
if(fun)/*这里fun被看作是指针值,函数没有得到调用。*/ …
}(3)默认的数据类型。
请问,下面的函数定义中,函数的返回值类型是什么?
fun(float x,float y)
{ …
}
如果你认为是void或者没有返回值,那就错了。C语言规定,默认的数据类型一律是int。函数定义时,不指定返回值类型,编译器将返回值类型默认为int。如果设计一个没有返回值的函数,必须将返回值类型默认为void。
下面程序中,函数Multi的意图是计算参数x和y的乘积,但是只保留小数点后1位,其他位按照四舍五入处理。但是运行时,当用户输入1.63,4按“回车”键后,程序输出结果是: The result is 6.0 而我们期望的结果应该是:
The result is 6.5 而且,无论你输入哪两个数,最终输出结果中小数点后面一定是0.问题就出在Multi函数定义上。这个函数在定义时没有指定返回值类型,C语言编辑器将其默认为int型。