c++基础

1.打印三角形、求和、99乘法表、判断质数

#if 0
#include
using namespace std;
//三角形
void one() {
	for (int i = 0; i <= 6; i++) {
		for (int j = 0; j <= 6 - i; j++) {
			cout << "*";
		}
		cout << endl;
	}
}
//三角形
void two() {
	for (int i = 0; i <= 6; i++) {
		for (int j = 0; j <= 6 - i; j++) {
			cout << " ";
		}
		for (int j = 0; j <= i; j++) {
			cout << "*";
		}
		cout << endl;
	}
}

//9x9乘法表
void three() {
	for (int i = 1 ; i <=9; i++) {
		cout << " ";
		for (int j = 1; j <=i; j++) {
			cout << j << "x" << i << "=" << j*i <<"  ";
		}
		cout << " "<<endl;
	}

}
//while求和
void four() {
	int sum = 0;
	int i = 1;
	while (i <= 100) {
		sum = sum + i;
		i++;
	}
	cout << sum << endl;
}

//判断是否为质数
void five() {
	int in, out, i, j;
	int count;
	cout << "请输入初始值:";
	cin >> in;
	cout << "请输入终止值:";
	cin >> out;
	for (i = in; i <= out; i++) {
		count = 0;
		for (j = 1; j <= i; j++) {
			if (i%j == 0) {
				count++;
			}
		}
		if (count<=2) {
			cout << i<<" ";
		}
	}
}
#主函数
int main() {
	five();
}
#endif

2. 小写之母变为大写

#include
using namespace std;
#include;
#if 0
int main() {
	string a;
	a = "asjdjfjWEOORPP";
	for (int i=0; a[i]; i++) {
		if (islower(a[i])) {
			a[i] = toupper(a[i]);
		}
		else {
			a[i] = toupper(a[i]);
		}
	}
	for (int i = 0; a[i]; i++) {
		cout << a[i];
	}
	//cout << endl;
}
#endif

3. 判断某年某月是平年还是闰年

方法一:

#if 0
#include
using namespace std;

void max() {
	int year, month;
	cout << "请输入年份";
	cin >> year;
	cout << "请输入月份";
	cin >> month;
	if (month == 2) {
		if ((year % 400 == 0) || (year % 4 == 0 && year % 100 != 0)) { 
			cout << year << "年" << month << "月有29天";
		}

	}
	else if (month == 1 || month == 3 || month == 5 || month == 7 || month == 8 || month == 10 || month == 12) {
		cout << year << "年" << month << "月有31天";
	}
	else if(month==4 ||month==6||month==9||month==11) {
		cout << year << "年" << month << "月有30天";
	}
	else {
		cout << "月份输入错误" << endl;
	}
}
int  main() {
	max();
}
#endif

方法二:

# include 
using namespace std;
void max1()
{
	int year, month;
	cout << "请输入年份";
	cin >> year;
	cout << "请输入月份";
	cin >> month;
	switch (month) {
	case 1:
	case 3:
	case 5:
	case 7:
	case 8:
	case 10:
	case 12:
		cout << year << "年" << month << "月有31天"; break;
	case 4:
	case 6:
	case 9:
	case 11:
		cout << year << "年" << month << "月有30天"; break;
	case 2:
		if ((year % 400 == 0) || (year % 4 == 0 && year % 100 != 0)) { cout << year << "年" << month << "月有29天"; break; }
		else { cout << year << "年" << month << "月有28天"; break; }
	default:
		cout << "月份输入错误" << endl;

	}
}
int main() {
	max1();
}

#endif

4. 判断小猪重量

有三只小猪ABC,请分别输入三只小猪的体重,并且判断哪只小猪最重?
①导出正确包
②正确导入头文件,正确命名项目名。
③在主函数里运行
④输入三只小猪的体重。
⑤并正确定义变量
⑥判断那只小猪最重
⑦对三只小猪的体重进行排序
⑧要求输入输出在主函数里完成
⑨最终打印出结果。
⑩给出正确注释

