#include<iostream>
#include<cstring>
#include<iomanip>
#include<stdlib.h>
#include<stdio.h>
#define max 100
using namespace std;
char* pm[10]; //論文等級屬性
int papergrade[10]={0}; //論文學分屬性
int papernum[10]={0}; //記錄每個論文的等級數目
char* cm[100]; //比賽名稱
char* cgrade[100]; //記錄獲獎等級
int comnum[10]={0}; //記錄每個比賽的獲獎人數
int comgrade[100]={0}; //記錄每個比賽獲得的學分
void attribute() //屬性輸入
{
int n=3,j,k=0,i=0;
char c;
cout<<"請選擇要修改的科技成果屬性(論文 P,競賽 C)";
cin>>c; //屬性名稱
if(c=='P')
{
cout<<"請輸入論文等級數目:";
cin>>k; papergrade[0]=k;
cout<<"請輸入論文等級和相應的學分值:";
for(int j=1;j<=k;j++)
{
cin>>pm[j]>>papergrade[j];
}
}
if(c=='C')
{
cout<<"請輸入競賽種類數目:";
cin>>i; comgrade[0]=i;
cout<<"請輸入競賽獲獎等級和相應的學分值:";
for(int j=1;j<=i;j++)
{
cin>>cgrade[j]>>comgrade[j];
}
}
}
void show()
{
cout<<"論 文 等 級 學 分"<<endl;
for(int i=1;i<=papergrade[0];i++)
{
cout<<pm[i]<<papergrade[i]<<endl;
}
cout<<"競 賽 名 稱 學 分"<<endl;
for(int j=1;j<=comgrade[0];j++)
{
cout<<cm[j]<<comgrade[j]<<endl;
}
}
void initpaperarray()
{
int num=0;
FILE *fp = fopen("paperarry.txt","rb");
if(!fp)
{
cout<<"無法打開檔案"<<endl;
}
fscanf(fp,"%d",&num);
papergrade[0]=num;
for(int i=1;!feof(fp);i++)
{
fscanf(fp,"%s %d",pm[i],&papergrade[i]);
}
fclose(fp);
}
void initcomarray()
{
FILE *fp = fopen("comarry.txt","rb");
if(!fp)
{
cout<<"無法打開檔案"<<endl;
}
fscanf(fp,"%d",&comgrade[0]);
for(int i=1;i<=comgrade[0];i++)
{
fscanf(fp,"%s %d",cgrade[i],&comgrade[i]);
}
fclose(fp);
}
void savepaperarry()
{
fprintf(stdout,"%d",papergrade[0]);
for(int i=1;i<=papergrade[0];i++)
{
fprintf(stdout,"%s %d",pm[i],papergrade[i]);
}
}
void savecomarray()
{
fprintf(stdout,"%d",comgrade[0]);
for(int i=1;i<=comgrade[0];i++)
{
fprintf(stdout,"%s %d",cgrade[i],comgrade[i]);
}
}
int main()
{
initcomarray();
initpaperarray();
attribute();
show();
savecomarray();
savepaperarry();
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/263052.html
標籤:C++ 語言
