您的位置:首页 > 编程语言 > C语言/C++

C语言系列之-----入门

2012-06-08 10:03 120 查看

1.第一个C语言 程序

#include <stdio.h>             //包含标准输入输出库

main()                         //main函数,程序入口
{
printf("Hello,world\n");     //\n为换行符
}


2.符号常量

在程序中我们经常会用到一些常量,如for循环中:

//连续输出10遍“Hello”
for(int i = 0; i < 10; i++)
{
printf("Hello\n");
}


上述代码中,别人在读这段程序时,如果不做好注释或者完成更加复杂的内容,会很难理解这个10代表什么意义。我们称之为“神仙数”或者“幻数”。

如果我们大量用到10所代表的变量,修改时会需要修改很多地方,容易漏掉,并且编译器不会报错,这样就会出现一些意想不到并且不易察觉的错误。

因此我们推荐用宏定义的方式调用类似的数值。

例如:

#include <stdio.h>
#define   UPPERNUM   10

main()
{
for(int i = 0; i < UPPERNUM; i++)       //此处采用宏定义,如果需要修改只需在#define处修改宏定义即可
printf("Hello\n");
}


3.参数---传值调用

C语言中,所有参数函数都是”通过值“传递的,也就是被调用函数的参数值存放在临时变量中,而不是存放在原来的变量中,即访问参数的本地副本。

被调用函数不能直接修改主调函数中变量的值,只是修改私有的临时副本的值。

int power(int base, int n)
{
int p;

for(p = 1; n > 0; --n)
p = p * base;

return p;
}


参数n在循环中,n执行递减运算,直到为0,power函数内部对n的任何操作不会影响到调用函数中n的原始参数值。

例如:
main()
{
int m_base = 3;
int m_num = 3;
int m_result = power(m_base, m_num);
printf("%d\n", m_result);
printf("%d\n", m_num);

}


执行输出结果:
27
3
(VC 6.0下测试)

此时m_num的初始值是3,调用power函数后,m_result得到计算结果为27,m_num依旧为3。

如果我们需要函数能都修改主调函数中的变量,我们一般采用传递指针的办法。

4.编程小技巧

在刚开始学编程的时候很容易出现的一个错误就是”==“判等与”=“赋值习惯性的出错,很容易漏掉一个等号,将”==“写为”=“,在检查错误的时候还不容易发现,

因此我们推荐一种写法 if(10==n),这种写法来判断两个值是否相等,前提是常量判等,这种情况下,如果错将”==“写为”=“,编译器会报错,因为它不允许将一个变量赋值给

常量。

编程小组刚刚起步,希望大家多提宝贵意见,谢谢!

(注:推荐书目 《C程序设计语言》 克尼汉版)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: