C语言基础学习day01
使用C语言的7个步骤
1. 定义程序的目标
2. 设计程序
3. 编写代码
4. 编译
5. 运行程序
6. 测试和调试程序
7. 维护和修改程序
第一个C语言代码
#include <stdio.h> int main(void) /*一个简单的C程序 */ { int num; /*定义一个名为num的变量 */ num=1; /*为num赋值 */ printf("I am a simple "); /*使用printf()函数 */ printf("computer.\n") ; printf("My favorite number is %d because it is first.\n",num); return 0; }
程序调整:在return语句前添加一个getchar(); 这行代码会让程序等待点击,窗口会在用户按下一个键后才关闭
每行代码的作用
1. #include <stdio.h>
该行告诉编译器把stdio.h中的内容包含在当前程序中,stdio.h是C编译器软件包的标准部分,它提供键盘输入和屏幕输出的支持
作用是把stdio.h文件中所有内容都输入该行所在的位置,类似于拷贝-粘贴的操作,include文件提供了一种方便的途径共享许多程序共有的信息
所有的C编译器软件包都提供stdio.h文件,该文件包含了供编译器使用的输入和输出函数,通常在C程序顶部的信息集合被称为头文件,简而言之,头文件帮助编译器把你的程序正确的组合在一起
#为预处理
2. int main(void)
圆括号表明main()是一个函数名,int表明main()函数返回一个整数,返回给操作系统,void表明main()不带任何参数。
C语言程序一定从main()函数开始执行,除了main()函数,可以任意命名其他函数,而且main()函数必须是开始的函数
3. { }
左花括号表示函数定义开始,右花括号表示函数定义结束
4. int num;
声明表明将使用一个名为num的变量,而且num是int(整数)类型
声明变量的四个理由:
1. 把所有的变量放在一处,方便读者查找和理解程序的用途
2. 声明变量会促使你在编写程序之前做一些计划
3. 声明变量有助于发现和隐藏在程序中的小错误
4. 如果事先未声明变量,C程序将无法通过编译
5. num=1;
把值赋给名为num的变量
6. printf("I am a simple ");
printf()是调用函数,在屏幕上打印语句
7. return 0;
return语句,C函数可以给调用方提供(或返回)一个数,目前,可以暂时把该行看做是结束main()函数的要求
如果遗漏main()函数中的return语句,程序在运行至最外面的右花括号时会返回0,所以可以省略main函数中的return语句,
但是不要在其他有返回值的函数中漏掉它,因此强烈建议读者养成在main()函数中保留return语句的好习惯,可将其看做是统一代码风格
简单程序的结构
程序由一个或多个函数组成,必须有main()函数
函数由函数头和函数体组成
函数头包括函数名、传入该函数的信息类型和函数的返回类型,函数体被花括号括起来,由一系列语句、声明组成
最后,main()以return语句结束
简单的C程序格式如下:
#include<stdio.h> int main(void) { 语句 return 0; } //大部分语句都以分号结尾
提高程序可读性
1. 变量名---见名知意,选择有意义的函数名
2. 写注释
3. 在函数中用空行分隔概念上的多个部分
4. 每个语句各占一行
多个函数
//一个文件中包含两个函数 #include<stdio.h> void butler(void); //第一次出现 int main(void) { printf("I will summon the butler function.\n"); butler(); //第二次出现 printf("Yes.Bring me some tea and writeable DVDs.\n"); return 0; } void butler(void) //第三次出现 { printf("You rang,sir?\n"); }
输出结果:
butler()函数在程序中出现了3次
1. void butler(void);
第一次是函数原型,告知编译器在程序中要使用该函数,也叫作函数声明
2. butler();
第二次以函数调用的形式出现在main()中
3. void butler(void)
第三次是函数定义,函数定义即是函数本身的源代码
编程练习
#include<stdio.h> int main(void) { printf("yangyuqing1\n"); printf("yangyuqing2\nyangyuqing2\n"); printf("yangyuqing3"); printf("yangyuqing4"); }
2. 编写一个程序,把你的年龄转换成天数,并显示这两个值,不用考虑闰年的问题
#include<stdio.h> int main(void) { int age; age=24; int days=age * 365; printf("you are %d years old.\n",age); printf("days are %d 天\n",days); return 0; }
输出结果:
3. 在C语言中,函数可以调用另一个函数,编写一个程序,调用一个名为one_three()的函数,该函数在一行打印单词"one",再调用第二个函数two(),然后在另一行打印单词"three"。two()函数在一行显示单 词"two",main()函数在调用one_three()函数前要打印短语"starting now:",并在调用完毕后显示短语“done!”
#include<stdio.h> void one_three(void); void two(void); int main(void) { printf("starting now:\n"); one_three(); two(); printf("done!"); } void one_three(void) { printf("one\n"); } void two(void) { printf("two\n"); printf("three\n"); }
输出结果:
starting now:
one
two
three
done!
#include<stdio.h> void laugh(void); int main(void) { laugh();laugh();laugh();printf("\n"); laugh();laugh();printf("\n"); laugh();printf("\n"); } void laugh(void) { printf("Smile!"); }