用c语言用循环结构写一个支持多条信息输入的代码
时间: 2024-03-06 08:46:26 浏览: 106
好的,下面是一个用 C 语言用循环结构写支持多条信息输入的代码示例:
```c
#include <stdio.h>
#include <string.h>
#define MAX_MESSAGE_LENGTH 1000
#define MAX_MESSAGES 100
int main()
{
char messages[MAX_MESSAGES][MAX_MESSAGE_LENGTH];
int num_messages = 0;
char message[MAX_MESSAGE_LENGTH];
int i;
printf("Welcome to the message input program!\n");
printf("Please enter your messages (or 'q' to quit):\n");
while (1)
{
fgets(message, MAX_MESSAGE_LENGTH, stdin);
message[strcspn(message, "\n")] = '\0'; // 去掉末尾的换行符
if (strcmp(message, "q") == 0)
{
// 如果用户输入 'q',退出循环并打印所有输入的信息
printf("Messages entered:\n");
for (i = 0; i < num_messages; i++)
{
printf("%s\n", messages[i]);
}
break;
}
else
{
// 如果用户输入不是 'q',将其添加到列表中
if (num_messages < MAX_MESSAGES)
{
strcpy(messages[num_messages], message);
num_messages++;
}
else
{
printf("Maximum number of messages reached.\n");
break;
}
}
}
return 0;
}
```
这个程序使用了一个二维字符数组来存储用户输入的信息,以及一个变量来记录已经输入的信息数量。主程序循环接收用户输入的信息,并判断是否为 'q'。如果是 'q',则退出循环并打印所有输入的信息;如果不是 'q',则将其添加到数组中。这样就可以支持多条信息输入了。注意在读取输入时,使用 `fgets()` 函数可以避免用户输入过长导致的错误,同时使用 `strcspn()` 函数去掉末尾的换行符。
阅读全文