CTGU-C语言文件

CTGU-C语言文件代码 CTGU C 语言文件

大家好,欢迎来到IT知识分享网。

第1关:文件内容复制

#include <stdio.h> #include <stdlib.h> int fun(char *source, char *target) { 
    FILE *fs,*ft; char ch; /* 在以下一行填写代码 */ if((fs=fopen(source, "r"))==NULL) // (1) return 0; if((ft=fopen(target, "w"))==NULL) return 0; printf("\nThe data in file :\n"); ch=fgetc(fs); /* 在以下一行填写代码 */ while(!feof(fs)) // (2) { 
    putchar( ch ); /* 在以下一行填写代码 */ fputc(ch, ft); // (3) ch=fgetc(fs); } fclose(fs); fclose(ft); printf("\n\n"); return 1; } int main() { 
    char sfname[20] ="myfile1",tfname[20]="myfile2"; FILE *myf; int i; char c; myf=fopen(sfname,"w"); printf("\nThe original data :\n"); for(i=1; i<30; i++) { 
    c='A'+rand()%25; fprintf(myf,"%c",c); printf("%c",c); } fclose(myf); printf("\n\n"); if (fun(sfname, tfname)) printf("Succeed!"); else printf("Fail!"); return 0; } 

第2关:文件储存平方根

#include <math.h> #include <stdio.h> int fun(char *fname) { 
    FILE *fp; int i, n; float x; if ((fp = fopen(fname, "w")) == NULL) return 0; for (i = 1; i <= 10; i++) /* 在以下一行填写代码 */ fprintf(fp, "%d %f\n", i, sqrt((double)i)); printf("\nSucceed!!\n"); /* 在以下一行填写代码 */ fclose(fp); printf("\nThe data in file :\n"); /* 在以下一行填写代码 */ if ((fp = fopen(fname, "r")) == NULL) return 0; fscanf(fp, "%d%f", &n, &x); while (!feof(fp)) { 
    printf("%d %f\n", n, x); fscanf(fp, "%d%f", &n, &x); } fclose(fp); return 1; } int main() { 
    char fname[] = "myfile3.txt"; fun(fname); return 0; } 

第3关:计算平均分

#include <stdlib.h> // 添加此头文件 #define N 10  typedef struct { 
    char no[15]; char name[10]; float score[3]; float aver; } STU; void Input_Info(STU a[], int n) { 
    for (int i = 0; i < n; i++) { 
    scanf("%s %s %f %f %f", a[i].no, a[i].name, &a[i].score[0], &a[i].score[1], &a[i].score[2]); a[i].aver = (a[i].score[0] + a[i].score[1] + a[i].score[2]) / 3.0; } } void Write_Info(STU a[], int n){ 
    FILE *fd = fopen("record", "wb"); // 以二进制写入打开文件 if (fd == NULL) { 
    printf("Failed to open file.\n"); exit(1); } fwrite(a, sizeof(STU), n, fd); // 将结构体数组写入文件 fclose(fd); } 

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/144259.html

(0)
上一篇 2025-04-27 21:00
下一篇 2025-04-27 21:10

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信