我写了一个关于猜字谜的C语言程序,怎么把每次输入的数据保存到磁盘文件中?

我写了一个关于猜字谜的C语言程序,怎么把每次输入的数据保存到磁盘文件中?,第1张

fsopen 打开或建立文件,fwrite 写文件,fread 读文件,fclose 关闭文件

FILE* fname=_fsopen( char const* _FileName, char const* _Mode, int _ShFlag )

size_t fwrite( void const* _Buffer, size_t _ElementSize, _ElementCount,FILE* _Stream )

size_t read( void* _Buffer, size_t _ElementSize, size_t _ElementCount, FILE* _Stream )

int fclose( FILE* _Stream )

我简单写, 请借鉴:

char question[100][512] = {                        //这是题库, 我简写,测试

                            "我生在森林,下雨就出现,撑开一朵朵,好似小雨伞。",

                            "什么心是红色的,看得见摸的着?",

                            ............................

                        }

char answer[100][20] = {

                                    "蘑菇",

                                    "爱心",

                                    ...................

                                }

//检测 回答

char buf[256]        //缓存

int i

for(i=0 i<100 ++i)

{

    puts(question[i])

    puts("回答:")

    gets(buf)

    if(strstr(buf, answer[i]))

        puts("正确")

    else

        puts("错误")    

    

}

#include

#include

#include

#include

int

i,j=1

int

scores[6]

void

main()

{

char

control='\0'

int

rand1,guess,score

printf("开始游戏吗

?(y?n)")

control=getchar()

while(control!='y'&&control!='y'&&control!='n'&&control!='n')//屏蔽其他按键

{

printf("无效字符!开始游戏吗

?(y?n)")

fflush(stdin)

control=getchar()

printf("%c",control)

}

while((control=='y')||(control=='y'))

{

system("cls")

srand((unsigned)time(null))

rand1=rand()%10+1

//printf("%d",rand1)

for(i=0i<20i++)

{

printf("请输入你猜的数:")

scanf("%d",&guess)

if(guess>rand1)printf("大啦!\n")

else

if(guess

:猜对了\a\n")//响铃\a

break

}

i++

}

i+=1

if(i==1)

{

score=100

scores[0]++

}

else

if(i>=2&&i<=3)

{

score=90

scores[1]++

}

else

if(i>=4&&i<=6)

{

score=80

scores[2]++

}

else

if(i>=7&&i<=10)

{

score=70

scores[3]++

}

else

if(i>=11&&i<=15)

{

score=60

scores[4]++

}

else

{

score=0

scores[5]++

}

printf("第%d次得分是:%d\n",j,score)

scores[7]+=score

j++

printf("是否继续(y?n)\n")

fflush(stdin)//请输入缓冲区

control=getchar()

while(control!='y'&&control!='y'&&control!='n'&&control!='n')

{

printf("无效字符!只能按y或y,n或n是否继续(y?n)\n")

fflush(stdin)

control=getchar()

printf("%c",control)

}

}

system("cls")//清屏

printf("+++++++++++++++-----------------以下是得分情况:---------------*************\n")

for(i=0i<5i++)

{

printf("+++++++++++++++------------------得%d分%d次:------------------*************\n",10*(10-i),scores[i])

}

printf("+++++++++++++++------------------得%d分%d次:------------------*************\n",

0,scores[5])

}


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/8152561.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-13
下一篇2023-04-13

发表评论

登录后才能评论

评论列表(0条)

    保存