c语言程序设计总结 (c语言总结与心得体会)

1、if条件语句分为三种:

①if(表达式) ②if-else ③if else if

#define  _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include<string.h>
#include<stdlib.h>
#include<math.h>
#include<time.h>

int main0901()
{
	int score;
	scanf("%d", &score);
	//if(表达式)
	//if(表达式){} else{}
	//if(表达式1){}else if(表达式2){} else
	//条件嵌套 if中嵌套if
	if (score > 700)
	{
		printf("可以上清华大学\n");
		if (score > 720)
		{
			printf("我要学习计算机\n");
		}
		else if (score > 710)
		{
			printf("我要学习挖掘机\n");
		}
		else 
		{
			printf("只能学盗墓");
		}
	}
	else if (score>680)
	{
		printf("可以上北大");
	}
	else
	{
		printf("可以上传智");			
	}
	return EXIT_SUCCESS;
}

2、三只小猪称体重练习

#define  _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include<string.h>
#include<stdlib.h>
#include<math.h>
#include<time.h>

int main10_01()
{
	int a, b, c;
	printf("请输入三只小猪的体重\n");
	scanf("%d%d%d", &a, &b, &c);
	if (a > b)
	{
		if (a > c)
		{
			printf("小猪a最重\n");
		}
		else
		{
			printf("小猪c最重\n");
		}
	}
	else
	{
		if (b > c)
		{
			printf("小猪b最重");
		}
	}
}

3、三目运算符

三目运算符为 ?:

通常形式为:表达式1?表达式2:表达式3

#define  _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include<string.h>
#include<stdlib.h>
#include<math.h>
#include<time.h>

#define MAX(a,b) (a)>(b)?(a):(b)//宏定义一个表达式
int main011()
{
	int a = 10;
	int b = 20;
	printf("%d\n", MAX(a, b));
	return 0;

}


int main11_01() 
{
	int a = 10;
	int b = 20;
	//?: 三目运算符  表达式1?表达式2:表达式3    表达式1运行为真 输出表达式2结果 否则输出表达式3
	printf("最大值为:%d\n", a > b ? a : b);
	return EXIT_SUCCESS;
}

4、switch语句

switch语句的一般形式为:

switch(表达式)
{ 
 case 常量表达式1: 语句1;
 case 常量表达式2: 语句2;
 … 
 case 常量表达式n: 语句n;
 default: 语句n+1;
}
#define  _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include<string.h>
#include<stdlib.h>
#include<math.h>
#include<time.h>

int main012()
{
	int score;
	scanf("%d", &score);
	switch (score/10)
	{
	case 10:
			printf("优秀\n");
			break;
	case 9:
			printf("优秀\n");
			break;
	case 8:
		printf("良好");
			break;
	case 7:
		printf("及格");
		break;
	case 6:
		printf("及格");
		break;
	default: 
		printf("不及格");
		break;
	}
}

5、while语句

while(表达式)
 {
语句
}
其中表达式是循环条件,语句为循环体

#define  _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include<string.h>
#include<stdlib.h>
#include<math.h>
#include<time.h>
 
int main13_01()
{
    //while表达式当表达式为真,则执行下面的语句;语句执行完之后再判断表达式是否为真,
    //如果为真,再次执行下面的语句;
        
    int i = 0;
    //死循环
    while (i < 10)
    {
        printf("%d\n", i);
        i++;
    }
    return EXIT_SUCCESS;
}
int main13_02()
{
    int i = 1;
    while (i <= 100)
    {
        if (i % 2 == 0)
        {
            printf("%d\n", i);
        }
        i++; 
    }

}

//凡是带7或者7的倍数都敲桌子,否则正常输出
int main13_03()
{
    int i = 1;
    while (i < 100)
    {
        //7的倍数||个位带7||十位带7
        if (i % 7 == 0 || i % 10 == 7 || i / 10 == 7)
        {

            printf("敲桌子\n");
        }
        else
        {
            printf("%d\n", i);
        }
        i++;
    }
    return 0;
}

6、do while语句

