if...else选择结构
switch选择结构
for循环
while循环
do...while循环
char a = '9';
double b = 3.1415926;
%c:输出单个字符 | printf("%c",a);//9 |
%d:输出十进制整数 | printf("%d",a);//57 |
%o:输出八进制整数 | printf("%o",a);//71 |
%x:输出十六进制整数 | printf("%x",a);//39 |
%u:输出无符号整数 | printf("%u",a);//57 |
%s:输出字符串 | printf("%s",a); |
%f:输出浮点数 | printf("%f",a);//3.141593 |
%e:输出指数形式浮点数 | printf("%e",a);//3.141593e+00 |
%g:自动选择浮点数格式 | printf("%g",a);//3.14159 |
位数限制:%.2f | printf("%.2f",a);//3.14 |
前导0、0x:0%d、0x%d | printf("0x%x",a);//0.39 |
左对齐:%-3d | printf("%-.2f",a);//3.14 |
int main(void){
int a,b;
printf("请输入两个整数,以空格隔开\n");
scanf("%d %d",&a,&b);
printf("a=%d , b=%d",a,b);
}
运行结果为:
请输入整数,以空格隔开
23 78
a=23 , b=78
结构化的程序设计容易理解、容易测试,也容易修改,正确使用这些结构有助于设计出高度结构化的程序。
顺序结构:按照语句出现的先后顺序依次执行;
任意输入三个整数,输出其平均值
int a,b,c;
printf("请输入三个整数,以空格隔开\n");
scanf("%d %d %d",&a,&b,&c);
double avg1=(a+b+c)/3;
printf("avg1=%.2f\n",avg1);
double avg2=(a+b+c)/3.0;
printf("acg2=%.2f",avg2);
结果为
请输入三个整数,以空格隔开
3 5 5
avg1=4.00
avg2=4.33
选择结构:根据条件判断是否执行相关语句;
选择结构有:if...else... switch...case
循环结构:当条件成立时,重置执行某些语句。
均包含一个入口和一个出口;
每一部分代码都有机会被执行;
不存在死循环。
break作用:
一个循环可以包含多个break语句,但一般只有一个;
当循环内有switch语句,switch内的break仅影响该switch语句,不影响循环;
break只能结束当前正在执行的循环。
continue作用:
continue只能用在循环里使用;
continue跳过循环体中剩余的语句而执行下一次语句。
int i=1,sum=0;
for(;i<=10;i++){
if(i%2==0)
//continue;//25
break;//1
sun+=i;
}
printf("sum=%d",sum);
goto语句
一种无条件转移语句,可以控制程序流程转向指定名称的地方
语句标号与goto语句可以不在一个循环内,但必须在同一个函数中
int main(void){
int i=1,sum=0;
loop:if(i<=10)//标签名:语句
{
sum+=i;
i++;
goto loop;//goto标签名
}
printf("sum=%d",sum);
return EXIT_SUCCESS;
结果 sum=55