C语言基础知识

目录

1. 前言

2. 计算

2.1 变量

 

 

2.2 数据类型

2.3 表达式

3. 判断与循环

3.1 判断

3.2 循环

4. 进一步判断与循环

4.1 逻辑类型与运算

4.2 级联与嵌套判断

4.3 多步分支

4.4 循环例子

4.5. 循环控制

5. 数组与函数

5.1 数组

5.2 函数

5.2.1 函数定义

5.2.2 参数传递

5.2.3 本地变量、块、变量空间(重点)

函数注意

5.2.4 二维数组

6. 数组运算

6.1 数据运算

6.2 素数

6.3 搜索


mooc学习笔记


线上开发环境:https://clin.icourse163.org/

软件:https://sourceforge.net/projects/orwelldevcpp/?source=directory

1. 前言

安装好Dev-C++,打开运行第一个程序;

#include <stdio.h>

int main()
{
	printf("Hello World!\n");
	
	return 0;
 } 

“”中为字符串,printf原封不动输出,\n输出换行,每行结束用 ;,注意0o的区别。

程序框架:

#include <stdio.h>

int main()
{	

	return 0;
 } 

点计算

#include <stdio.h>

int main()
{	
	printf("12+34=%d",12+34);
	return 0;
 } 

注释://,多行/* */

2. 计算

2.1 变量

定义:<数据类型><数据名>,使用之前,必须定义数据类型

赋值,用于初始化

int price=0,a;

输入

scanf("%d",&price);//输入,注意一定要与“”中的“东西”一样
	

常量与变量

固定不变的数,叫常数。直接写在程序中的叫直接量。定义一个常量,采用const,const(不变的)为修饰符,一旦初始化就不能修改;

const int AMOUNT = 100;

列子:

关注scanf的使用

#include <stdio.h>

int main()
{
	int a;
	int b;

	printf("请输入两个整数:");
	scanf("%d %d", &a, &b);
	printf("%d + %d = %d\n", a, b, a + b);

	return 0;
}

关注const的使用

#include <stdio.h>

int main()
{
	const int AMOUNT = 100;
	int price = 0;

	printf("请输入金额(元):");
	scanf("%d", &price);

	int change = AMOUNT - price;

	printf("找您%d元。\n", change);

	return 0;
}

关注double、%lf、%f的使用

#include <stdio.h>

int main()
{
	printf("请分别输入身高的英尺和英寸,"
		"如输入\"5 7\"表示5英尺7英寸:");

	double foot;
	double inch;

	scanf("%lf %lf", &foot, &inch);

	printf("身高是%f米。\n", 
		((foot + inch / 12) * 0.3048));

	return 0;
}

 

 

2.2 数据类型

两个整数做运算时,结果只是整数;

浮点数,表达由小数点的数;浮点与整数运算,结果为浮点;浮点定义double双精度,输入%f

	
	double foot;
	double inch;
	
	scanf("%lf %lf",&foot,&inch);//double类型对应lf
	printf("身高是%f米。\n",((foot+inch/12)*0.3048)) ;//输出是f
	

例1,如果认为结果是浮点数,请以小数点后一位小数来表示

10/3.0*3   结果为  10.0

10/3*3.0  结果为    9.0

例2,

#include <stdio.h>

int main()
{
	int a,b;

	scanf("%d %d", &a, &b);

	double c = (a+b)/2.0;
	
	printf("%d和%d的平均值=%f\n", a, b, c);

	return 0;
}

2.3 表达式

一系列的运算,包含运算符、算子;注意运算优先级

交换两个变量

	int temp = a;
	a = b;
	b = temp;

注意套路的学习

复合运算符

五个运算符与“=”结合起来,“+=”、“%=”、“/=”、“-=”、“*=",%模运算,求的是余,比如(int)13/4,结果是3;而13%4,结果就是1(余1)

递增递减运算符

“++”、“--”,放在变量前面,称为前缀形式;放在变量后面,成为后缀形式;

区别,count++后缀,运算给count加1,表达式值为count原来值;++count前缀,运算给count加1,表达式值为count+1以后值;

3. 判断与循环

3.1 判断

注意格式与用法

根据比较的结果,决定做、还是不做某些动作,就要用到if语句。

if(判断的条件)
{
    条件成立,做......

    else
    {
        条件不成立,做....
    }
}

能做判断的基础,是能对数据做比较,需要用到关系运算。C语言提供了六个关系运算符:== 相等      != 不相等    > 大于      >= 大于或等于       < 小于     <= 小于或等于

关系运算的结果是一个逻辑值,逻辑值只有两种可能的值:true(真,表示成立)或false(假,表示不成立)。当两个值的关系符合关系运算符的预期时,关系运算的结果为true,否则为false。

if没有{}是,只有跟着的一句有效。

阅读代码:

#include <stdio.h>