#include
using namespace std;
void max1() {
	float a, b, c;
	cout << "请输入a的体重:";
	cin >> a;
	cout << "请输入b的体重:";
	cin >> b;
	cout << "请输入c的体重:";
	cin >> c;
	if ((a > b) && (a > c)) {
		cout << "第1只小猪最重";
		if (b > c) {
			cout << "第1只 第2只 第3只";
		}
		else {
			cout << "第1只 第3只 第2只";
		}
	}
	else if ((b > a) && (b > c)) {
		cout << "第2只小猪最重";
		if (a > c) {
			cout << "第2只 第1只 第3只";
		}
		else {
			cout << "第2只 第3只 第1只";
		}
	}
	else {
		cout << "第3只小猪最重";
		if (a>b) {
			cout << "第3只 第1只 第2只";
		}
		else {
			cout << "第3只 第2只 第1只";
		}
	}
}
int main() {
	max1();
}
#endif

5.按照要求实现下面的式子结果

①正确加入包
②正确命名相关项目名
③要求在主函数main()里进行程序运行
④要求赋值初变量s=0:
⑤按照要求正确计算出以上公式中的每一项的结果
⑥要求n至少大于100,并将N的取值自动的进行输入
⑦最终求出以上每一项的结果和
⑧该计算整个过程都要在主函数里进行编辑
⑨打印出最终结果

#include
using namespace std;
#if 0
void one() {
	double sum = 0;
	double s = 0;
	double p = 0;
	int n;
	cout << "请输入n:";
	cin >> n;
	for (int i = 1; i <= n; i++) {
		for (int j = 1;j<= i; j++) {
			sum = sum + j;
			p = 1 / sum;
		}
		s = p + s;
	}
	cout << "s=" << s << endl;
}

int main() {
	one();
}
#endif

6.账户密码登录

系统登录是权限管理的重要组成部分,也是其他权限管理与设计的基础。
系统登录是指用户必须提供满足登录条件的信息后,才能进入系统。
一般提供的信息都是用户名和密码。请设计相应的函数, 实现简单的登录系统
①正确导入头文件
②正确定义变量
③正确定义函数
④使用do while循环
⑤用户名可输入多次
⑥密码错误三次退出系统
⑦在主函数在调用并测试
⑧代码结构合理
⑨结构输出正确
⑩添加必要的注释

#include;
using namespace std;

int main() {
	string username="你好";
	int password=1234;
	string c;
	int d;
	int count = 0;
	do {
		cout << "请输入用户名:";
		cin >> c;
		if (c == "你好") {
			do {
				cout << "请输入密码:";
				cin >> d;
				if (d == password) {
					cout << "密码输入正确" << endl;
					break;
				}
				else {
					count = count + 1;
					if (count == 3) {
						cout << "密码输出超过3次,不能继续输入";

					}
					cout << "输入密码错误,剩余" << 3 - count << "次机会" << "\n";

				}
			} while (true);
			break;
		}
		else {
			cout << "用户名输入不正确" << endl;

		}
	} while (true);
}

7. 石头、剪刀、布比大小

编写程序模拟剪刀, 石头, 和步游戏, 游戏规则为:剪刀剪布, 石头砸剪刀, 步包石头,
玩游戏者从键盘上输入S(表示剪刀)或R(表示石头)或P(表示步), 要求两个游戏者交替输入,
①正确导入头文件
②创建相关的变量
③输入其他的字符(非’S’, ‘R’, ‘P’)提示输入有误, 进行重新输入
④请第一位玩家输入S(表示剪刀)或R(表示石头)或P(表示步)
⑤请第二位位玩家输入S(表示剪刀)或R(表示石头)或P(表示步)
⑥进行判断是否平局
⑦进行判断玩家1赢
⑧进行判断玩家2赢
⑨输出的结果正确
⑩添加合理的注释

#if 0
#include
#include
using namespace std;
int main() {
	string a = { "s" || "r" || "p" };
	string b = { "s" || "r" || "p" };

	cout << "请输入石头剪刀布";
	cout << "第一位玩家请输入:";
	cin >> a;
	cout << "第二位玩家请输入:";
	cin >> b;
	
	if (a == "s") {
		if (b=="r"){
			cout << "第2位玩家赢";
		}
		else {
			cout << "第1位玩家赢";
		}
	}
	else if (a=="r") {
		if (b == "p") {
			cout << "第2位玩家赢";
		}
		else {
			cout << "第1位玩家赢";
		}
	}
	else {
		if (b =="s") {
			cout << "第2位玩家赢";
		}
		else {
			cout << "第1位玩家赢";
		}
	}
}

