怎么输入几行字符串C语言
时间: 2023-12-09 14:03:58 浏览: 78
在 C 语言中,可以使用字符数组来存储字符串。要输入几行字符串,可以使用循环结构和 scanf 函数来实现。以下是一个示例代码:
```
#include <stdio.h>
int main() {
char str[100];
int i;
printf("请输入几行字符串(以空行作为结束):\n");
for (i = 0; ; i++) {
scanf("%[^\n]", str); // 输入一行字符串,直到遇到换行符为止
getchar(); // 读取并丢弃换行符
if (str[0] == '\0') {
break; // 如果输入的是空行,则结束循环
}
printf("第 %d 行字符串:%s\n", i+1, str);
}
return 0;
}
```
在这个示例代码中,使用了一个无限循环来连续输入多行字符串。每次循环中,使用 scanf 函数读取一行字符串,直到遇到换行符为止。然后使用 getchar 函数读取并丢弃换行符,以便下一次循环能够从新的一行开始读取。如果输入的是空行,则结束循环。最后,输出每行输入的字符串。
相关问题
用c语言编辑 输入几行字符串,计算其中是“AC”的数量
以下是使用C语言编写的程序,可以输入多行字符串并计算其中“AC”的数量:
```
#include <stdio.h>
#include <string.h>
int main()
{
char line[100];
int count = 0;
printf("请输入多行字符串(以空行结束):\n");
while (fgets(line, 100, stdin) != NULL)
{
if (strcmp(line, "\n") == 0) // 如果输入的是空行,则退出循环
{
break;
}
if (strstr(line, "AC") != NULL) // 如果该行字符串中包含“AC”,则计数器加1
{
count++;
}
}
printf("输入的字符串中包含 %d 个“AC”\n", count);
return 0;
}
```
该程序使用了fgets函数来逐行读取输入的字符串,并使用strcmp函数判断输入的是否是空行。如果输入的不是空行,则使用strstr函数来检查该行字符串中是否包含“AC”,如果包含,则计数器加1。最后输出计数器的值即为输入字符串中包含“AC”的数量。
c语言 输入几行字符串 将字母的大小写转换一下,非字母字符原样输出。
可以使用C语言中的字符函数isalpha()和tolower()与toupper()。
isalpha()函数用于判断是否为字母,tolower()和toupper()函数用于将字符转换为小写或大写。
下面是示例代码:
```c
#include <stdio.h>
#include <ctype.h>
int main()
{
char str[100];
printf("Enter a string: ");
gets(str); // 输入字符串
int i = 0;
while(str[i] != '\0')
{
if(isalpha(str[i])) // 判断是否为字母
{
if(islower(str[i])) // 如果是小写字母
str[i] = toupper(str[i]); // 转换为大写字母
else // 如果是大写字母
str[i] = tolower(str[i]); // 转换为小写字母
}
i++;
}
printf("Converted string: %s", str); // 输出转换后的字符串
return 0;
}
```
注意:gets()函数存在安全漏洞,建议使用fgets()函数代替。
阅读全文