栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

4-08 初识C语言+作业

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

4-08 初识C语言+作业

4-08 初识C语言+作业

作业讲解环节

  • C语言中数据类型:
    • 内置的:char short int long long long float double
    • 自定义:struct
  • 局部变量不一定作用域是在main函数内部,而是其所在的局部范围
#include 
int num = 10;
int main()
{
    int num = 1;
    printf("num = %dn", num);
	return 0;	
}
  • 局部变量优先

  • 输出小飞机:

#include 
int main()
{
    printf("     **     n");
    printf("     **     n");
    printf("************n");
    printf("************n");
    printf("    *  *    n");
    printf("    *  *    n"); 
    
    return 0;
}
  • 在线 OJ :Online Judge 互联网公司面试
    • 两种方式:
      • IO型:所有代码都是自己完成
      • 接口型:只需要一个函数,假设其他的数据都是准备好的

输出分为三行,分别为标题行,分隔行,信息行。
第一行,标题行,每个标题之间间隔4个空格。
第二行,分隔行,一共21个减号"-"。
第三行,信息行,每列输出信息和标题首字母对齐。输出样例如下:
Name Age Gender


Jack 18 man

int main()
{
    printf("Name    Age    Gendern");
    printf("---------------------n");
    printf("Jack    18     mann");
    return 0;
}

你的手机丢了,在屏幕上输出信息告诉大家。
I lost my cellphone!

int main()
{
    printf("I lost my cellphone!n");
    return 0;
}

(-8+22)×a-10+c÷2计算之后的结果,为一个整数。

#include 
 
 
int main()
{
    int a = 40;
    int c = 212;
    int ret = (-8+22)*a-10+c/2;
    printf("%dn", ret);
    return 0;
}
  • 注意C语言中的乘号是* 除号是/
  • 区分0和’0’
    • 0 是数字0
    • '0’是字符0 —— 对应ASCII码值是48
    • ‘’ 是字符——对应ASCII码值是0
    • EOF 是 end of file 文件的结束标志 值是-1
  • 求字符串长度
#include 
#include 
int main()
{
    printf("%dn", strlen("c:test121"))//7
    return 0;
}
  • 求字符串长度
#include 
#include 

int main()
{
    char arr[] = {'b', 'i', 't'};
    printf("%dn", strlen(arr));//随机值
	return 0;
}
  • strlen计算函数长度时读到才结束
#include 
#include 

int main()
{
    char arr[4] = {'b', 'i', 't'};
    printf("%dn", strlen(arr));//3
	return 0;
}
  • 不完全初始化,剩余的元素自动初始化为零
int main()
{
	int n = 10;
	int arr[n] = { 0 };//数组的初始化长度应为常量
	return 0;
}
  • C99标准之前,数组的大小都是用常量或者常量表达式指定

  • C99标准之后,支持了变长数组,这个时候允许数组的大小是变量,但这种方式指定的数组是不能初始化的

  • 求两个整数的较大值

int Max(int x, int y)
{
	if (x > y)
		return x;
	else
		return y;
}
int main()
{
	int a = 0;
	int b = 0;
	scanf("%d%d", &a, &b);
	//求两个整数的较大值
	int r = Max(a, b);
	printf("%dn", r);
	return 0;
}
  • 已知一个函数y=f(x),当x < 0时,y = 1;当x = 0时,y = 0;当x > 0时,y = -1.
  • 输入一个整数x 输出y的值
#include 
int main()
{
    int x = 0;
    int y = 0;
    scanf("%d", &x);
    if(x<0)
        y = 1;
    else if(x == 0)
        y = 0;
    else
        y = -1;
    
    printf("%dn", y);
    return 0;
}
  • C语言是非常灵活的 : 提供了非常丰富的操作符 , 使用起来非常灵活
  • 算术操作符: + - * / %
int main()
{
	int a = 7 / 2;
	int b = 7 % 2;//取模
	printf("%dn", a);
	printf("%dn", b);

	return 0;
}
  • 除号两端都是整数时,执行的是整数除法,如果两端至少有一个浮点数执行浮点数除法
  • 取模操作符两端的两个操作数只能是整数
int main()
{
	float a = 7.0 / 2;
	int b = 7 % 2;
	printf("%.1fn", a);
	printf("%dn", b);
	return 0;
}
  • 单目操作符——只有一个操作数的操作符
  • C语言中0表示假 非0表示真
int main()
{
	int flag = 0;
	if (!flag)
	{
		printf("hehen");//打印hehe
	}
	return 0;
}
  • -也是一个单目操作符
int main()
{
	int a = -10;
	int b = -a;
	printf("%dn", b);

	return 0;
}
  • sizeof 是单目操作符
