1C语言数据类型

数据类型

1-数据类型长度.c

#include <stdio.h>           //包含头文件(函数的声明  自定义类型的声明  宏定义)

int main()                   //int函数(返回值)的类型 main函数名(所有工程有且只有一个main函数)
{
	printf("int占%ld个字节\n", sizeof(int));          //输出函数  sizeof关键字 求数据类型的长度
	printf("char占%ld个字节\n", sizeof(char));
	printf("short占%ld个字节\n", sizeof(short));
	printf("long占%ld个字节\n", sizeof(long));
	printf("float占%ld个字节\n", sizeof(float));
	printf("double占%ld个字节\n", sizeof(double));

	return 0;                //返回值(前后呼应)
}

2-数据运算.c

```c
#include <stdio.h>
#include <string.h>

int main()
{
	/*char *s = "hello\0world";     //\0字符串结束标志(一个字符)
	printf("%lu\n", strlen(s));   //strlen求字符串长度 遇到字符\0结束
	char ch = '\0';
	printf("%d\n", ch);           //字符\0的asc码就是0,在内存中就是数字0*/

	char a[1000] = {0};
	int i;
	for (i = 0; i < 1000; i++)
	{
		a[i] = -1 - i;
		printf("%d ", a[i]);
	}
	printf("\n%lu\n", strlen(a));

	return 0;
}


3-常量.c

```c
#include <stdio.h>

#define PRICE    10     //宏定义 常量

int main()
{
	PRICE * 100;    //等价于 10 * 100
//	PRICE = 100;    //常量不能修改

	0x100 * 1l;      //0x100 十六进制的常量  l表示1是长整型常量
	1.11f * 1;       //f表示浮点型常量

	int a;          //变量,程序运行过程中值可以被修改

	const int b = 1;   //b是只读变量
	//b = 2;        //不能通过变量b来修改对应内存的值,只能通过其他方式修改(引用  指针)
	int *p = (int *)&b;
	*p = 2;
	printf("b = %d\n", b);

	return 0;
}



```4-输入输出.c

#include <stdio.h>

int main()
{
	int a, b;

	//scanf("%d", &a);   //从标准输入获取一个数字,存放在变量a中 参数一定是地址
	//printf("a = %d\n", a);

	//scanf("%d%d", &a, &b);
	//printf("a = %d b = %d\n", a, b);

	char ch;
	//scanf("%c", &ch);
	//printf("ch = %c\n", ch);

	a = 100;
	printf("%d\n", a);
	printf("%o\n", a);   //八进制输出
	printf("%x\n", a);
	//printf("%p\n", a);   //十六进制输出

	float c = 1.1111;
	printf("%f\n", c);   //输出浮点型
	printf("%5.2f\n", c);

	return 0;
}



5-取整取余.c

```c
#include <stdio.h>
#include <stdlib.h>

int main()
{
	int num;

	scanf("%d", &num);

	if (num < 1000 || num > 9999)
	{
		exit(1);          //退出程序
	}

	int ge = num % 10;
	int shi = num / 10 % 10;
	int bai = num / 100 % 10;
	int qian = num / 1000;

	printf("%d\n", ge * 1000 + shi * 100 + bai * 10 + qian);

	return 0;
}



6-强制类型转换.c

#include <stdio.h>

int main()
{
	int a = 1;
	char ch = 'z';

	//a = (int)ch;
	a = ch;         //隐式转换

	const int num = 1;
	int *p = (int *)&num;

	return 0;
}

7-逻辑运算符.c

#include <stdio.h>

int f1()
{
	printf("this is f1\n");
	return 0;
}

int f2()
{
	printf("this is f2\n");
	return 1;
}

int main()
{
	int a = 1, b = 0;

	if (f1() && f2())        //短路原则:如果条件1不成立,则不会判断条件2
	{
		printf("helloabcd\n");
	}

	if (a && b)    //逻辑与 两个表达式都要成立
	{
		printf("helloworld!\n");
	}

	if (a || b)   //逻辑或 有一个表达式成立就行
	{
		printf("this is test\n");
	}
	return 0;
}


8-单目运算符.c

```c
#include <stdio.h>

int main()
{
	int i = 1;

	//i = i + 1;
	i++;           //等价于i = i + 1
	++i;

	int num = 10;
	printf("%d\n", num++);    //执行num所在语句之后,num的值加一
	printf("%d\n", ++num);    //执行num所在语句之前,num的值加一

	num = 10;
	num += num++;    //num += num;  num = num + num
	printf("num = %d\n", num);

	num = 10;
	num += ++num;    //num = num + 1;   num += num;
	printf("num = %d\n", num);

	return 0;
}

9-条件运算符.c
#include <stdio.h>

int main()
{
	int a = 1, b = 2;
	int max;

	max = (a > b) ? a : b;
	printf("%d\n", max);

	//(a > b) ? a : b = 100;   //C语言中,条件运算符不能作为左值使用     2 = 100;


	return 0;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值