提交 def5f824 编写于 作者: L luxin

opt exercise description

上级 e4390952
......@@ -7,7 +7,8 @@
],
"children": [],
"export": [
"bubble_sort.json"
"bubble_sort.json",
"reverse.json"
],
"title": "一维数组"
}
\ No newline at end of file
#include <stdio.h>
#define ARR_LEN 5
void print_array(int arr[], int len)
{
int i;
for (i = 0; i != len - 1; ++i)
printf("%d, ", arr[i]);
printf("%d\n", arr[len - 1]);
}
int main(int argc, char** argv)
{
int a[ARR_LEN] = {1, 2, 3, 4, 5};
int b[ARR_LEN];
int temp[ARR_LEN];
int i;
printf("反转前:\n");
print_array(a, ARR_LEN);
for (i = 0; i != ARR_LEN; ++i)
b[ARR_LEN - i - 1] = a[i];
temp = a;
a = b;
b = temp;
printf("反转后:\n");
print_array(a, ARR_LEN);
return 0;
}
\ No newline at end of file
{
"type": "code_options",
"author": "卢昕",
"source": "reverse.md",
"exercise_id":"d917d13042074362ac6728f2c575899b"
}
\ No newline at end of file
# 数组反转
给定一个整型数组,将数组中的元素进行反转,并重新写入原数组中,例如:<br/>
<font size="2">
<div style="text-indent:2em;">反转前:</div>
<div style="text-indent:2em;">1, 2, 3, 4, 5</div>
<div style="text-indent:2em;">反转后:</div>
<div style="text-indent:2em;">5, 4, 3, 2, 1</div>
</font><br/>
请选出错误答案。
<br/>
## 答案
```c
#include <stdio.h>
#define ARR_LEN 5
void print_array(int arr[], int len)
{
int i;
for (i = 0; i != len - 1; ++i)
printf("%d, ", arr[i]);
printf("%d\n", arr[len - 1]);
}
int main(int argc, char** argv)
{
int a[ARR_LEN] = {1, 2, 3, 4, 5};
int b[ARR_LEN];
int temp[ARR_LEN];
int i;
printf("反转前:\n");
print_array(a, ARR_LEN);
for (i = 0; i != ARR_LEN; ++i)
b[ARR_LEN - i - 1] = a[i];
temp = a;
a = b;
b = temp;
printf("反转后:\n");
print_array(a, ARR_LEN);
return 0;
}
```
## 选项
### A
```c
#include <stdio.h>
#define ARR_LEN 5
void print_array(int arr[], int len)
{
int i;
for (i = 0; i != len - 1; ++i)
printf("%d, ", arr[i]);
printf("%d\n", arr[len - 1]);
}
int main(int argc, char** argv)
{
int a[ARR_LEN] = {1, 2, 3, 4, 5};
int b[ARR_LEN];
int i;
printf("反转前:\n");
print_array(a, ARR_LEN);
for (i = 0; i != ARR_LEN; ++i)
b[ARR_LEN - i - 1] = a[i];
for (i = 0; i != ARR_LEN; ++i)
a[i] = b[i];
printf("反转后:\n");
print_array(a, ARR_LEN);
return 0;
}
```
### B
```c
#include <stdio.h>
#define ARR_LEN 5
void print_array(int arr[], int len)
{
int i;
for (i = 0; i != len - 1; ++i)
printf("%d, ", arr[i]);
printf("%d\n", arr[len - 1]);
}
int main(int argc, char** argv)
{
int a[ARR_LEN] = {1, 2, 3, 4, 5};
int i, temp;
printf("反转前:\n");
print_array(a, ARR_LEN);
for (i = 0; i != ARR_LEN / 2; ++i)
{
temp = a[i];
a[i] = a[ARR_LEN - i - 1];
a[ARR_LEN - i - 1] = temp;
}
printf("反转后:\n");
print_array(a, ARR_LEN);
return 0;
}
```
### C
```c
#include <stdio.h>
#define ARR_LEN 5
void print_array(int arr[], int len)
{
int i;
for (i = 0; i != len - 1; ++i)
printf("%d, ", arr[i]);
printf("%d\n", arr[len - 1]);
}
int main(int argc, char** argv)
{
int a[ARR_LEN] = {1, 2, 3, 4, 5};
int i, j, temp;
printf("反转前:\n");
print_array(a, ARR_LEN);
for (i = 0, j = ARR_LEN - 1; i != ARR_LEN / 2; ++i, --j)
{
temp = a[i];
a[i] = a[j];
a[j] = temp;
}
printf("反转后:\n");
print_array(a, ARR_LEN);
return 0;
}
```
# 字符串函数的使用
比较词序列,并替换其中的指定词,最后将所有词拼接形成一个新的句子。输出如下:
> 替换前:
>
> 非淡泊无以明志!
>
> 替换后:
>
> 非宁静无以致远!
>
比较词序列,并替换其中的指定词,最后将所有词拼接形成一个新的句子。程序的输出如下:<br/>
<font size="2">
<div style="text-indent:2em;">替换前:</div>
<div style="text-indent:2em;">非淡泊无以明志!</div>
<div style="text-indent:2em;">替换后:</div>
<div style="text-indent:2em;">非宁静无以致远!</div>
</font><br/>
请选出正确答案。
<br/>
## 答案
```c
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册