int main()
{
	int a = 10;
	printf("%dn", sizeof(a));
	printf("%dn", sizeof(int));
	printf("%dn", sizeof a);
	printf("%dn", sizeof int);//语法不支持
	return 0;
}
int main()
{
	int arr[10] = { 0 };
	printf("%dn", sizeof(arr));//计算的是整个数组大小,单位是字节
	printf("%dn", sizeof(arr[0]));//4
	printf("%dn", sizeof(arr) / sizeof(arr[0]));//10 - 数组的元素个数
	return 0;
}
  • 后置++
int main()
{
	int a = 10;
	int b = a++;//int b = a ; a = a + 1   后置++:先使用,后++
	printf("%dn", a);//11
	printf("%dn", b);//10
	return 0;
}
  • 前置++
int main()
{
	int a = 10;
	int b = ++a;//a = a + 1;b = a   后置++:先使用,后++
	printf("%dn", a);//11
	printf("%dn", b);//11
	return 0;
}

  • 后置–
int main()
{
	int a = 10;
	int b = a--;//int b = a;a = a - 1   后置++:先使用,后++
	printf("%dn", a);//9
	printf("%dn", b);//10
	return 0;
}
  • 前置–
int main()
{
	int a = 10;
	int b = --a;//a = a - 1;int b = a  后置++:先使用,后++
	printf("%dn", a);//9
	printf("%dn", b);//9
	return 0;
}
  • 强制类型转换
int main()
{
	int a = (int)3.14;
	printf("%dn", a);
	return 0;
}
  • ==判断相等
int main()
{
	int a = 10;
	if (a = 3)
	{
		printf("hehen");
	}
	return 0;
}
  • 逻辑与 && 并且
int main()
{
	int a = 10;
	int b = 20;
	if (a && b)
	{
		printf("hehen");//打印hehe
	}
	return 0;
}
int main()
{
	int a = 10;
	int b = 0;
	if (a && b)
	{
		printf("hehen");//不打印hehe
	}
	return 0;
}
int main()
{
	int a = 0;
	int b = 0;
	if (a && b)
	{
		printf("hehen");//不打印hehe
	}
	return 0;
}
  • 逻辑或 || 或者
int main()
{
	int a = 0;
	int b = 0;
	if (a && b)
	{
		printf("hehen");//不打印hehe
	}
	return 0;
}
int main()
{
	int a = 10;
	int b = 0;
	if (a && b)
	{
		printf("hehen");//打印hehe
	}
	return 0;
}
int main()
{
	int a = 10;
	int b = 20;
	if (a && b)
	{
		printf("hehen");//打印hehe
	}
	return 0;
}
  • 条件操作符(三目操作符)——有三个操作数 exp1 ? exp2 : exp3

    • 如果exp1为真,exp2计算,exp3不计算,exp2为表达式结果
    • 如果exp1为假,exp2不计算,exp3计算,exp3为表达式结果
  • 求两个数的较大值

int main()
{
	int a = 100;
	int b = 20;

	int r = (a > b) ? a : b;
	printf("%dn", r);
	return 0;
}
  • 逗号表达式就是用逗号隔开的一串表达式,从左向右依次计算,整个表达式的结果是最后一个表达式的结果
int main()
{
	int a = 10;
	int b = 20;
	int c = 0;
	int d = (c = a - 2, a = b + c, c - 3);//c = 8, a = 28, 5  ->  5
	printf("%dn", d);
	return 0;
}
  • 下标引用操作符
int main()
{
	int arr[10] = { 10,11,12,13,14,15,16,17,18,19 };
	arr[3];//[]下标引用操作符
	return 0;
}
  • 访问元素时下标可以用变量定大小
int main()
{
	int arr[10] = { 10,11,12,13,14,15,16,17,18,19 };
	int n = 3;
	arr[n] = 20;//[]下标引用操作符
	return 0;
}
  • 函数调用操作符
int main()
{
	int sum = Add(2, 3);//Add,2,3都是()的操作数
	return 0;
}
  • 关键字是C语言内置的,不可以自己创建出来

    • 内置类型int,char均是关键字
    • const 常属性
    • continue与break用于循环语句中
    • default用于swtich语句
    • enum——枚举类型 struct——结构体 union——联合体
    • extern用来声明外部符号
    • register寄存器变量
    • signed 有符号的 unsigned 无符号的
    • sizeof计算大小的
    • static 静态的
    • typedef 类型重定义
    • void(无,函数的返回类型,函数参数)
  • 变量的命名:
    1.有意义
    2.必须是字母、数字、下划线组成 不能有特殊字符,同时不能以数字开头
    3.不能是关键字

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/928668.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号