定义一个10行10列的二维数组,并且通过双重循环对第1列所有元素赋值1,主对角线也赋值1。根据a[i][j] = a[i-1][j] + a[i-1][j-1] 求出其它元素的值。 (2)从键盘上输入一串字符,将其逆向显示。例如:输入abcdefg,则输出gfedcba。 提示:首先计算字符串的长度,再从右边逐一显示字符,直到下标等于0为止。 (3)从键盘随机输入10个数,将最大的元素与第一个元素交换,最小的元素与最后一个元素交换,最后输出交换后的所有数组元素值。 (4)从键盘随机输入10个数放入数组中,然后将其前5个元素与后5个元素对换,即:第一个元素与第十个元素互换,第二个元素与第九个元素互换,……,第五个元素与第六个元素互换。分别输出数组原来各元素的值和对换后各元素的值。用c++格式
时间: 2023-12-22 13:14:40 浏览: 60
(1) 代码如下:
```cpp
#include<iostream>
using namespace std;
int main()
{
int a[10][10] = {0};
for(int i = 0; i < 10; i++){
a[0][i] = 1; //第一列赋值为1
a[i][i] = 1; //主对角线赋值为1
}
for(int i = 1; i < 10; i++){
for(int j = 1; j <= i; j++){
a[i][j] = a[i-1][j] + a[i-1][j-1];
}
}
//输出二维数组
for(int i = 0; i < 10; i++){
for(int j = 0; j < 10; j++){
cout<<a[i][j]<<" ";
}
cout<<endl;
}
return 0;
}
```
(2) 代码如下:
```cpp
#include<iostream>
#include<string>
using namespace std;
int main()
{
string str;
cout<<"请输入一个字符串:";
cin>>str;
int len = str.length();
for(int i = len-1; i >= 0; i--){
cout<<str[i];
}
return 0;
}
```
(3) 代码如下:
```cpp
#include<iostream>
using namespace std;
int main()
{
int a[10];
int max_index = 0, min_index = 0;
cout<<"请输入10个数:";
for(int i = 0; i < 10; i++){
cin>>a[i];
if(a[i] > a[max_index]) max_index = i; //找到最大值的下标
if(a[i] < a[min_index]) min_index = i; //找到最小值的下标
}
//交换最大值和第一个元素
int temp = a[max_index];
a[max_index] = a[0];
a[0] = temp;
//交换最小值和最后一个元素
temp = a[min_index];
a[min_index] = a[9];
a[9] = temp;
//输出交换后的数组
for(int i = 0; i < 10; i++){
cout<<a[i]<<" ";
}
return 0;
}
```
(4) 代码如下:
```cpp
#include<iostream>
using namespace std;
int main()
{
int a[10];
cout<<"请输入10个数:";
for(int i = 0; i < 10; i++){
cin>>a[i];
}
//交换前5个元素和后5个元素
for(int i = 0; i < 5; i++){
int temp = a[i];
a[i] = a[9-i];
a[9-i] = temp;
}
//输出交换前的数组
cout<<"交换前的数组:";
for(int i = 0; i < 10; i++){
cout<<a[i]<<" ";
}
cout<<endl;
//输出交换后的数组
cout<<"交换后的数组:";
for(int i = 0; i < 10; i++){
cout<<a[i]<<" ";
}
return 0;
}
```
阅读全文