程序设计题
从键盘输入一行字符,写入一个文件,再把该文件内容读出显示在屏幕上。
#include #define N 80 main(){ char str[N]; printf(“请输入一行字符:”); gets(str); FILE* fp = fopen(“text.txt”, “w+”); if(fp==NULL) exit(0); if(fputs(str, fp)){ printf(“写入失败!\n”); exit(0); } fgets(str, fp); puts(str); }
moonya 回复 moonya: 少个rewind()
#include #include int main(){ FILE *fp; if((fp=fopen("abc.docx","w"))==NULL){ printf("error"); exit(0); } char ch[10]; scanf("%s",ch); int i=0; while(ch[i]){ fputc(ch[i],fp); putchar(ch[i++]); } fclose(fp); }
#include <stdio.h> #include<stdlib.h> int main() { FILE * p= fopen("D:\text144.txt","w+"); char str[100]; scanf("%s",str); fprintf(p,"%s\n",str);//输入文件完毕 rewind(p); char ch= fgetc(p); while(ch!=EOF){ putchar(ch); ch = fgetc(p); } fclose(p);
return 1; }
还是中间fclose比较简单,中间用rewind要复杂一点
#include <stdio.h> int main() { FILE *fp; char ch, a[100]; fp = fopen("D:\\example\\2333.txt", "w"); scanf("%s", a); fprintf(fp, "%s", a); fclose(fp); fp = fopen("D:\\example\\2333.txt", "r"); while(1) { ch = fgetc(fp); putchar(ch); if(feof(fp)) { break; } } fclose(fp); return 0; }
#include<stdio.h> #include<stdlib.h> int main() { FILE *fp = fopen("D:/c1.txt","w"); if(fp == NULL) { printf("打开文件错误,程序退出"); exit(0); } char ch; printf("输入一行字符按ctrl+z 回车结束:\n"); while((ch = fgetc(stdin)) != EOF) { fputc(ch,fp); } fclose(fp); fp = fopen("D:/c1.txt", "r"); if(fp == NULL) { printf("打开文件错误,程序退出"); exit(0); } while((ch = fgetc(fp)) != EOF) { fputc(ch,stdout); } fclose(fp); return 0; }
#include <stdio.h> #include <stdlib.h> int main(){ FILE *fp; char filename[20]="D://test.txt"; if((fp=fopen(filename,"w"))==NULL){ printf("没有这个文件"); exit(0); } char ch; printf("请输入字符串以#结尾:\n"); ch=getchar(); while(ch!='#'){ putchar(ch); fputc(ch,fp); ch=getchar(); } fclose(fp); putchar(10); return 0; }
#include <stdio.h> #include <string.h> int main () { char ch; FILE *fp = fopen("inputString.txt", "w+"); if (fp!=NULL) { printf("请输入要保存的字符串:\n"); ch = getchar(); int count = 0; while (ch!='\n') { count++; fputc(ch, fp); ch = getchar(); } printf("本次一共写入了%个字符\n",count); printf("\n"); rewind(fp); ch = fgetc(fp); while (ch!=EOF) { putchar(ch); ch = fgetc(fp); } printf("\n"); } fclose(fp); return 0; }
#include <stdlib.h> #include "stdio.h" int main() { char ch; FILE *fp; if ((fp = fopen("d:/example/c1.txt", "a+")) == NULL) { exit(1); } while ((ch=getchar())!='\n'){ fputc(ch,fp); } rewind(fp); while ((ch= fgetc(fp))!=EOF){ putchar(ch); } fclose(fp); return 0; }
#include<stdio.h> int main(){ FILE *p; char str[100]; gets(str); if((p = fopen("D:\\example\\c1.txt", "w+")) == NULL){ printf("Open error!\n"); exit(0); } fputs(str,p); rewind(p); char c = fgetc(p); while(!feof(p)){ putchar(c); c = fgetc(p); } fclose(p); return 0; }
#include<stdio...
用户登录可进行刷题及查看答案
#include<stdio.h>
main()
{
FILE *fp;
char ch;
if((fp=fopen("d:\\example\\string","wt+"))==NULL)
printf("Cannot open file strike any key exit!");
getch();
exit(1);
}
printf("input a string:\n");
ch=getchar();
while (ch!='\n')
fputc(ch,fp);
rewind(fp);
ch=fgetc(fp);
while(ch!=EOF)
putchar(ch);
printf("\n");
fclose(fp);
【解析】程序中第6行以读写文本文件方式打开文件string。程序第13行从键盘读入一个字符后进入循环,当读入字符不为回车符时,则把该字符写入文件之中,然后继续从键盘读入下一字符。每输入一个字符,文件内部位置指针向后移动一个字节。写入完毕,该指针已指向文件末。如要把文件从头读出,须把指针移向文件头,程序第19行rewind函数用于把fp所指文件的内部位置指针移到文件头。第20至25行用于读出文件中的一行内容。
登录后提交答案