C语言学习(小甲鱼)
第二章:数据类型,运算符和表达式
2.1:数据类型,运算符和表达式1
例3.1:
/*
时间:2022.10.01 14:51
功能:
目的:符号常量的使用
*/
#include <stdio.h>
#define PRICE 30;
void main()
{
int num,total;
num =10 ;
total=num*PRICE;
printf("total=%d\n",total);
}
/*
在VC6++上的运行结果为:
total=300
Press any key to continue
*/
2.2:数据类型,运算符和表达式2
/*
时间:2022.10.01 15:12
功能:
目的:测试此编译器int 占几个字节
*/
#include <stdio.h>
void main()
{
printf("%d\n",sizeof(int));
}
/*
在VC6++上的运行结果为:
4
Press any key to continue
*/
/*
时间:2022.10.01 15:15
功能:
目的:测试此编译器short占几个字节
*/
#include <stdio.h>
void main()
{
printf("%d\n",sizeof(short));
}
/*
在VC6++上的运行结果为:
2
Press any key to continue
*/
/*
时间:2022.10.01 15:15
功能:
目的:测试此编译器float占几个字节
*/
#include <stdio.h>
void main()
{
printf("%d\n",sizeof(float));
}
/*
在VC6++上的运行结果为:
4
Press any key to continue
*/
/*
时间:2022.10.01 15:18
功能:
目的:例3.2 整型变量的定义与使用
*/
#include <stdio.h>
void main()
{
int a,b,c,d;
unsigned u;
a=12;
b=-24;
u=10;
c=a+u;
d=b+u;
printf("a+u=%d,b+u=%d\n",c,d);
}
/*
在VC6++上的运行结果为:
a+u=22,b+u=-14
Press any key to continue
*/
/*
时间:2022.10.01 15:27
功能:
目的:例3.3 整型数据的溢出
*/
#include <stdio.h>
void main()
{
short int a,b;
a=32767;
b=a+1;
printf("%d,%d\n",a,b);
}
/*
在VC6++上的运行结果为:
32767,-32768
Press any key to continue
*/
/*
时间:2022.10.01 15:30
功能:
目的:例3.4
*/
#include <stdio.h>
void main()
{
long x,y;
int a,b,c,d;
x=5;
y=6;
a=7;
b=8;
c=x+a;
d=y+b;
printf("c=x+a=%d,d=y+b=%d\n",c,d);
}
/*
在VC6++上的运行结果为:
c=x+a=12,d=y+b=14
Press any key to continue
*/
2.3:数据类型,运算符和表达式3
/*
时间:2022.10.01 15:38
功能:
目的:例3.6 实型数据的舍入误差
*/
#include <stdio.h>
void main()
{
float a,b;
a=123456.789e5;
b=a+20;
printf("%f\n",a);
printf("%f\n",b);
}
/*
在VC6++上的运行结果为:
12345678848.000000
12345678848.000000
Press any key to continue
*/
/*
时间:2022.10.01 15:47
功能:
目的:测试1.0/3*3等于多少
*/
#include <stdio.h>
void main()
{
printf("%f\n",1.0/3*3);
}
/*
在VC6++上的运行结果为:
1.000000
Press any key to continue
*/
/*
时间:2022.10.01 15:47
功能:
目的:测试3/2等于多少
*/
#include <stdio.h>
void main()
{
printf("%f\n",3/2);
}
/*
在VC6++上的运行结果为:
0.000000
Press any key to continue
*/
/*
时间:2022.10.01 15:47
功能:
目的:测试1/3*3等于多少
*/
#include <stdio.h>
void main()
{
printf("%f\n",1/3*3);
}
/*
在VC6++上的运行结果为:
0.000000
Press any key to continue
*/
/*
时间:2022.10.01 15:53
功能:
目的:例3.8 转义字符的使用
*/
#include <stdio.h>
void main()
{
int a,b,c;
a=5;
b=6;
c=7;
printf("ab c\tde\rf\n");
printf("hijk\tL\bM\n");
}
/*
在VC6++上的运行结果为:
fb c de
hijk M
Press any key to continue
*/
```c
/*
时间:2022.10.01 16:01
功能:
目的:例3.9 向字符变量赋以整数
*/
#include <stdio.h>
void main()
{
char a,b;
a=120;
b=121;
printf("%c,%c\n",a,b);
printf("%d,%d\n",a,b);
}
/*
在VC6++上的运行结果为:
x,y
120,121
Press any key to continue
*/
/*
时间:2022.10.01 16:01
功能:
目的:例3.10 小写字母换成大写字母
*/
#include <stdio.h>
void main()
{
char a,b;
a='a';
b='b';
a=a-32;
b=b-32;
printf("%c,%c\n%d,%d\n",a,b,a,b);
}
/*
在VC6++上的运行结果为:
A,B
65,66
Press any key to continue
*/
2.4: 数据类型,运算符和表达式4
/*
时间:2022.10.01 17:10
功能:
目的:例3.1.2 各类数值型数据之间的混合运算
*/
#include <stdio.h>
void main()
{
float PI=3.14159;
int s,r=5;
s=r*r*PI;
printf("s=%d\n",s);
}
/*
在VC6++上的运行结果为:
s=78
Press any key to continue
*/
/*
时间:2022.10.01 17:16
功能:
目的:例3.1.3 强制转换
*/
#include <stdio.h>
void main()
{
float f=5.75;
printf("(int)f=%d,f=%f\n",(int)f,f);
}
/*
在VC6++上的运行结果为:
(int)f=5,f=5.750000
Press any key to continue
*/
/*
时间:2022.10.01 17:25
目的:例3.14
*/
#include <stdio.h>
void main()
{
printf("\n\n%d,%d\n",20/7,-20/7);
printf("%f,%f\n",20.0/7,-20.0/7);
}
/*
在VC6++上的运行结果为:
2,-2
2.857143,-2.857143
Press any key to continue
*/
/*
时间:2022.10.01 17:30
目的:例3.15
*/
#include <stdio.h>
void main()
{
printf("%d\n",100%3);
}
/*
在VC6++上的运行结果为:
1
Press any key to continue
*/
/*
时间:2022.10.01 17:30
目的:测试%-----取余
*/
#include <stdio.h>
void main()
{
printf("7除以2=%d------%d\n",7/2,7%2);
}
/*
在VC6++上的运行结果为:
7除以2=3------1
Press any key to continue
*/
2.5: 数据类型,运算符和表达式5
/*
时间:2022.10.01 19:06
目的:例3.18 类型转换
*/
#include <stdio.h>
void main()
{
int a,b=322;
float x,y=8.88;
char c1='k',c2;
a=y;
x=b;
a=c1;
c2=b;
printf("%d,%f,%d,%c\n",a,x,a,c2);
}
/*
在VC6++上的运行结果为:
107,322.000000,107,B
Press any key to continue
*/
/*
时间:2022.10.01 19:14
目的:例3.19 逗号运算符合逗号表达式
*/
#include <stdio.h>
void main()
{
int a=2,b=4,c=6,x,y;
y=((x=a+b),(b+c));
printf("y=%d,x=%d\n",y,x);
}
/*
在VC6++上的运行结果为:
y=10,x=6
Press any key to continue
*/
第三章:顺序程序设计
3.1:顺序程序设计01