2.格式化输入输出&&分支结构
2.格式化输入输出&&分支结构™
一.格式化输入输出
注意:使用printf()时要添加头文件 #include 《cstdio》
1.输出
格式:printf("%类型",值);
#include<iostream>
#include<cstdio>
using namespace std;
int main()
{
printf("%d ",66);
printf("哈哈哈");
return 0;
}
int.float.double.char
(1)int:%d
(2)float:%f,默认保留6位小数
(3)double:%lf,默认保留6位小数
(4)char:%c,回车也是一个字符,用‘\n’表示
int a=3;
float s=3.12345678;
double d=3.12345678;
char f='y';
printf("%d\n",a);
printf("%f\n",s);
printf("%lf\n",d);
printf("%c\n",f);
int a=3;
float s=3.12345678;
double d=3.12345678;
char f='y';
printf("int a=%d,float s=%f\n double d=%lf,char f=%c\n",a,s,d,f);
printf("%d %f\n%lf %c",a,s,d,f);
输入一个整数,表示时间,单位是秒。输出一个字符串,用“时:分:秒”的形式表示这个时间。
int t;
cin>>t;
int h=t/3600;
int m=t%3600/60;
int s=t%60;
printf("%d:%d:%d",h,m,s);
float,double等输出保留若干位小数使用:%.4f,%.3lf
float b=3.12345678;
double c=3.12345678;
printf("%.4f\n",b);
printf("%.3lf\n",c);
最小数字宽度
%8.3f,表示这个浮点数的最小宽度为8,保留3位小数,当宽度不足时在前面补空格。
int a=3;
float b=3.12345678;
double c=3.12345678l;
printf("%5d\n",a);
printf("%8.4f\n",b);
printf("%7.3lf\n",c);
%-8.3f,表示最小宽度为8,保留3位小数,当宽度不足时在后面补上空格
int a=3;
float b=3.12345678;
double c=3.12345678;
printf("%-5d!\n",a);
printf("%-8.4f!\n",b);
printf("%-7.3lf!\n",c);
%08.3f,表示最小宽度为8,保留3位小数,当宽度不足时在后面补上0
int a=3;
float b=3.12345678;
double c=3.12345678;
printf("%05d\n",a);
printf("%08.4f\n",b);
printf("%07.3lf\n",c);
2.输入
& 取地址
格式:
scanf("%d",&变量名);
int a;
scanf("%d",&a);
printf("%d",a);
注意:scanf 和 cin 的区别:scanf 能够输入空格,cin忽略空格
int a;
char b;
scanf("%d",&a);
scanf("%c",&b);
printf("%d",a);
printf("%c",d);
二.分支结构
1.if语句
if(条件)
{
条件成立执行的语句;
}
if(6>3)
{
cout<<"条件成立";
}
2.if-else语句
if(条件)
{
条件成立执行的语句;
}
esle
{
条件不成立执行的语句;
}
float a;
scanf("%f",&a);
if(a>60)
{
cout<<"及格";
}
else
{
cout<<"不及格";
}
3.if-else if-else
else 可以省略,根据题目要求来
if(条件1)
{
条件1成立执行的语句;
}
else if(条件2)
{
条件2成立执行的语句;
}
else(条件3)
{
条件3成立执行的语句;
}
else
{
以上条件都不成立执行的语句;
}
float a;
scanf("%f",&a);
if(a>=60 && a<70)
{
cout<<"及格";
}
else if(a>=70 && a<80)
{
cout<<"良好";
}
else if(a>=80 && a<90)
{
cout<<"优秀";
}
else if(a>=90 && a<=100)
{
cout<<"特别优秀";
}
else
{
cout<<"不及格,或输入错误";
}
4.不同的书写格式
如果if语句只有一行代码,可以将括号省略
int a;
cin>>a;
if(a>=60)
cout<<"及格";
else
cout<<"不及格";
int a;
cin>>a;
if(a>=60) cout<<"及格";
else cout<<"不及格";
三.常用比较运算符和逻辑三兄弟
1.比较运算符
<,>,>=,<=,==等于,!=不等于
值得注意的事,>=自带一个 || 或。读作,大于或等于。
2.逻辑三兄弟
&& 与:两边成立,整体成立
|| 或:一边成立,整体成立
! 非:取反
四.switch语句
switch(值)
{
case 值1:
值和值1相同时,执行的语句;
break;结束switch
case 值2:
值和值2相同时,执行的语句;
break;结束switch
default:
以上条件都不满足执行的语句
}
int a;
scanf("%d",&a);
switch(a)
{
case 1:
cout<<"周一";
break;
case 2:
cout<<"周二";
break;
case 3:
cout<<"周三";
break;
default:
cout<<"以上条件都不满足";
}