#include<stdio.h>intmain(void){int a =1234,b =123,c =123456;printf("%5d\n",a);//补一个空格printf("%5d\n",b);//补两个空格printf("%5d\n",c);//保持原样输出return0;}
运行结果:
1234
123
123456
--------------------------------
Process exited after 0.1893 seconds with return value 0
请按任意键继续. ..
(2)%0md
%0md与%md的不同之处在于用0代替了空格的位置
代码示例:
#include<stdio.h>intmain(void){int a =1234,b =123,c =123456;printf("%05d\n",a);//补一个0printf("%05d\n",b);//补两个0printf("%5d\n",c);return0;}
运行结果:
01234
00123
123456
--------------------------------
Process exited after 0.08475 seconds with return value 0
请按任意键继续. ..
(3)%.mf
%.mf是让浮点数保留m位小数输出,遵循四舍五入的原则
代码示例:
#include<stdio.h>intmain(void){double db =1.23456;printf("%.0f\n",db);//不保留小数点printf("%.1f\n",db);//保留1位小数点printf("%.2f\n",db);//保留2位小数点printf("%.3f\n",db);//保留3位小数点printf("%.4f\n",db);//保留4位小数点printf("%.5f\n",db);//保留5位小数点return0;}
示例结果:
1
1.2
1.23
1.235
1.2346
1.23456
--------------------------------
Process exited after 0.1843 seconds with return value 0
请按任意键继续. ..
循环——switch
switch语句:
switch(表达式)
{
case 常量表达式1:
……
break;
case 常量表达式2:
……
break;
……
case 常量表达式n:
……
break;
default:
……
}
代码示例:
#include<stdio.h>intmain(void){int a =1,b =2;switch(a+b){case1:printf("case 1");break;case2:printf("case 2");break;case3:printf("case 3");break;//执行case 3case4:printf("case 4");break;default:printf("over!!!");}return0;}
运行结果:
case 3
--------------------------------
Process exited after 0.1537 seconds with return value 0
请按任意键继续. ..
reak的作用:结束循环
//删掉case 3的break#include<stdio.h>intmain(void){int a =1,b =2;switch(a+b){case1:printf("case 1\n");break;case2:printf("case 2\n");break;//继续向下执行直到遇到break跳出case3:printf("case 3\n");case4:printf("case 4\n");break;default:printf("over!!!");}return0;}
运行结果:
case 3
case 4
--------------------------------
Process exited after 0.07365 seconds with return value 0
请按任意键继续. ..
删掉所有break
//删除所有break后,从符合case情况向下输出,包括default的内容#include<stdio.h>intmain(void){int a =1,b =2;switch(a+b){case1:printf("case 1\n");case2:printf("case 2\n");case3:printf("case 3\n");case4:printf("case 4\n");default:printf("over!!!")}return0;}
运行结果:
case 3
case 4
over!!!
无符合case的情况
#include<stdio.h>intmain(void){int a =1,b =2;switch(a+b){case4:printf("case 4\n");break;default:printf("over!!!");}return0;}
运行结果:
over!!!
------------------------------
break和continue的区别
break是当条件满足事跳出循环不在执行
continue是当条件满足时不再执行本次循环结果,继续执行下一个循环
示例代码:
#include<stdio.h>intmain(void){for(int i =0;i <8;i++){if(i ==3)break;//只打印0 1 2 ,当i等于3时不再执行循环elseprintf("%d\n",i);}printf("***********************************\n");for(int i =0;i <8;i++){if(i ==3)continue;//不打印3,但是打印其他的数字elseprintf("%d\n",i);}return0;}
运行结果:
0
1
2
***********************************
0
1
2
4
5
6
7
--------------------------------
Process exited after 0.07745 seconds with return value 0
请按任意键继续. ..