C语言——简单的程序设计

目录

前言

一、顺序结构程序

1、顺序程序结构介绍

2、顺序程序举例

二、选择结构程序

1、选择结构程序介绍

2、if语句的三种形式

1)、第一种形式的if语句

2)、第二种形式的if语句

3)、第三种形式的if语句

3、switch语句  

三、循环结构程序

1、循环结构程序介绍

2、while语句     

3、do...while语句       

4、for语句

5、break语句

6、continue语句

7、goto语句

8、嵌套循环结构

总结


前言

        介绍一下顺序程序,选择程序,循环程序。

一、顺序结构程序

1、顺序程序结构介绍

        顺序程序结构是最简单的一种程序结构,其中各个语句都是从上到下的顺序执行的,不发生流程的跳转,不会出现后面介绍的选择和循环的操作。同时若干个小的顺序结构可以构成一个大的顺序结构,甚至一个程序。

2、顺序程序举例

        求三个数的和。

#include int main()
{int a, b, c, sum;printf("输入需要求和的三个数:");scanf("%d,%d,%d", &a, &b, &c);sum = a + b + c;printf("sum = %d\n", sum);return 0;
}

从上到下依次执行,先输出  输入需要求和的三个数: ;接着从键盘输入三个数(需要求和的三个数,依次给a, b, c 三个变量赋值);完成之后进行加法运算;最后将运算后的值输出。

二、选择结构程序

1、选择结构程序介绍

大多数程序都会包含选择结构,它是程序的三种基本结构之一。选择结构的作用是根据给定的条件,从几组操作中选择其中的一组操作。

2、if语句的三种形式

1)、第一种形式的if语句

格式如下:

if(表达式)
{要执行的语句
}

如果表达式为“真”,则执行该语句;如果执行语句为“假”,则不执行该语句。

 例子:

输入变量a的值,若a>10,则输出“是”;否则什么也不做。

#define _CRT_SECURE_NO_WARNINGS
#includeint main()
{int a;scanf("%d", &a);if (a > 10)//这里注意不要;{printf("是\n");}return 0;
}

2)、第二种形式的if语句

格式如下:

if(表达式)
{语句1
}
else
{语句2
}

如果表达式为“真”,则执行语句1;如果表达式为“假”,则执行语句2。

例子:

 输入一个整数,判断能否被2整除。

#define _CRT_SECURE_NO_WARNINGS
#includeint main()
{int a;printf("请输入一个整数:\n");scanf("%d", &a);if (a % 3 == 0){printf("%d能被2整除。\n", a);}else{printf("%d不能被2整除。\n", a);}return 0;
}

3)、第三种形式的if语句

格式如下:

if(表达式1)
{语句1
}
else if(表达式2)
{语句2
}
...
else if(表达式n-1)
{语句n-1
}
else
{语句n
}

如果表达式1为“真”,则执行语句1,如果表达式1为“假”,则判断表达式2;如果表达式2为“真”,则执行语句2,如果表达式2为“假”,则判断表达式3;以此类推,如果表达式n-1为“真”,则执行语句n-1,如果表达式n-1为“假”,则执行语句n。

 例子:

用分数来给予相应的奖励。

#define _CRT_SECURE_NO_WARNINGS
#includeint main()
{int score;scanf("%d", &score);//如果表达式为真  执行{}对应的代码if (score > 100){printf("给予大奖励");}else if (score > 90){printf("给予小奖励");}else{printf("给予鼓励");}/*输入大于100的数值            结果为 给予大奖励输入大于90小于等于100的数值  结果为 给予小奖励输入小于等于90的数值         结果为 给予鼓励从上到下依次执行且只会执行一个*/return 0;
}

 注意:else子句不能作为语句单独使用,它必须与if配对使用。 

3、switch语句  

解决多种选择问题,除了使用if语句外,还可以使用switch语句。switch语句可以完成多分支选择程序的编写。

格式如下:

switch(表达式)
{
case 常量表达式1:语句1;break;
case 常量表达式2:语句2;break;
...
case 常量表达式n:语句n;break;
default:语句n+1;break;
}
//最后一个分支(default)可以不用加break语句

首先计算switch右侧的表达式的值,当该表达式的值与一个case后面的常量表达式的值相等时,就执行该case后面的语句;如果表达式的值与所有的case后的常量表达式的值都不相等,则执行default后面的语句。

例子:

输入一个分值,并区分该分值的类别。 

