c 语言scanf输入字符串
时间: 2023-08-16 20:11:28 浏览: 256
你可以使用`scanf`函数来输入字符串,它的格式化字符串为`%s`。以下是一个示例:
```c
#include <stdio.h>
int main() {
char str[100];
printf("请输入字符串:");
scanf("%s", str);
printf("你输入的字符串是:%s\n", str);
return 0;
}
```
在这个示例中,`scanf`函数会读取用户输入的字符串,并将其存储在`str`数组中。请注意,`scanf`函数默认以空格作为字符串的结束符,所以如果输入的字符串中有空格,`scanf`只会读取第一个空格之前的部分。如果你想读取整行字符串,可以使用`fgets`函数。
相关问题
c 语言比较字符串大小
在 C 语言中,可以使用标准库函数strcmp()来比较两个字符串的大小。该函数的原型为:
```
int strcmp(const char *str1, const char *str2);
```
该函数返回一个整数值,如果 str1 等于 str2,则返回0;如果 str1 小于 str2,则返回一个小于0的值;如果 str1 大于 str2,则返回一个大于0的值。下面是一个例子:
```c
#include <stdio.h>
#include <string.h>
int main() {
char str1[50], str2[50];
int result;
printf("请输入第一个字符串:");
scanf("%s", str1);
printf("请输入第二个字符串:");
scanf("%s", str2);
result = strcmp(str1, str2);
if (result == 0) {
printf("两个字符串相等。\n");
} else if (result < 0) {
printf("%s 小于 %s。\n", str1, str2);
} else {
printf("%s 大于 %s。\n", str1, str2);
}
return 0;
}
```
在这个例子中,我们首先使用scanf()函数从用户输入中读取两个字符串,然后使用strcmp()函数比较它们的大小,并根据返回值输出相应的结果。
c 语言将字符串逆置pta
要将字符串逆置,可以使用C语言中的指针和循环来实现。具体步骤如下:
1. 定义一个字符数组,存储待逆置的字符串。
2. 定义两个指针,分别指向字符串的头和尾。
3. 使用循环交换头指针和尾指针所指向的字符,直到头指针大于等于尾指针为止。
4. 输出逆置后的字符串。
下面是代码示例:
```c
#include <stdio.h>
#include <string.h>
int main() {
char str[100];
printf("请输入字符串:");
scanf("%s", str);
int len = strlen(str);
char *p1 = str;
char *p2 = str + len - 1;
while (p1 < p2) {
char temp = *p1;
*p1 = *p2;
*p2 = temp;
p1++;
p2--;
}
printf("逆置后的字符串为:%s\n", str);
return 0;
}
```
注意,这里使用了指针的加减运算,可以使指针移动到相应的位置。同时需要注意数组下标是从0开始的,所以尾指针需要减1。