do while的一般形式为:
do
{
	语句
}
while()
  //它先执行do中的循环体再判断while中的条件是否为真,真继续执行循环体,假则跳出。
#define  _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include<string.h>
#include<stdlib.h>
#include<math.h>
#include<time.h>

int main14_01 ()
{

	int i = 0;
	//do while语句       do {表达式} while(表达式);
	
	do
	{
		printf("%d\n",i);
		i++;
	} while (i < 10);
	
	return 0;
}

//水仙花  从100-999各个位数的立方和相加等于这个数本身就是一个水仙花数
int main14_02()
{
	int i = 100;
	do
	{
		int a = i % 10;//个位数
		int b = i / 10 % 10;//十位数
		int c = i / 100;//百位数
		if (pow(a,3) + pow(b,3) + pow(c,3) == i)
			// pow计算此方值, 在<math.h>函数库中
		{
			printf("%d\n", i);
		}
		i++;
	} while (i<=999);

}

7、for循环

for循环的一般形式为:
for(表达式1; 表达式2; 表达式3)
{
    语句块
}

//它的运行过程为:
1) 先执行“表达式1”。
2) 再执行“表达式2”,如果它的值为真(非0),则执行循环体,否则结束循环。
3) 执行完循环体后再执行“表达式3”。
4) 重复执行步骤 2) 和 3),直到“表达式2”的值为假,就结束循环。
上面的步骤中,2) 和 3) 是一次循环,会重复执行,for 语句的主要作用就是不断执行步骤 2) 和 3)。
#define  _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include<string.h>
#include<stdlib.h>
#include<math.h>
#include<time.h>


int main15_01()
{
	int j = 5;
	for (int i = 0; i < 10,j<10; i++,j+=5)
	{
		printf("%d\n", i);
	}
	return 0;
}

int main15_02()
{
	int i = 0;
	for (; i < 10; )
	{
		if (i >= 10)
		{
			break;//在循环语句中遇到break表示结束循环 
		}
		printf("%d\n", i);
		i++;
	}
}

//通过程序随机一个1~100之间的数字

int main15_03()
{
	//产生随机数
	//1、导入头文件 time.h   stdlib.h
	//2、添加随机数种子
	//3、获取随机数
	srand((unsigned int)time(NULL));//每次随机的数字不一样

	//int value = rand() % 10;//随机0~9之间的数

	/*for (int i = 0; i < 10; i++)
	{
		int value = rand() % 10;
		printf("%d\n", value);
	}*/

	int value = rand() % 100;//0~99
	int num;
	for (;;)
	{
		printf("请输入您的数字:\n");
		scanf("%d", &num);
		if (value > num)
		{
			printf("您输入的数字太小了\n");
		}
		else if (value < num)
		{
			printf("您输入的数字太大0了\n");
		}
		else
		{
			printf("您输入的数字正确\n");
			break;
		}
	}
	return 0;
}

8、嵌套循环的两个例子

#define  _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include<string.h>
#include<stdlib.h>
#include<math.h>
#include<time.h>

#include<Windows.h>

int main16_01()
{
	//外层执行一次,内层执行一周
	for (int i = 0; i < 5; i++)
	{
		for (int j = 0; j < 5; j++)
		{
			printf("i=%d,j=%d\n", i, j);
		}
		return 0;
	}

}
//电子时钟
int main16_02()
{

	for (int i = 0; i < 24; i++)
	{
		for (int j = 0; j < 60; j++)
		{
			for (int k = 0; k < 60; k++)
			{
				system("cls");//清屏
				printf("%02d:%02d:%02d\n", i, j, k);
				Sleep(960);
			}
		}
	}
}
//九九乘法口诀
/*
1*1=1
1*2=2 2*2=4
1*3=3 2*3=6 3*3=9
*/
int main()
{
	for (int i = 1; i <= 9; i++)
	{
		for (int j = 1; j <= i; j++)
		{
			printf("%d*%d=%d", j, i, i * j);
		}
		printf("\n"); 
	}

}

system(cls); 为清屏操作