亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

文件的使用,讀取亂碼了,求大神解答??

文件的使用,讀取亂碼了,求大神解答??

C C#
才下眉頭卻上我心頭 2016-06-03 09:46:50
//題目要求輸入學生信息按總分數排序,存入文件中,再讀取輸出信息#include <stdio.h>#include<stdlib.h>typedef ?struct?{? ?int num ;? ?char name[10];? ?int score[15];? ?int sum;}STU;void summ(STU st[],int n){ ? int i,j;? ?for(i=0;i<n;i++)? ?{ ?int sum=0;? ? ? for(j=0;j<3;j++)? ? ? ?sum+=st[i].score[j];? ? ? ?st[i].sum=sum;? ?}}void stor(STU st[],int n){? ?int i,j,k;? ?STU t;? ?for(i=0;i<n-1;i++)? ? {? ? ? k=i;? ? ? for(j=i+1;j<n;j++)? ? ? { ?if(st[k].sum<st[j].sum)? ? ? ? ? k=j;? ? ? }? ? if(k!=i)? ? { t=st[k]; ?st[k]=st[i]; ?st[i]=t; ?} ?? ?}}int main(){ ? FILE *fp;? ? int i,j,n;? ? STU st[15];? ? scanf("%d",&n);? ? printf("輸入學生信息:\n");? ? fp=fopen("class_list.txt","at");? ? if(fp==NULL)? ? {? ? printf("不能打開此文件\n");? ? getchar(); exit(1);? }? for(i=0;i<n;i++)? ? {? ? ? ?scanf("%d %s",&st[i].num,st[i].name);? ? ? ? for(j=0;j<3;j++)? ? ? ? scanf("%d",&st[i].score[j]);? ? ? ? summ(st,n);? ? ? ? stor(st,n);? ? ? ? fwrite(&st[i],sizeof(STU),1,fp);? ? }? ? fclose(fp);? ? fp=fopen("class_list.txt","rt");? ? printf("該班成績順序為:\n");? ? i=0;? ? while(fread(&st[i],sizeof(STU),1,fp)!=NULL)? ? ? {? ? ? ? printf("%d %s %d\n",st[i].num,st[i].name,st[i].sum);? ? ? ? i++;? ? ? }? ? ? fclose(fp);}
查看完整描述

1 回答

?
Sweetink

TA貢獻6條經驗 獲得超0個贊

設置下編碼。

查看完整回答
反對 回復 2016-06-03
  • 1 回答
  • 0 關注
  • 1825 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號