公式:
int main(void) int代表返回参数,void表示传入参数
3.1 引例
将华氏温度转换为摄氏温度
有键盘输入一个小写字母,将其转换成大写字母输出
3.2 c语言的语句
1.说明语句
说明语句用于定义程序所使用的变量与类型
例如:
int a,b;
char ch;
2.表达式语句
表达式语句由表达式分号“;"组成。
例如:
c=a+b
是一个赋值表达式,而
c=a+b
则是一个表达式语句
3.分支语句
分支语句实现分支控制过程,根据条件成立与否执行不同的语句
if(x>y)
z=y;
else
z=y;
4.循环语句
c语言中实现循环控制的语句有3种,即for语句、while语句、和do-while语句
5.转向语句
转向语句有break语句、goto语句、continue语句、return语句
6.复合语句
用一对大括号{}将若干语句顺序组合在一起所形成的语句称为复合语句
例如:
{ sum=sum+i;
i=i+2
}
7.空语句
空语句只由一个分号构成
;
8.含数定义与调用
函数是完成特定功能的小模块,是c语言中唯一的一种子程序,常常在一个c程序中包含若干给函数,负责的任务通过调用这些函数来完成
int max(int x,int y)
{ int z;
if(x>y)
z=x;
else
z=y;
return z;
}
9.输入和输出
输出函数(printf())和输入函数(scanf())
3.3 数据的输入和输出
3.3.1 输出函数(printf())和输入函数(scanf())
1.printf()函数 一般调用格式为:
printf("格式控制字符串",输出项表列)
格式控制字符串用双引号括起来,表示输出的格式;而输出项表列则是要输出的数据,这些数据可以是常量、变量或表达式
控制字符串包括两种信息
格式控制说明:按指定的格式输出数据,其格式为以%开头的格式控制字符,不同类型的数据采用不同的格式控制字符,以说明输出数据的类型、形式、长度、小数位数等
普通字符:在输出数据时,需要原样输出的字
按指定格式输出整型数据示例
注意:
(1)格式字符与输出字符要一一对应,不同类型的数据所使用的格式字符不同。
(2)一般情况下,格式字符与输出项的个数应相同。
(3)printf()函数中可以没有输出项数,此时printf()函数只用来输出一个字符串;也可以有多个 输出项,多个输出项之间使用逗号进行分隔。
(4)若要在printf()函数 中输出字符“%”,则应在格式控制字符串中使用连续两个“%”
2.scanf()函数 其一般格式为:
scanf(“格式控制字符串”,输入项表列)
格式控制字符串用双引号括起来,表示输入的格式;而输入项表列指出各变量的地址(变量名前加&)。
(1)格式控制说明:与输出函数一样
(2)普通字符:与输出函数一样
注意:
(1)格式字符与输入项的类型、个数要一一对应:输入项必须是地址,不能是变量名
(2)格式字符可以指定输入数据所占的列数,系统会截取相应列数的数据
(3)在输入数据时遇到以下情况则认为数据输入结束:空格、Tab键、回车键、非法输入、指定宽度。
3.3.2 整型数据的输入和输出
printf()、scanf()函数中的格式字符(整型数据)
格式字符 含义
d 以十进制形式输入/输出带符号整数
o 以八进制形式输入/输出无符号整数
x,X 以十六进制形式输入/输出无符号整数
u 以十进制形式输入/输出无符号整数
printf()函数中的格式修饰符
格式字符 含义
1 用于输出长整型
- 输出结果左对齐,右边补空格
+ 输出符号(正号或负号)
# 对d、u格式字符无影响;对o格式字符,在输出时加前缀o;对格式字符,在输出时加前缀ox
m 指定数据的输出宽度。当数据的实际位数大于m时,则按实际位数输出;当数据的实际位数小于m时,若输出宽度前有“-”则左对齐右补空格,否则右对齐左补空格
scanf()函数中的格式修饰符
格式符号 含义
1 用于输入长整型
m 指定输入数据所占的宽度
* 表示本输入项不会赋值给相应的变量
整型数据的输入示例
(1)若程序运行时输入:12 23 34/
(2)若程序运行时输入:12,23 34
(3)若程序输入:12 23 34/
带有修饰符的整型数据的输入输出示例
3.3.3 实型数据的输入和输出
格式字符(实型数据)
函数 格式字符 含义
f 以小数形式输出单精度或双精度数(保留6为小数)
printf E,e 以指数形式输出但精度或双精度数
g 以%f、%e中较短的输出宽度输出单精度或双精度数
f 以小数形式输入单精度数
scanf E,e 以指数形式输入单精度数
if 以小数形式输入双精度数
le 以指数形式输入双精度
实型数据的输入输出示例
3.3.4 字符型数据的输入和输出
getchar()和putchar()函数只能用于单个字符的输入和输出
scanf()和printf()函数可以用于多个字符的输入和输出
1.使用scanf()和printf()函数对字符型数据进行输入输出
字符型数据的输入输出示例
(1)若程序运行时输入:
x y z/,则输出结果:
(2)若将语句1改为“scanf("%c %c %c", &a,&b,&c);"则程序运行时输入x y z/
(4)若将语句1改为”scanf(“%3c%3c*%3c%c”,&a,&b,&c);“程序运行输入:How Are You?/
2.使用getchar()函数和getchar()函数对字符型数据进行输入输出
函数getchar()的一般调用格式为:
ch=getchar();
运行时从键盘输入缓冲区中读取一个字符,并赋值给变量ch,由于函数getchar()只能读一个字符,若需输入多个 字符,就需要多次调用函数,一般采用循环调用的方式。
函数putchar()的一般调用格式:
putchar(输出参数);
输出一个字符,输出参数是字符型变量或字符型常量
由键盘输入一个字符,将其输出到屏幕
(1)用getchar()函数得到的字符可以赋给一个字符变量或整型变量,也可以不赋给任何变量,而直接作为putchar()函数的参数。例如
#include<stdio.h>
int main()
{ putchar(getchar());
return 0;
(2)可以在printf函数输出刚接收的字符
#incldue<stdio.h>
int main()
{ printf("%c",getchar());
return 0
}
3.4 数学库函数
常用的数学库函数有:
(1)指数函数exp(x):计算ex。如exp(2.3)的值为9.974182
(2)绝对值函数fabs:计算|x|。如fabs(-2.8)的值为2.8
(3)以e为底的对位函数log(x):计算lnx。如log(123.45)的值为4.815836
(4)幂函数pow(x,y):计算x的y次方。如pow(1.3,2)的值为1.69
(5)平方根函数sqrt(x):计算根号x。如sqrt(4.0)的值为2.0
用户在程序在调用数学库函数时,一定要在程序开头使用#include<stdio.h>
输入一个球的半径,计算球的体积
求一元二次方程ax2+bx+c=0的根
+