用C语言写一段程序比较从键盘输入的字符串和文件中读取的字符串
时间: 2023-11-28 21:49:02 浏览: 181
用c语言进行字符串比较
以下是一段比较从键盘输入的字符串和文件中读取的字符串的C语言程序示例:
```c
#include <stdio.h>
#include <string.h>
#define MAX_STR_LEN 100
int main() {
char str1[MAX_STR_LEN];
char str2[MAX_STR_LEN];
FILE *fp;
int i, flag = 0;
// 从键盘获取字符串
printf("请输入一个字符串:");
fgets(str1, MAX_STR_LEN, stdin);
// 打开文件并读取字符串
fp = fopen("test.txt", "r");
if (fp == NULL) {
printf("文件打开失败!\n");
return 1;
}
fgets(str2, MAX_STR_LEN, fp);
fclose(fp);
// 比较两个字符串
for (i = 0; str1[i] != '\0' && str2[i] != '\0'; i++) {
if (str1[i] != str2[i]) {
flag = 1;
break;
}
}
if (flag == 0 && strlen(str1) == strlen(str2)) {
printf("输入的字符串与文件中的字符串相同!\n");
} else {
printf("输入的字符串与文件中的字符串不同!\n");
}
return 0;
}
```
在这个程序中,我们首先使用 `fgets()` 函数从键盘读取一个字符串,并将其存储在 `str1` 字符数组中。然后,我们打开一个名为 `test.txt` 的文件,并使用 `fgets()` 函数读取该文件中的字符串,并将其存储在 `str2` 字符数组中。接下来,我们使用一个循环来比较这两个字符串,如果字符串不同,则将 `flag` 标记设置为 1。最后,我们检查 `flag` 是否为 0,并且两个字符串的长度是否相同,如果相同,则说明两个字符串相同,否则它们不同。
阅读全文