int main()
{

	const int MINOR = 35;

	int age = 0;

	printf("请输入你的年龄: ");
	scanf("%d", &age);

	printf("你的年龄是%d岁。\n", age);

	if ( age < MINOR ) {
    	printf("年轻是美好的,");
	}

	printf("年龄决定了你的精神世界,好好珍惜吧。\n");

	return 0;
}
#include <stdio.h>

int main()
{
	//	初始化
	int price = 0;
	int bill = 0;
	//	读入金额和票面
	printf("请输入金额:");
	scanf("%d", &price);
	printf("请输入票面:");
	scanf("%d", &bill);
	//	计算找零
	printf("应该找您:%d\n", bill - price);

	return 0;
}
#include <stdio.h>

int main()
{
	//	初始化
	int price = 0;
	int bill = 0;
	//	读入金额和票面
	printf("请输入金额:");
	scanf("%d", &price);
	printf("请输入票面:");
	scanf("%d", &bill);
	//	计算找零
	if ( bill >= price ) {
		printf("应该找您:%d\n", bill - price);
	}

	return 0;
}
#include <stdio.h>

int main()
{
	//	初始化
	int price = 0;
	int bill = 0;
	//	读入金额和票面
	printf("请输入金额:");
	scanf("%d", &price);
	printf("请输入票面:");
	scanf("%d", &bill);
	//	计算找零
	if ( bill >= price ) {
		printf("应该找您:%d\n", bill - price);
	} else {
		printf("你的钱不够\n");
	}
#include <stdio.h>

int main()
{
	int hour1, minute1;
	int hour2, minute2;

	scanf("%d %d", &hour1, &minute1);
	scanf("%d %d", &hour2, &minute2);

	int ih = hour2 - hour1;
	int im = minute2 - minute1;
	if ( im <0 ) {
		im = 60 + im;
		ih --;
	}
	
	printf("时间差是%d小时%d分。\n", ih, im);
	
	return 0;
}
#include <stdio.h>

int main()
{
	int a,b;

	printf("请输入两个整数:");
	scanf("%d %d", &a, &b);
	
	int max = b;
	if ( a > b ) {
		max = a;
	}

	printf("大的那个是%d\n", max);

	return 0;
}
#include <stdio.h>

int main()
{
	int a,b,c;
	scanf("%d %d %d", &a, &b, &c);

	int max = 0;

	if ( a>b ) {
		if ( a>c ) {
			max = a;
		} else {
			max = c;
		}
	} else {
		if ( b>c ) {
			max = b;
		} else {
			max = c;
		}
	}

	printf("The max is %d\n", max);

	return 0;
}

 

#include <stdio.h>

int main()
{
	const double RATE = 8.25;  
	const int STANDARD = 40;   
	double pay = 0.0;
	int hours;

	printf("请输入工作的小时数: ");
	scanf("%d", &hours);
	printf("\n");
	if (hours > STANDARD)
   		pay = STANDARD * RATE + 
   			(hours-STANDARD) * (RATE * 1.5);
	else
   		pay = hours * RATE;
	printf("应付工资: %f\n", pay);

	return 0;
}

 

#include <stdio.h>

int main()
{
	const int PASS=60;
	int score;

	printf("请输入成绩: ");
	scanf("%d", &score);
	
	printf("你输入的成绩是%d.\n", score);
	if ( score < PASS )
		printf("很遗憾,这个成绩没有及格。");
	else {
		printf("祝贺你,这个成绩及格了。");
		printf("再见\n");
	}

	return 0;
}

3.2 循环

在满足条件时,不断地重复执行一些动作。

while语句是一个循环语句,它会首先判断一个条件是否满足,如果条件满足,则执行后面紧跟着的语句或语句括号,然后再次判断条件是否满足,如果条件满足则再次执行,直到条件不满足为止。后面紧跟的语句或语句括号,就是循环体。

do-while循环和while循环很像,唯一的区别是我们在循环体执行结束的时候才来判断条件。也就是说,无论如何,循环都会执行至少一遍,然后再来判断条件。与while循环相同的是,条件满足时执行循环,条件不满足时结束循环。

循环体内有改变判断条件的语句,否则会出现逻辑错误;

for循环,循环开始就做判断,for(初始条件;判断;变化){  },

 

 

 

 

 

4. 进一步判断与循环

4.1 逻辑类型与运算

bool类型,要使用ture或Flase,使用#include<stdbool>。

 

 

 

解决方法,不要把赋值加入到表达式中;

 

条件运算符

 

 

 

 

逗号运算,一般在for中使用;

4.2 级联与嵌套判断

4.3 多步分支

/*
f(x) = -1 ; x < 0
        0 ; x == 0
       2x ; x > 0
*/
#include <stdio.h>
 
int main(){
    int x;
    scanf("%d",&x);
    switch(x<0){
 
        case 0:
            x *= 2;   //如果x是0 则乘以任何数结果都是0。       
            break;
        case 1:
            x = -1;           
            break;
        default:    //default即使没有任何语句执行也不要省略。 
            break;
    }
    printf("f(x) = %d\n",x);  
    return 0;
}

4.4 循环例子

 

4.5. 循环控制

多重循环

接力break

或者

5. 数组与函数

5.1 数组

数据可以存放在变量里,每一个变量有一个名字,有一个类型,还有它的生存空间。如果我们需要保存一些相同类型、相似含义、相同生存空间的数据,我们可以用数组来保存这些数据,而不是用很多个独立的变量。数组是长度固定的数据结构,用来存放指定的类型的数据。一个数组里可以有很多个数据,所有的数据的类型都是相同的。

#include <stdio.h>


int main()
{
	int x,i=0;
	
	//定义 
	int number[100];
	
	//赋值 
	number[i] = 7;
	
	//使用
	x = number[i]; 
	
	return 0;
}
 

	

5.2 函数

5.2.1 函数定义

 

函数原型声明,函数定义;

 

 

5.2.2 参数传递

5.2.3 本地变量、块、变量空间(重点)

 

注意,用传值、变量空间与块 去理解

 

函数注意

5.2.4 二维数组

 

6. 数组运算

6.1 数据运算

数组的集成初始化

 

可避免出错

 

 

 

 

 

6.2 素数

 

 

 

 

第二种:

 

 

 

 

 

6.3 搜索

 

 

 

 

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: C语言基础知识入门PDF是一份C语言的教学材料,适合初学者学习和掌握C语言的基本语法、语义和编程方法。 C语言是一种高效、灵活、可移植、可扩展的编程语言,被广泛应用于操作系统、数据库系统、嵌入式系统等领域。学习C语言,需要掌握计算机基本原理、编程思想和算法设计等知识,而C语言基础知识入门PDF提供了一种快速入门、易于理解的学习途径。 C语言基础知识入门PDF包括了C语言的基本数据类型、运算符、流程控制语句、函数、指针、数组、结构体等内容,通过实例演示和练习题目的方式,帮助学生深入理解C语言的编程思想和技巧。 此外,C语言基础知识入门PDF还介绍了一些常用的C语言开发工具,如编辑器、编译器和调试器等,帮助学习者掌握基本的开发环境和技巧。 总之,C语言基础知识入门PDF是一本很好的C语言入门教材,通过细致详尽的篇章结构、浅显易懂的代码示范和解释,对于初学者学习C语言或复习C语言基础知识来说,都是一份很好的参考资料。 ### 回答2: 《C语言基础知识入门》是一本适合初学者入门的C语言教材,它由浅入深地介绍了C语言的基本语法、数据类型、控制结构、函数以及指针等内容。这本教材所包含的知识点非常基础和易懂,对于初学者来说非常友好,能够循序渐进地帮助他们逐步掌握C语言的基本概念和基础知识。 在学习过程中,这本教材还特别注重实践,提供了大量的实例代码以及习题和答案,帮助学生巩固所学知识,培养编程思维,提高编程能力。此外,这本教材还介绍了一些C语言的衍生语言和标准库,让学生在了解基础知识的同时,对C语言的发展和应用方向也有所了解。 总之,对于初学者来说,《C语言基础知识入门》是一本非常好的入门教材,它简单易懂、注重实践、知识面广泛、涵盖了C语言的基本知识点和实际应用场景,推荐给所有对于C语言感兴趣的初学者。 ### 回答3: 《C语言基础知识入门PDF》是一本适合初学者的C语言教程,它详细介绍了C语言的各个方面。该教程涵盖了C语言的基本语法、数据类型、运算符、流程控制、函数、指针、结构体、文件操作等重要内容。通过学习这本教程,初学者可以逐步掌握C语言基础知识,轻松理解编程思路。 该教程首先讲解了C语言的数据类型,包括整型、浮点型、字符型等,以及变量的定义和命名方法。接着介绍了运算符的使用方法,包括算术运算符、关系运算符和逻辑运算符。 在掌握了基础语法之后,该教程讲解了流程控制语句,如if语句、switch语句和循环语句等。这些语句非常重要,可以让程序根据不同的情况执行不同的操作。 接着,该教程介绍了函数的定义和调用方法。函数可以让程序模块化,使代码更具可读性。同时,它还讲解了指针的概念和使用方法,指针可以让程序更加灵活。 最后,该教程讲解了文件操作。文件是计算机存储数据的重要方式,学会文件操作可以让程序更好地处理数据。 总的来说,《C语言基础知识入门PDF》适合没有任何编程基础的初学者阅读。通过阅读该教程,初学者可以了解C语言的基本语法和编程思想,为以后深入学习打下基础

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值