黑马程序员匠心之作|C++教程从0到1入门编程,学习编程不再难

猜大小
#include <iostream>
#include<ctime>
using namespace std;
//此段代码为猜大小,同时可限制猜测次数
int main() {
srand((unsigned int)time(NULL));
int num = rand() % 100 + 1;
int count = 0;
while (1) {
int val = 0;
cin >> val;
count++;
if (val > num) {
cout << "您输入的数大了" << endl;
}
else if (val<num){
cout << "您输入的数小了" << endl;
}
else {
cout << "恭喜您猜对了" << endl;
cout << "您的猜测次数为:" << count << endl;
break;
}
cout << "您已猜测次数为:" << count << endl;
if (count == 7) {
cout << "很遗憾,您并没有在6次内猜对" << endl;
break;
}
}
return 0;
}

水仙花数
#include<iostream>
using namespace std;
int main() {
//100~999范围内个位、十位、百位上的数的三次幂相加等于其本身则为水仙花数
int num = 100;
do {
int a = num % 10;
int b = num % 100 / 10;
int c = num / 100;
int sum = a*a*a+b*b*b+c*c*c;
if (sum == num) {
cout << num<<endl;
}
num++;
} while(num<1000);
return 0;
}

敲桌子
#include<iostream>
using namespace std;
int main() {
//1~100内个位是7、十位是7、是7的倍数,输出敲桌子,不是则输出数字本身
for (int num = 1; num < 101; num++)
{
if (num % 10 == 7 || num / 10 == 7 || num % 7 == 0)
{
cout << "敲桌子" << endl;
}
else
{
cout << num << endl;
}
}
return 0;
}

五只小猪称体重(一维数组找出最大值)
#include<iostream>
using namespace std;
int main() {
//找出数组中最大的数
int arr[5] = {200,300,400,500,650};
int max = 0;
//for (int i = 0; i < 4; i++) //这条想法复杂化了,下面的思想更适合数组从大到小排序。无须看这条
//{
// if (arr[i] > arr[i + 1])
// {
// max = arr[i];
// }
// else
// {
// max = arr[i + 1];
// }
//}
for (int i = 0; i < 5; i++) //直接比大小即可
{
if (arr[i] > max)
{
max = arr[i];
}
}
cout << max;
return 0;
}

元素逆置(一维数组)
#include<iostream>
using namespace std;
int main() {
//一维数组逆置
int arr[] = { 1,2,3,4,5 };
int b = sizeof(arr) / sizeof(arr[0]);
for (int i = 0; i < b/2; i++)
{
int temp = arr[i];
arr[i] = arr[b-1-i];
arr[b - 1 - i] = temp;
}
for (int i = 0; i < b; i++)
{
cout << arr[i] << endl;
}
return 0;
}
