c++问题1

第一题:冒泡排序
O使用冒泡法对5个整数从小到大排序,输出排序前后的各个元素值。
O冒泡法的思路是:将相邻两个数比较,将大的调到后头。
#include<iostream>
#include<ctime>
#include<iomanip>
using namespace std;
void main()
{
int a[5], i, t, j;
srand((unsigned)time(NULL));
cout << "本程序用于冒泡排序!" << endl;
cout << "数组元素为:" << endl;
for (i = 0; i < 5; i++)
{
a[i] = rand() % 90 + 10;
cout << setw(5) << a[i];
}
cout << "\n排序结果为:" << endl;
for (j = 0; j < 4; j++)
for (i = 0; i < 4 - j; i++)
if (a[i]>a[i+1])
{
t = a[i];
a[i] = a[i + 1];
a[i + 1] = t;
}
for (i = 0; i < 5; i++)
cout << setw(5) << a[i];
}
第二题:随机生成互不重复的元素
#include<iostream>
#include<ctime>
#include<iomanip>
using namespace std;
void main()
{
int a[10], i,j;
srand((unsigned)time(NULL));
cout << "本程序用于随机生成互不重复的元素!" << endl;
for (i = 0; i < 10; i++)
{
a[i] = rand() % 10 ;
for (j = 0; j < i; j++)
if (a[j] == a[i])
i--;
}
for (i = 0; i < 10; i++)
cout << setw(5) << a[i];
}
第三题:爱因斯坦的数学题爱因斯坦出了一道这样的数学题:有一条长阶梯,若每步跨2阶,则最后剩一阶,若每步跨3阶,则最后剩2阶,若每步跨5阶,则最后剩4阶,若每步跨6阶则最后剩5阶。只有每次跨7阶,最后才正好一阶不剩。请问这条阶梯共有多少阶?
#include<iostream>
using namespace std;
void main()
{
int n;
for (n = 7;;n+=7)
if (n % 2 == 1 && n % 3 == 2 && n % 5 == 4 && n % 6 == 5)
{
cout << "台阶最小值为:" << n <<endl;
break;
}
}
第四题:借书方案知多少小明有五本新书,要借给ABC三个小朋友,若每人每次只能借一本,则可以有多少种不同的借法,分别是什么(输出每一种借书方案)?
#include<iostream>
using namespace std;
void main()
{
int n = 0, a, b, c;
for (a = 1; a < 6;a++)
for (b = 1; b < 6; b++)
for (c = 1; c < 6; c++)
if (a != b && b != c && a != c)
{
n++;
cout << "第" << n << "种借法方案为:" << a << b << c << endl;
}
cout << "共有" << n << "种借法" << endl;
}
第五题:将大写字母转换为小写字母
#include<iostream>
using namespace std;
void main()
{
char c1, c2;
cout << "本程序用于将大写字母转换为小写字母!" << endl;
cout << "请输入一个字母字符:" << endl;
cin >> c1;
cout << "转换结果为:" << endl;
if (c1 >= 'A' && c1 <= 'Z')
{
c2 = c1 + 32;
cout << c2 << endl;
}
else
cout << c1 << endl;
}
第六题:判断输入字符类型
#include<iostream>
using namespace std;
void main()
{
char ch;
cout << "本程序用于判断输入字符类型!" << endl;
cout << "请输入一个字符:" << endl;
cin.get(ch);
cout << "判断结果为:" << endl;
if (isspace(ch) != 0)
cout << "Space" << endl;
else if (isupper(ch) != 0 || islower(ch) != 0)
cout << "Letter" << endl;
else if (isdigit(ch) != 0)
cout << "Number" << endl;
else 
cout << "Other" << endl;
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值