c语言编写程序将一个指定文件中给定字符串删除。假设给定的字符串长度不超过20,文件中每行的字符数不超过100。要求:给定的字符串大小写无关。
时间: 2024-06-04 17:13:02 浏览: 28
你可以使用C语言中的文件操作函数和字符串处理函数来完成这个任务。具体的步骤可以是:
1. 打开指定的文件,使用fopen函数。
2. 读取每一行的字符串,使用fgets函数。
3. 在每一行中查找给定的字符串,使用strstr函数。
4. 如果找到了给定的字符串,则将其删除,可以使用字符串处理函数,比如strcpy和strcat来实现。
5. 将修改后的字符串写回到文件中,使用fputs函数。
6. 关闭文件,使用fclose函数。
需要注意的是,给定的字符串大小写无关,所以需要将每一行中的字符串都转换为小写或大写,使用字符串处理函数,比如tolower和toupper来实现。
相关问题
具体代码c语言编写程序将一个指定文件中给定字符串删除。假设给定的字符串长度不超过20,文件中每行的字符数不超过100。要求:给定的字符串大小写无关。
可以的,以下是一个示例代码:
```
#include <stdio.h>
#include <string.h>
int main()
{
char filename[100], str[20], temp[100];
FILE *fp, *fp_temp;
int i, j, flag;
printf("请输入文件名:");
scanf("%s", filename);
printf("请输入要删除的字符串:");
scanf("%s", str);
fp = fopen(filename, "r");
fp_temp = fopen("temp.txt", "w");
while(fgets(temp, 100, fp) != NULL)
{
flag = 0;
for(i = 0; i <= strlen(temp) - strlen(str); i++)
{
for(j = 0; j < strlen(str); j++)
{
if(temp[i+j] != str[j] && temp[i+j] != str[j] - 32 && temp[i+j] != str[j] + 32)
{
break;
}
}
if(j == strlen(str))
{
flag = 1;
break;
}
}
if(!flag)
{
fputs(temp, fp_temp);
}
}
fclose(fp);
fclose(fp_temp);
remove(filename);
rename("temp.txt", filename);
printf("删除完成!");
return 0;
}
```
用c语言编写程序,从给定字符串中查找某指定的字符。
可以使用C语言中的字符串处理函数`strchr()`来查找给定字符串中某指定的字符。`strchr()`函数的原型如下:
```c
char *strchr(const char *s, int c);
```
其中`s`是需要查找的字符串,`c`是需要查找的字符。函数返回`c`在`s`中第一次出现的位置的指针,如果`c`在`s`中不存在,则返回`NULL`。
以下是一个示例程序,演示了如何使用`strchr()`函数查找给定字符串中某指定的字符:
```c
#include <stdio.h>
#include <string.h>
int main() {
char str[100];
char ch;
char *result;
// 读取字符串和指定字符
printf("输入字符串: ");
fgets(str, 100, stdin);
printf("输入要查找的字符: ");
scanf("%c", &ch);
// 使用 strchr() 函数查找字符
result = strchr(str, ch);
// 判断字符是否存在
if (result == NULL) {
printf("字符 %c 不存在于字符串中\n", ch);
} else {
printf("字符 %c 在字符串中的位置是: %ld\n", ch, result - str);
}
return 0;
}
```
运行示例程序,输入一个字符串和要查找的字符,程序将输出指定字符在字符串中的位置。
相关推荐
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)