#endif

8. 值的交换

#if 0
#include
using namespace std;

int change(int &a, int &b);//函数声明

int main() {
	int a = 5, b = 9;
	change(a, b);
	cout << a <<"  "<< b << endl;
}

int change(int &a, int &b) {//值调换
	int c;
	c = a;
	a = b;
	b = c;
	return a, b;
}

#endif

9.数组转置

#if 0
#include
#include"header.h"
using namespace std;

int main() {
	//one();
	//cout << "\n";
	//two();
	int a[2][3] = { 1,2,3,4,5,6 };
	int b[3][2];
	for (int i = 0; i < 2; i++) {
		for (int j = 0; j < 3; j++) {
			cout << a[i][j];
			b[j][i] = a[i][j];
		}
		cout << endl;
	}
	cout << "a" << endl;
	for (int j = 0; j < 3; j++) {
		for (int i = 0; i < 2; i++) {
			cout << b[j][i];
		}
		cout << endl;
	}
}
#endif 

10.获取数组最大值

#if 0
#include
using namespace std;
void max(int a[5], int n);
int main() {
	int a[5] = { 32,41,98,76,52 };
	max(a, 5);
}
void max(int a[],int n) {
	int max =a[0];
	for (int i = 0; i < n; i++) {
		if (a[i] > max) {
			max=a[i];
		}
	}
	cout << max;
}
# endif

11.指针

#if 0
#include
#include
using namespace std;

int main() {
	//二重指针
	int n[2][3] = {1,8,3,4,5,6};
	int *p_n[2];
	int **pp;
	p_n[0] = n[0];
	p_n[1] = n[1];
	pp = p_n;
	cout << pp << endl;
	cout << p_n << endl;
	cout << **pp << endl;//1
	cout << *(*pp + 1) << endl;//8
	cout << **pp + 1 << endl;//2
	cout << **(pp+1) << endl;//4
	cout << *(p_n[0]+1)<< endl;//8
	cout << *(p_n[1] + 1) << endl;//5
}
#endif
#if 0
#include
using namespace std;
int main() {
	int a[10] = { 1,7,3 };
	int b[10] = { 1,7,3 };
	int*w = a;
	int*p = b;
	*w = 5;
	*p = 5;
	cout << (*++w) << " " << *w << " " << a[0] << endl;
	cout << (++*p) << " " << *p << " " << b[0] << endl;

	//二维的数组    
	cout << "*******************************" << endl;
	char str[5] = "abcd";
	char *p_str = str;
	cout << *p_str << endl;
	cout << *p_str + 1 << endl;
	cout << *(p_str + 1) << endl;

}

#endif

12. 基本运算

int main() {
	int a = -5;
	int b = 45;
	cout << abs(a) << endl;
	cout << sin(b) << endl;
	cout << sqrt(b) << endl;
	cout << pow(a, 2) << endl;
	cout << log(26) << endl;
	cout << log10(100) << endl;
	cout << log2(8);

}

13.字符串降序排序

#include
#include
using namespace std;
//方法1:
void revstr(char *str, int nlen) {
	for (int i = 0; i < nlen; i++) {
		cout << str[nlen-i-1]<<" ";
	}
	cout << endl;
}
//方法2:
void revstr1(char *str, int nlen) {
	for (int i = nlen; (i <=nlen)&&(i>0); i--) {
		cout << str[i-1] << " ";
	}
	cout << endl;
}
//方法3:
void revstr2(string str, int nlen) {
	for (int i = nlen; (i <= nlen) && (i > 0); i--) {
		cout << str[i - 1] << " ";
	}
	cout << endl;
}

int main() {
	char s[6] = {'a','b','c','d','e','f'};
	//string s = "abcdef";
	//revstr1(s, 6);
	revstr2(s, 6);
}

你可能感兴趣的:(c++,c++)