1.声明变量是创建变量的过程,它告诉编译器变量的名称和数据类型。数据类型决定了变量可以存储什么类型的数据(例如整数、浮点数、字符等),以及可以对这些数据执行哪些操作。
下面举些例子:
1 2 3 4 int age; float height; char word; double length;
其中,前一个为数据类型,后一个为变量名。
2.函数是一组执行特殊任务的语句集合,包括返回类型、函数名、参数列表(可能为空)以及函数体。
函数分为库函数和用户自定义函数。
下面举一个自定义函数的例子:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 #include <stdio.h> void sum (int begin,int end) ;int main () { sum(1 , 10 ); sum(20 , 40 ); sum(80 , 100 ); return 0 ; } void sum (int begin,int end) { int sum=0 ; for (int i=begin;i<=end;i++) { sum+=i; } printf ("%d到%d的和是%d\n" ,begin,end,sum); }
3.c语言中简单if语句的基本结构如下:
其语义是:如果表达式的值为真,则执行其后的语句,否则不执行该语句。
还可以进行扩展:
1 2 3 4 5 6 7 8 if (表达式){ 执行代码块1 ; } else { 执行代码块2 ; }
还不够(╬▔皿▔):
1 2 3 4 5 6 7 8 9 10 11 12 13 if (表达式1 ){ 执行代码块1 ; } else if (表达式2 ){ 执行代码块2 ; } ...... else { 执行代码块n; }
注意:当某一条件为真的时候,则不会向下执行该分支结构的其他语句。
当然,if-else语句还可以作嵌套,可以举例了(成绩评级):
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 #include <stdio.h> int main () { int score; printf ("请输入学生的成绩(0-100):" ); scanf ("%d" , &score); if (score >= 0 && score <= 100 ) { if (score >= 90 ) { printf ("优秀\n" ); } else if (score >= 80 ) { printf ("良好\n" ); } else if (score >= 70 ) { printf ("中等\n" ); } else if (score >= 60 ) { printf ("及格\n" ); } else { printf ("不及格\n" ); } } else { printf ("输入的成绩无效,请输入0-100之间的整数。\n" ); } return 0 ; }
4.c语言中switch语句的基本结构:
1 2 3 4 5 6 7 8 9 10 11 12 switch (表达式) { case 常量1 : break ; case 常量2 : break ; ... default : }
注意:
*在case后的各常量表达式的值不能相同,否则会出现错误。
*在case子句后如果没有break;会一直往后执行**一直到遇到break;**才会跳出switch语句。
switch后面的表达式语句只能是 整型或者 字符 *类型。
*在case后,允许有多个语句,**可以不用{}**括起来。
*各case和default子句的先后顺序可以变动,而不会影响程序执行结果。
*default子句可以省略不用。
举例:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 #include <stdio.h> int main () { int mood; printf ("请输入你的心情(打分1~5,分数越高越开心):" ); scanf ("%d" , &mood); switch (mood) { case 5 : printf ("哇,你今天心情真好," ); case 4 : printf ("希望你以后能一直保持一个好心情!\n" ); break ; case 3 : printf ("你的心情一般,可以尝试做些新的事情来提升心情。\n" ); break ; case 2 : printf ("你的心情有点低落,不妨和朋友聊聊。\n" ); break ; case 1 : printf ("你的心情很糟糕,需要找些开心的事情来做!\n" ); break ; default : printf ("无效的心情输入,请输入1~5之间的数字。\n" ); return 1 ; } return 0 ; }c
5.c语言中while循环一般形式:
while语句的语义是:计算表达式的值,当值为真(非0)时, 执行循环体代码块。
注意:
*一定要记着在循环体中改变循环变量的值,否则会出现死循环(无休止的执行)。
*循环体如果包括有一个以上的语句,则必须用{}括起来,组成复合语句。
还有一种do-while循环,你可以看作至少要执行一次循环语句的while循环:
1 2 3 do { 执行代码块; } while (表达式);
举例做加法(好困(。•́︿•̀。)好累哦):
1 2 3 4 5 6 7 8 9 10 11 12 #include <stdio.h> int main () { int i = 1 ; int sum = 0 ; while (i <= 100 ) { sum += i; i++; } printf ("Sum = %d\n" , sum); return 0 ; }
6.c语言中for循环一般形式:
1 2 3 4 for (表达式1 ;表达式2 ;表达式3 ){ 执行代码块; }
在for循环中:
*表达式1是一个或多个赋值语句,它用来控制变量的初始值;
*表达式2是一个关系表达式,它决定什么时候退出循环;
*表达式3是循环变量的步进值,定义控制循环变量每循环一次后按什么方式变化。
*这三部分之间用分号 ; 分开。
注意:
*for循环中的“表达式1、2、3”均可不写为空,但两个分号(;;)不能缺省。
*省略“表达式1(循环变量赋初值)”,表示不对循环变量赋初始值。
*省略“表达式2(循环条件)”,不做其它处理,循环一直执行(死循环)。
*省略“表达式3(循环变量增减量)”,不做其他处理,循环一直执行(死循环)。
*表达式1可以是设置循环变量的初值的赋值表达式,也可以是其他表达式。
*表达式1和表达式3可以是一个简单表达式也可以是多个表达式以逗号分割。
*表达式2一般是关系表达式或逻辑表达式,但也可是数值表达式或字符表达式,只要其值非零,就执行循环体。
*各表达式中的变量一定要在for循环之前定义。
*在知道循环次数的情况下更适合使用for循环。
举个例吧:固定人数,求平均年龄。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 #include <stdio.h> int main () { int n, age=0 ,sum=0 ; double average; scanf ("%d" , &n); for (int i = 0 ; i < n; i++) { scanf ("%d" , &age); sum = sum + age; } average = (double )sum / n; printf ("%.2lf" , average); return 0 ;
7.goto语句是一种无条件分支语句,使用格式为:
goto 语句标号;
相当于一个传送门就是了。
尽管不建议使用,但还是可以很好地代替接力break。
举例(只举一种方法凑硬币):
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 #include <stdio.h int main () int main () { int x = 0 ; scanf ("%d" , &x); int one, two, five; for (one=1 ; one<x*10 ; one++){ for (two=1 ; two<x*10 /2 ; two++){ for (five=1 ; five<x*10 /5 ; five++){ if (one+two*2 +five*5 == x*10 ){ printf ("%d张1角+%d张2角+%d张5角=%d元\n" , one, two, five, x); goto out; } } } } out: return 0 ; }
ok了,不想再写了,就这样吧。
参考链接:https://blog.csdn.net/qq_23079443/article/details/81108901