C语言の简单知识

简要知识说明

1.C语言程序是区分大小写和全半角的。
		
2.人们通过字符序列创建出的程序称为源程序,用来保存源程序的文件称为源文件。
		
3.源文件的扩展名为".c"。
		
4.源程序中/*和*/之间的部分,称为注释。

printf函数:格式化输出函数

#include <stdio.h>

int main(void)
{
	printf("1与2的和是%d", 1+2);			/*函数调用*/

	return 0;
}

printf ,函数名。
“1与2的和是%d。” ,实参
1+2 ,实参

格式化字符串和转换说明

printf("1与2的和是%d。\n", 1+2);

“1与2的和是%d。” ,称为格式化字符串。
%d ,称为转换说明,指定了实参要以时间指数的形式显示。
\n ,换行符。

无格式化输出

printf("您好!我叫高先森。\n");

字符串常量

像"您好!"这样用双引号括起来的一连串连续排列的文字,称为字符串常量。

转义字符

像\n这样的特殊符号称为转义字符。

变量和声明

int n;		/*声明一个整型(int型)的变量n*/

赋值

"=",表示把右侧的值赋给左侧的变量。

初始化

int n = 3;		/*声明一个整型(int型)的变量n,并初始化其值为3*/

格式化输入函数

#include <stdio.h>

int main(void)
{
	int n;
	printf("请输入一个整数:");
	scanf("%d", &n);		/*此处要用&*/

	printf("您输入的是%d.\n",n);

	return 0;
}

输出函数puts

puts("您好!我叫高先森。");

puts函数可以按顺序输出作为实参的字符串,并在结尾换行。也就是说,puts("…")与printf("…\n")的功能基本相同。

运算符和操作数

像+、*这样可以进行运算的符号称为运算符,作为运算对象的变量或常量称为操作数。
单目运算符:
只对一个操作数进行逻辑运算。
例:num++(自增)、num--(自减)、!num(取反)、~num(按位取反)。
双目运算符:
只对两个操作数进行逻辑运算。
例:n1+n2、n1-n2、n1*n2、n1/n2、n1%n2。
三目运算符:
对三个操作数进行逻辑运算。
例:num1 = num1 > 3 ? 1 : 2
析:如果变量num1的值大于3,那么变量num1的值就变为1,否则值就变为2.

使用printf函数输出

格式化字符转中写的是%%。这里的格式化字符串中的%符号具有转换说明的功能。因此,当不需要转换说明,
而只想输出%的时候,就必须写成%%。

当使用不具有转换说明功能的puts函数来进行输出的时候,就不能写成%%(这样会输出%%的)。

数据类型

函数名int类型double类型
使用printf函数进行显示printf("%d",n)printf("%f",n)
使用scanf函数进行显示scanf("%d",&n)scanf("%lf",&n)
%f默认显示小数点后6位数字。

运算

进行整数/整数运算的时候,商的小数部分会被舍弃,但是浮点数之间的运算,就不会进行舍弃处理。

运算符%本身的特性决定了它只能用于整数之间的运算,而不能用于浮点数之间的运算。

1.int / int = int

2.double / double = double

3.double / int 		进行隐式类型转换,自动向上转型为double类型。
==>		double / double = double

4.int / double		进行隐式类型转换,自动向上转型为double类型。
==>		double / double = double
#include <stdio.h>

int main(void)
{
	int n1, n2, n3, n4;
	double d1, d2, d3, d4;

	n1 = 5 / 2;
	n2 = 5.0 / 2.0;
	n3 = 5.0 / 2;
	n4 = 5 / 2.0;

	d1 = 5 / 2;
	d2 = 5.0 / 2.0;
	d3 = 5.0 / 2;
	d4 = 5 / 2.0;

	printf("n1 = %d\n", n1);
	printf("n2 = %d\n", n2);
	printf("n3 = %d\n", n3);
	printf("n4 = %d\n\n", n4);

	printf("d1 = %f\n", d1);
	printf("d2 = %f\n", d2);
	printf("d3 = %f\n", d3);
	printf("d4 = %f\n", d4);

	return 0;
}
运行结果
n1 = 2
n2 = 2
n3 = 2
n4 = 2

d1 = 2.000000
d2 = 2.500000
d3 = 2.500000
d4 = 2.500000
int型变量的赋值
把2赋值给int型变量n1,把2.5分别赋给n2、n3和n4。由于在赋值的时候会舍弃掉小数点之后的部分,
因此最后这四个变量的值都是2。
double型变量的赋值
把2赋值给double型变量d1(但是因为d1是double型,所以2会被解释为2.0)。把2.5分别赋值给d2、d3和d4的时候,
它们都能把这些值完整地保存起来。

类型转换

类型转换表达式: (数据类型) 表达式

例:(int) 5.7 会把浮点数5.7的小数部分舍去,从而转换为int类型的5.
	(double) 5 会将整数5转换为double类型的5.0 。

这样的显示转换就称为类型转换,()称为类型转换运算符。

转换说明

% 0 8 . 9 f

0 : 0标志

设定了0标志之后,如果数值的前面有空余位,则用0补齐位数(如果省略了0标志,则会用空白补齐位数)。

8 : 最小字段宽度

也就是至少要显示出的字符位数。不设定该位数或者显示数值的实际位数超过它的时候,会根据数值显示出必要的位数。
另外,如果设定了"-",数据会左对齐显示,未设定则会右对齐显示。

9 : 精度

指定显示的最小位数,如果不指定,则整数的时候默认为1,浮点数的时候默认为6.

f : 转换说明符

d ... 显示十进制的int型整数。
f ... 显示十进制的double型浮点数。
#include <stdio.h>

int main(void)
{
	printf("[%d]\n",     123);
	printf("[%.4d]\n",   123);
	printf("[%4d]\n",    123);
	printf("[%04d]\n",   123);
	printf("[%-4d]\n\n", 123);

	printf("[%d]\n",     12345);
	printf("[%.3d]\n",   12345);
	printf("[%3d]\n",    12345);
	printf("[%03d]\n",   12345);
	printf("[%-3d]\n\n", 12345);

	printf("[%f]\n",      123.13);
	printf("[%.1f]\n",    123.13);
	printf("[%4.1f]\n",   123.13);
	printf("[%6.1f]\n\n", 123.13);

	return 0;
}
运行结果
[123]
[0123]
[ 123]
[0123]
[123 ]

[12345]
[12345]
[12345]
[12345]
[12345]

[123.130000]
[123.1]
[123.1]
[ 123.1]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值