例子一 、
#include <stdio.h>
int main(void) {
int i=1;
printf("%d^2 = %d\n", (i++)*(i++), (i-1));
printf("%d\n", i);
i = 1;
printf("%d^2 = %d\n", (i-1), (i++)*(i++));
printf("%d\n", i);
return 0;
}
int main(void) {
int i=1;
printf("%d^2 = %d\n", (i++)*(i++), (i-1));
printf("%d\n", i);
i = 1;
printf("%d^2 = %d\n", (i-1), (i++)*(i++));
printf("%d\n", i);
return 0;
}
输出结果:
1^2 = 0
3
2^2 = 1
3
3
2^2 = 1
3
例子二、
#include <stdio.h>
int main(void) {
int i=1;
while(i<=5)
//printf("%d^2 = %d\n", (i-1), SQ(i++));
printf("%d^2 = %d\n", SQ(i++), (i-1));
return 0;
}
int SQ(int y) {
return ((y)*(y));
}
int main(void) {
int i=1;
while(i<=5)
//printf("%d^2 = %d\n", (i-1), SQ(i++));
printf("%d^2 = %d\n", SQ(i++), (i-1));
return 0;
}
int SQ(int y) {
return ((y)*(y));
}
输出结果:
1^2 = 0
4^2 = 1
9^2 = 2
16^2 = 3
25^2 = 4
4^2 = 1
9^2 = 2
16^2 = 3
25^2 = 4
#include <stdio.h>
int main(void) {
int i=1;
while(i<=5)
printf("%d^2 = %d\n", (i-1), SQ(i++));
//printf("%d^2 = %d\n", SQ(i++), (i-1));
return 0;
}
int SQ(int y) {
return ((y)*(y));
}
输出结果:
1^2 = 1
2^2 = 4
3^2 = 9
4^2 = 16
5^2 = 25
2^2 = 4
3^2 = 9
4^2 = 16
5^2 = 25
总结:
printf("输出样式", 表达式1, 表达式2, ... ,表达式n),执行顺序如下:
首先执行表达式n,...,执行表达式2,最后执行表达式1