1语句概述
1.1普通表达式语句:表达式后加分号就是一个表达式语句,语句与表达式不同,是无值的,而表达式是有值的。
1.2流程控制语句:流程控制语句主要用来控制程序执行走向,以实现程序的各种结构方式,它有特定的关键字等,主要分为分支和循环两种。
分支流程控制语句:if、switch。
循环流程控制语句:for、while、do while。
1.3跳转语句:跳转语句的作用主要是让程序从正常执行的走向中跳转到其它部分,常见跳转语句如下
间断语句:break、continue。
转向语句:goto。
Return语句:return。
1.4复合语句:由一些语句组成,放在一个大括号中形成一个整体,句型如下:
{
语句1;
语句2;
......
语句n;
}
C语言语法规定,复合语句作为一条语句来处理。
例子代码:
#include "stdio.h" main(){ int a=11,b=21,c=31; printf("a=%d\tb=%d\tc=%d\n",a,b,c); { int b=22; /*复合语句开始*/ float c=3.3; printf("a=%d\tb=%d\tc=%f\n",a,b,c); a=b; } /*复合语句结束*/ printf("a=%d\tb=%d\tc=%d\n",a,b,c); }
输出结果如下:
a=11 b=21 c=31
a=11 b=22 c=3.300000
a=22 b=21 c=31
上面的代码可以和下面的代码对比运行:
#include "stdio.h" main(){ int a=11,b=21,c=31; printf("a=%d\tb=%d\tc=%d\n",a,b,c); { int a=1; int b=22; /*复合语句开始*/ float c=3.3; printf("a=%d\tb=%d\tc=%f\n",a,b,c); a=b; } /*复合语句结束*/ printf("a=%d\tb=%d\tc=%d\n",a,b,c); }
程序运行结果:
a=11 b=21 c=31
a=1 b=22 c=3.300000
a=11 b=21 c=31
可以看到,在复合语句中声明的变量只在复合语句中起作用。
1.5空语句:空语句一般指只有一个分号占位,一般用在程序设计初期,表示待编写的函数或代码。
1.6各种语句整体介绍:
#include "stdio.h" main(){ int a=10,b=20,c; /* 声明语句 */ if(b>a) /*控制语句 */ {; /* 复合语句 */ c=a+b; ; /* 表达式语句 */ printf("%d",c); /*函数调用语句 */ } else ; /* 空语句 */ }
2库函数的调用与输入输出的关系
2.1标准的库函数是存放在函数库中的,因此使用时必须要告知计算机,说明函数库属于哪个库,此过程为函数的声明,例如:
#include "math.h" /*标准数学函数的声明*/
Main(){
...
y=sin(x); /*库函数的调用*/
...
}
Include是C语言中的特定字,是包含的意思,包含的文件一般为.h,称头文件。
2.2在C语言中提供了一些输入输出的标准库函数,例如printf和scanf,使用时必须将函数库的头文件stdio.h包含进程序中。
3格式化输出
3.1printf函数:它的作用是向终端输出数据。
函数格式:printf("格式控制语句",输出项1,输出项2,......);
例如:printf("%f",j); 输出浮点类型的变量j,%f为控制符。
常见的格式控制符:
%d--十进制整型,%o---八进制无符号整型,%f输出实数,%s--字符串,%c--输出单个字符等。
4字符输出
4.1字符输出可以利用putchar函数,在stdio.h中已经定义。
例子代码:
#include "stdio.h" main(){ char a,b,c; a='C'; b='A'; c='T'; putchar(a); putchar(b); putchar(c); putchar('\n'); putchar('\101'); putchar('B'); putchar('c'); }
注:该函数不能输出两个或两个以上的字符数据。
5格式化输入
5.1scanf函数:作用是从键盘获取数据,格式化后再赋值给变量。
调用形式:scanf(格式控制语句,输入项);
6字符输入
6.1getch()和getche()函数:功能都是读入一个字符。
两者的区别是:getch()函数不将读入的字符回显到屏幕上,getche()却显示。
例子代码:
#include<stdio.h> main() { char c,ch; c=getch(); /*从键盘上读入一个字符不回显送给字符变量c*/ ch=getche(); /*从键盘上带回显的读入一个字符送给字符变量ch*/ putchar(c); /*输出该字符*/ putchar(ch); }
6.2getchar()函数:作用是从终端输入一个字符。getchar函数将空格符、制表符、和换行符都作为有效字符录入。
例子代码:
#include "stdio.h" main() { char c1,c2; c1=getchar(); c2=getchar(); putchar(c1); putchar(c2); }
7顺序程序设计
例一:计算一元二次方程的根。
代码:
#include "math.h" main() { double a,b,c; /*声明系数*/ double x1,x2,p; printf("pleaseinputa,b,c:"); scanf("%lf%lf%lf",&a,&b,&c); /*输入系数*/ printf("\n"); p=b*b-4*a*c; /*p存放判别式的值*/ x1=(-b+sqrt(p))/(2*a); /*计算方程的根*/ x2=(-b-sqrt(p))/(2*a); printf("x1=%f,x2=%f\n",x1,x2); /*输出结果*/ }
例二:两位整数倒序。
代码:
#include <stdio.h> main() { int m,n; printf("inputm(10-99):"); scanf("%d",&m); printf("\n"); n=m%10; m=n*10+m/10; printf("m=%d\n",m); }