自学C语言

目录

一、基础知识掌握

1、运算符的优先级

自学C语言
例如:求平均数

#include <stdio.h>
int main()
{
	int a,b;
	scanf("%d %d",&a,&b);
	double c=(a+b)/2.0;
	printf("%d和%d的平均数为:%f",a,b,c);
	return 0;
}

这里先进行加法运算,再进行除法
自学C语言
自学C语言
自学C语言
最好不要写的那么复杂,把它拆分表示更为明了和清晰

二、if语句

1、if(条件)

	int hour1,min1;
	int hour2,min2;
	scanf("%d %d",&hour1,&min1);
	scanf("%d %d",&hour2,&min2);
	int im,ih;
	ih=hour2-hour1;
	im=min2-min1;
	if(im<0){ 
		im = im + 60;
		ih --;
	} 
	printf("时间差%d小时%d分钟。\n",ih,im);

有一个条件时可以不加{},但是为了防止出错误,还是最好每个if后面都加{}

2、if-else语句

	int x;
	scanf("%d",&x);
	int f=0;
	if (x==0){
		f=0;
	}else if (x>0){
		f=2*x;
	}else if (x<0){
		f=1;
	}
	printf("%d\n",f);

else紧跟离他最近的if

3、多路分支Switch-case语句

	int type;
	scanf("%d",&type);
	switch(type){
		case 1:
			printf("早上好!");
			break;
		case 2:
			printf("中午好!");
			break;
		case 3:
			printf("晚上好!");
			break;
		default:
			printf("大家好!");
			break; 

这里定义了一个整型变量type,当type=1,输出早上好
但是,如果后面没加break,那就完了,每一个后面都没加
那就会输出全部的内容。break相当于打破这个进程。

	int grade;
	scanf("%d",&grade);
	grade /= 10;
	switch(grade){
		case 10:
		case 9:
			printf("A\n");
			break;

例如这里:case 10运行到这里什么都没有直接到了case 9
那么输出A,意思就是说成绩在90-100的等级都为A
没有break那么就会出现如下情景:
自学C语言
正确的应该是每一个printf分号后面都加上break;
才能保证区间。

三、while循环

1、do-while

循环体内一定要有改变条件的机会
否则,无限循环
自学C语言
do-while和while的区别在于,do-while循环是在进入循环后才去判断条件是否满足,而while循环是先判断条件是否满足才进入循环。
一定要注意的是while();while后面有分号!!!

	int x;
	scanf("%d",&x);
	int n=0;
	do{
		n++;
		x /=10;
	}while(x>0);
	printf("%d",n);

与while循环对比看看:

	int x;
	int n=0;
	scanf("%d",&x); 
	while(x>0){
		n++;
		x /= 10;
	}
	printf("位数:%d",n);
上一篇:手把手教你用PS把真人照片变成q版卡通漫画图片


下一篇:win7修改本地ip地址教程