2.格式化输入输出&&分支结构
2.格式化输入输出&&分支结构
一.格式化输入输出
1.输出
注意:使用printf( )时最好加头文件#include
格式
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 b=3.12345678;
double c=3.12345678;
char d='y';
printf("%d\n",a);
printf("%f\n",b);
printf("%lf\n",c);
printf("%c\n",d)
所有输出的变量均可包含在一个字符串中
int a=3;
float b=3.12345678;
double c=3.12345678;
char d='y';
printf("int a = %d, float b = %f\n double c = %lf, char d = %c\n",a,b,c,d);
输入一个整数,表示时间,单位是秒。输出一个字符串,用“时:分:秒”的形式表示这个时间。
int t;
cin>>t;
int hours = t / 3600;
int minutes = t % 3600 / 60;
int seconds = t % 60;
printf("%d:%d:%d\n",hours,minutes,seconds);
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.12345678;
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);
int a;
char b;
scanf("%d",&a); //输入:12 a 会将空格存入变量b中
scanf("%c",&b);
printf("%d",a);
printf("%c",b);
二 分支结构
1.if 语句
if(条件)
{
条件成立执行的语句;
}
if(6>3)
{
cout<<"条件成立";
}
2.if-else语句
if(条件)
{
条件成立执行的语句;
}
else
{
条件不成立执行的语句;
}
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 if(条件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语句括号内只有一行代码,可以将括号省略
if(a>=60)
cout<<"及格";
else
cout<<"不及格";
if(a>=60) cout<<"及格";
else cout<<"不及格";
三 常用比较运算符和逻辑三兄弟
比运算符
<,>,>=,==等于,!=不等于
值得注意的是,>=自带一个||或,读作大于或等于
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<<"以上条件都不满足";
}