#define _CRT_SECURE_NO_WARNINGS
#includeint main()
{int score;scanf("%d", &score);switch (score/10){case 10:printf("优秀\n");break;case 9:printf("优秀\n");break;//90分以上的是优秀case 8:printf("良好\n");break;case 7:printf("良好\n");break;//70分到90分的是良好case 6:printf("及格\n");break;//60分到70分的及格default:printf("不及格\n");break;//60分以下的是不及格}//输入超过100的数也是不及格return 0;
}

三、循环结构程序

1、循环结构程序介绍

        循环结构是结构化程序设计的基本结构之一,它和顺序结构、选择结构共同作为各种复杂程序的基本构成单元。

2、while语句     

        格式如下:

while(表达式)
{循环体语句
}

        先计算表达式的值,如果表达式为真,则执行while语句中的循环体语句,然后再次计算表达式的值;如果表达式为真,则再次执行循环体语句;依次循环,直到表达式的值为假时,结束循环。

        例子:

        用while语句输出0到9并求和。

        输出: 

#includeint main()
{int i = 0;while (i < 10){printf("%d", i);++i;}//结果为0123456789return 0;
}

        求和:

#includeint main()
{int i = 0, sum = 0;while (i < 10){sum += sum + i;i++;}printf("sum=%d\n", sum);return 0;
}

注意: 

1、如果第一次计算while后面的表达式时,结果为假,则循环体一次也不执行。

2、在循环体中要有是循环趋向于结束的语句,否则就会形成死循环。

3、do...while语句       

        格式如下:

do
{循环体语句
}while(表达式);

        先执行循环体语句,再判断循环条件是否成立。

        先执行一次循环体语句,然后计算表达式,如果表达式的值为真,则再执行一次循环体语句,如此循环,直到表达式为假,结束循环。

注意:

1、do...while语句的循环体至少可以被执行一次。

2、在循环体中一定要有趋向于结束的语句,否则会形成死循环。

4、for语句

        格式如下:

for(表达式1;表达式2;表达式3)
{语句
}

        例子:

        输出0到9

#includeint main()
{int i ;for (i = 0; i < 10; ++i){printf("%d\n", i);}//结果为0123456789return 0;
}

注意: 

1、表达式1一般为循环变量赋初值。

2、 表达式3一般为改变循环变量的值。

        猜数字游戏 :

        重点是产生随机数:

                产生随机数:
                       1、导入头文件  stdlib.h  time.h
                       2、添加随机数种子
                       3、获取随机数

#define _CRT_SECURE_NO_WARNINGS
#include
#include
#includeint main()
{srand((unsigned int)time(NULL));//每次随机数不一样/*产生随机数:1、导入头文件  stdlib.h  time.h2、添加随机数种子3、获取随机数*/int value = rand() % 100;//100以内的随机数int num;for (;;){printf("请输入一个数字:\n");scanf("%d", &num);if (num > value){printf("您输入的数字大了;\n");}else if (num < value){printf("您输入的数字小了;\n");}else{printf("恭喜您,猜对了。\n");break;}}return 0;
}

5、break语句

        结合while语句格式如下:

while(表达式)
{语句1if(条件)break;语句2
}

        break语句可提前结束循环,从循环体内跳到循环外面,接着执行循环语句后面的语句。

6、continue语句

        结合while语句格式如下:

while(表达式)
{语句块1if(条件)continue;语句块2
}

        continue的作用是结束本次循环,接着进行下一次是否执行循环的判定。

7、goto语句

        格式如下:

goto 语句标号;

        goto语句被称为无条件转向语句。

        程序流程从当前位置无条件的转到“语句标号”所指定的位置去执行。

8、嵌套循环结构

        在一个循环体内部,可以包含另一个完整的循环结构。 

        某一种循环可以自身嵌套,也可以不同种类的循环互相嵌套。

例子: 

#includeint main()
{int i, j;for (i = 0; i < 10; ++i){for (j = 0; j < 5; ++j){printf("i=%d,j=%d\n", i, j);}}//共执行了50次//外层执行一次,内层执行一周return 0;
}

 电子时钟  从00:00:00 到 23:59:59

        三个循环分别实现时针,分针,秒针。

#include
#includeint main()
{//电子时钟  从00:00:00 到 23:59:59int i, j, k;//i 表示时针,j 表示分针,k 表示秒针for (i = 0; i < 24; ++i){for (j = 0; j < 60; ++j){for (k = 0; k < 60; ++k){system("cls");//清屏printf("%02d:%02d:%02d\n", i, j, k);//不足两位数的用0补位  01:02:09Sleep(800);//降低输出速度}}}return 0;
}

 九九乘法表:

        两个循环分别实现行和列

#includeint main()
{//九九乘法表int a, b;for (a = 1; a <=9;++a){for (b = 1; b <= a; ++b){printf("%d*%d=%d\t", b, a, a*b);}printf("\n");}//外层控制行,内层控制列return 0;
}

总结

        到这里就介绍的差不多了,也结束了。总之就是要掌握好一个知识点,必要的练习还是要有的。


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部