首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

计算机小白的成长历程——分支与循环(4)

main() { int a = 0, b = 0, c = 0; for (a = 0; a < 5; a++) { c++; for (b = 0; b < 5; b++) {...执行了a++然后再去判断是否小于5,这里涉及一个知识点后置++是先使用再++,所以此时我们看到的a仍然为0; 现在程序运行到了c++这一行,我们也能看到此时a=1,b=5,; 现在我们又进入了第二个循环...0, b = 0, c = 0; for (a = 0;; a++) { c++; for (b = 0;; b++) { printf("hehe%d\n", c); c+..., c); } return 0; } 从这个代码中我们就可以看到,此时的for循环中通过变量x和变量y来进行控制,能否正常运行呢?...我们来运行一下: 我们可以看到循环能够正常运行,这里我们可以得到结论: 在for循环中,for循环是可以通过多个变量来控制的。

13730

C语言总集篇】分支与循环篇——从不会到会的过程

main() { int a = 0, b = 0, c = 0; for (a = 0; a < 5; a++) { c++; for (b = 0; b < 5; b++) {...a++然后再去判断是否小于5,这里涉及一个知识点后置++是先使用再++,所以此时我们看到的a仍然为0; 现在程序运行到了c++这一行,我们也能看到此时a=1,b=5,; 现在我们又进入了第二个循环,此时可以看到...main() { int a = 0, b = 0, c = 0; for (a = 0;; a++) { c++; for (b = 0;; b++) { printf("hehe...请看下面的例子: int main() { int a, b, c, d; for (a = 0; a < 10; a++) { for (b = 0; b < a; b++) {...} } sum: printf("%d+%d+%d=%d\n", a,b,c,d); return 0; } 这里我们嵌套了多个循环,如果我们我们正常运行的话它会从最里面的循环一层一层的结束循环然后跳出循环

26210

宏相关问题

C++原则:尽量使用const、enum和inline替换#define的使用,防止编译错误不够明朗,同时加强编译期间的类型检查,提高代码健壮性和可读性。...#define是不被视为语言的一部分,在预处理阶段就会进行宏展开替换所有的宏,因此进入第二步编译阶段是如果遇到了编译错误,那么错误信息可能会提到3.14而不是PI,导致错误信息不够明朗。...(a) : (b); } ) // 求最大值 这般长相的宏有着太的缺点,比如在下面调用例子: int a = 6, b = 5; int max = MAX(a++, b); std::cout <<...输出 7 要解释出错的原因很简单,我们把 MAX 宏做简单替换: int max = ( { (a++) > (b) ?...(a++) : (b); } ); // a 被累加了2次! 在上述替换后,可以发现 a 被累加了 2 次。

71510

第一章 C语言的基础知识 第一节、对C语言的基础认识 1、C语言编写的程序称为源程序,又称为编译单位。 2、C语言书写格式是自由的,每行可以写多个语句,可以写多行。 3、一个C语言程序有且只有一个ma

3、一个C语言程序有且只有一个main函数,是程序运行的起点。 第二节、熟悉vc++ 1、VC是软件,用来运行写的C语言程序。 2、每个C语言程序写完后,都是先编译,后链接,最后运行。...虽然它们也是合法的标识符,但是用它们来做一般标识符可能会出现运行错误。 用户标识符:基本上每年都考,详细请见书上习题。 用户标识符用来为变量、符号常量、数组、函数等取名。关键字不可以作为用户标识符。...4、自加表达式: 自加、自减表达式:假设a=5,++a(是为6), a++(为5); 运行的机理:++a 是先把变量的数值加上1,然后把得到的数值放到变量a中,然后再用这个++a表达式的数值为6,而a+...补充: 1、空语句不可以随意执行,会导致逻辑错误。 2、注释是最近几年考试的重点,注释不是C语言,不占运行时间,没有分号。不可以嵌套!...3、强制类型转换:   一定是 (int)a 不是  int(a),注意类型上一定有括号的。    注意(int)(a+b) 和(int)a+b 的区别。 前是把a+b转型,后是把a转型再加b

25730

第一章C语言的基础知识 第一节、对C语言的基础认识​ 1、C语言编写的程序称为源程序,又称为编译单位。 2、C语言书写格式是自由的,每行可以写多个语句,可以写多行。 3、一个C语言程序有且只有一个ma

3、一个C语言程序有且只有一个main函数,是程序运行的起点。 第二节、熟悉vc++ 1、VC是软件,用来运行写的C语言程序。 2、每个C语言程序写完后,都是先编译,后链接,最后运行。...虽然它们也是合法的标识符,但是用它们来做一般标识符可能会出现运行错误。 用户标识符:基本上每年都考,详细请见书上习题。 用户标识符用来为变量、符号常量、数组、函数等取名。关键字不可以作为用户标识符。...4、自加表达式: 自加、自减表达式:假设a=5,++a(是为6), a++(为5); 运行的机理:++a 是先把变量的数值加上1,然后把得到的数值放到变量a中,然后再用这个++a表达式的数值为6,而a+...补充: 1、空语句不可以随意执行,会导致逻辑错误。 2、注释是最近几年考试的重点,注释不是C语言,不占运行时间,没有分号。不可以嵌套!...3、强制类型转换:   一定是 (int)a 不是  int(a),注意类型上一定有括号的。    注意(int)(a+b) 和(int)a+b 的区别。 前是把a+b转型,后是把a转型再加b

18930

3寒假专辑:一、C语言基础知识

3、一个C语言程序有且只有一个main函数,是程序运行的起点。 第二节、熟悉vc++ 1、VC是软件,用来运行写的C语言程序。 2、每个C语言程序写完后,都是先编译,后链接,最后运行。...(.c---à.obj---à.exe)这个过程中注意.c和.obj文件时无法运行的,只有.exe文件才可以运行。(常考!)...4、自加表达式: 自加、自减表达式:假设a=5,++a(是为6), a++(为5); 运行的机理:++a 是先把变量的数值加上1,然后把得到的数值放到变量a中,然后再用这个++a表达式的数值为6,而a+...补充: 1、空语句不可以随意执行,会导致逻辑错误。 2、注释是最近几年考试的重点,注释不是C语言,不占运行时间,没有分号。不可以嵌套!...3、强制类型转换: 一定是 (int)a不是 int(a),注意类型上一定有括号的。 注意(int)(a+b) 和(int)a+b 的区别。前是把a+b转型,后是把a转型再加b

52420

你只用do-while来实现循环?太浪费了!

在宏定义中的妙用 错误的宏定义 // 目的:把两个参数分别自增一下#define OPT(a, b) a++; b++; int main(int argc, char *argv[]){...看一下下面这个例子:在调用OPT宏的外层添加一个if条件判断: #define OPT(a, b) a++; b++; int main(int argc, char *argv[]){ int...if(0) a++; b++; 错误原因一目了然:由于if语句没有用大括号{}把需要执行的代码全部包裹住,导致只有a++;语句是在if语句的控制范围,而b++;语句无论如何都被执行了。...如下: #define ADD(a, b, c) ({ ++a; ++b; c=a+b; }) int i = 1;int j = 2;int k;printf("k = %d \n", ADD(i,...如果在某个调用中发生错误,需要中止后面的操作,进行错误处理。虽然C语言中不禁止goto语句的使用,但是看到这么多的goto,难道就没有美观、更优雅的做法吗?

83020

c语言基础学习03_数据类型与运算符

由于微软在VS2013中不建议再使用c的传统库函数scanf,strcpy,sprintf等, 所以直接使用这些库函数会提示C4996错误,在源文件中添加以下指令就可以避免这个错误提示: 法一: #define...例如: int a = 3; int b = a++;   //先计算表达式的值,即先把a的赋值给了b(b = a = 3);然后a再自加1(a = a + 1)。 printf("%d....不同厂家的编译器会有不同的结果: 在gcc的编译下: int a = 3; int b = ++a + a++;    //输出的是:5,9 int b = a++ + ++a;    //输出的是...%d\n",a, b); 在VS2013的编译下: int a = 3; int b = ++a + a++;    //输出的是:5,8 int b = a++ + ++a;    //输出的是...要注意先计算逗号左边的值是否对计算逗号右边的值有影响) 例如: int a = 2; int b = 3; int c = 4; int d = 5; int i = (a = b, c +

1K20
领券