输入一个字符串存入字符数组a中,不借助其他数组的情况下直接字符数组a内所有字符倒序,再输出倒序后的字符数组a。
时间: 2024-03-03 07:50:02 浏览: 92
好的,以下是代码实现:
```c
#include <stdio.h>
#include <string.h>
int main() {
char a[100];
int len, i, j;
// 输入字符串
printf("请输入一个字符串:");
scanf("%s", a);
// 计算字符串长度
len = strlen(a);
// 字符数组倒序
for (i = 0, j = len - 1; i < j; i++, j--) {
char temp = a[i];
a[i] = a[j];
a[j] = temp;
}
// 输出倒序后的字符数组
printf("倒序后的字符串为:%s\n", a);
return 0;
}
```
其中,我们使用了 `strlen` 函数来计算字符串长度,使用了双指针法将字符数组倒序,最后输出倒序后的字符数组即可。
相关问题
用c语言(倒序)输入一个字符串存入字符数组a中,不借助其他数组的情况下直接字符数组a内所有字符倒序,再输出倒序后的字符数组a。
好的,我知道了。下面是代码实现:
```c
#include <stdio.h>
#include <string.h>
int main()
{
char a[100];
int len, i, j;
printf("请输入一个字符串:");
scanf("%s", a);
len = strlen(a);
for(i=0, j=len-1; i<j; i++, j--)
{
char temp = a[i];
a[i] = a[j];
a[j] = temp;
}
printf("倒序后的字符串是:%s\n", a);
return 0;
}
```
这段代码中,我们首先定义了一个字符数组 `a`,并使用 `scanf()` 函数从键盘读入一个字符串存入 `a` 中。然后,我们使用 `strlen()` 函数获取该字符串的长度,用 `for` 循环将字符数组中的所有字符倒序,最后使用 `printf()` 函数输出倒序后的字符数组。
用c语言编一个程序,输入一个字符串存入字符型数组中,然后复制其前面的5个字符组成新字符串存入另一个字符型数组后输出。要求用指向两个字符型数组首地址的指针变量来处理其中的字符
好的,下面是 C 语言的代码实现:
```c
#include <stdio.h>
#include <string.h>
int main() {
char str1[100], str2[6];
char *p1, *p2;
printf("请输入一个字符串:");
scanf("%s", str1);
p1 = str1;
p2 = str2;
strncpy(p2, p1, 5);
printf("复制后的字符串为:%s\n", str2);
return 0;
}
```
这个程序首先定义了两个字符型数组 `str1` 和 `str2`,分别用来存放输入的字符串和复制后的字符串。然后定义了两个指向字符型数组首地址的指针变量 `p1` 和 `p2`,分别指向 `str1` 和 `str2` 的首地址。接着通过 `scanf` 函数读入字符串,将 `p1` 指向 `str1` 的首地址,`p2` 指向 `str2` 的首地址,最后使用 `strncpy` 函数将 `p1` 指向的前 5 个字符复制到 `p2` 指向的数组中。最后输出复制后的字符串。
希望能够帮助到你!
阅读全文