Day09 2023/03/08
题目1
设计一个从5个整数中取最小数和最大数的程序
输入:
输入只有一组测试数据,为五个不大于1万的正整数
输出:
输出两个数,第一个为这五个数中的最小值,第二个为这五个数中的最大值,两个数字以空格格开。
题目2
输入三个字符(可以重复)后,按各字符的ASC码从小到大的顺序输出这三个字符。
输入:
第一行输入一个数N,表示有N组测试数据。后面的行输入多组数据,每组输入数据都是占一行,由三个字符组成,之间无空格。
输出:
对于每组输入数据,输出一行,字符中间用一个空格分开。
1、思路
题1思路-c++
两个函数一个获取最大值一个获取最小值,通过数组存储数据。
题2思路-c++
用vector数组接收ASCII码,再用sort函数排序,最后输出。
2、具体实现
题目1
void getMax(int arr[], int &max)
{
max = arr[0];
for (size_t i = 1; i < 5; i++)
{
if (max < arr[i])
max = arr[i];
}
}
void getMin(int arr[], int &min)
{
min = arr[0];
for (size_t i = 1; i < 5; i++)
{
if (min > arr[i])
min = arr[i];
}
}
结果
题目2
int main()
{
int n;
vector<int> v;
cout << "请输入数据组数:";
cin >> n;
cout << "请输入" << n << "组数据:" << endl;
for (size_t i = 0; i < n; i++)
{
cin.ignore(1024, '\n');//清空输入缓冲区
for (size_t i = 0; i < 3; i++)
{
v.push_back(getchar()); // 将输入的三个数放入vector数组
}
sort(v.begin(), v.end()); // 从小到大排序ASCII码
for (auto i : v)
{
cout << i << " "; // 遍历vector
}
cout << endl;
v.clear(); // 清空vector,接收下一组数据
}
return 0;
}
结果
作者:用户4962140068138
链接:juejin.cn/post/720771…
来源:稀土掘金
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。