C++语言程序设计
第3讲: 更好的C/5
运算符分类
算术运算符加(+)、减(-)、乘(*)、除(/)、求余(或称模运算,%)、自增(++)、自减(--)共七种。
关系运算符大于(>)、小于(<)、等于(==)、大于等于(>=)、小于等于(<=)和不等于(!=)六种。
逻辑运算符与(&&)、或(||)、非(!)三种。
位操作运算符位与(&)、位或(|)、位非(~)、位异或(^)、左移(<<)、右移(>>)六种。
赋值运算符赋值(=)、复合算术赋值(+=,-=,*=,/=,%=)和复合位运算赋值(&=,|=,^=,>>=,<<=)三类共十一种。
条件运算符用于条件求值(?:)。
逗号运算符用于把若干表达式组合成一个表达式(,)。
指针运算符用于取内容(*)和取地址(&)二种运算。
求字节数运算符用于计算数据类型所占的字节数(sizeof)。
特殊运算符有括号(),下标[],成员(->,.)等几种。
运算符优先级
括号
++,--,sizeof
*, /, %
+, -
==, !=
位运算
&&
||
?:
赋值运算=
逗号运算,
思考:
int x=1, y=0;
bool z = !x&&x+y&&++y;
Z = ?
高
低
z (!x)&&(x+y)&&(++y)
0&&(1+0)&&(1) 0
#include <iostream>
using namespace std;
int main()
{ int year;
bool IsLeapYear;
cout << "Enter the year: ";
cin >> year;
IsLeapYear = (( year % 4 == 0 && year % 100 != 0)||(year % 400 == 0));
if (IsLeapYear)
cout << year << " is a leap year“<< endl;
else
cout << year << " is not a leap year“<< endl;
}
例2-2 :输入一个年份,判断是否闰年
运行结果:
Enter the year: 2000
2000 is a leap year
#include <iostream>
using namespace std;
int main()
{ int day;
cin >> day;
switch (day)
{ case 0: cout<<"Sunday"<<endl; break;
case 1: cout<<"Monday"<<endl; break;
case 2: cout<<"Tuesday"<<endl; break;
case 3: cout<<"Wednesday"<<endl; break;
case 4: cout<<"Thursday"<<endl; break;
case 5: cout<<"Friday"<<endl; break;
case 6: cout<<"Saturday"<<endl; break;
default:
cout<<"Day out of range Sunday .. Saturday"<<endl;
break;
}
}
例2-4 :输入一个0~6的整数,转换成星期
运行结果:
2
Tuesday
例2-7 :用 do-while 语句编程
程序1:
#include<iostream>
using namespace std;
int main()
{ int i,sum(0);
cin>>i;
while(i<=10)
{ sum+=i;
i++;
}
cout<<"sum="<<sum
<<endl;
}
程序2:
#include<iostream>
using namespace std;
int main()
{ int i, sum(0);
cin>>i;
do{
sum+=i;
i++;
}while(i<=10);
cout<<"sum="<<sum
<<endl;
}
例2-8 :用 for 语句编程
#include <iostream>
using namespace std;
int main()
{ int n, k;
cout << "Enter a positive integer: ";
cin >> n;
cout << "Number " << n << " Factors ";
for ( k=1; k <= n; k++ )
if ( n % k == 0 )
cout << k << " ";
c
C++程序设计03-更好的C 来自淘豆网m.daumloan.com转载请标明出处.