1. 程式人生 > 其它 >新生講評(函式與結構體)

新生講評(函式與結構體)

結構體和函式


函式

封裝概念:直接使用,方便使用者使用,在電腦中常見的比如shell,bash指令碼,還有許多標頭檔案庫檔案(iostream,cstdio......),都是用函式封裝的思想。

 1 #include<iostream>
 2 using namespace std;
 3 void shuchu()//返回的型別 + 函式的名稱 
 4 {
 5     //寫內容
 6     for(int i=1;i<=10;i++)
 7     {
 8         cout<<1;
 9     }
10     return;//和定義的型別相匹配 
11
} 12 int main(void) //主函式 13 { 14 shuchu();//定義一下,每呼叫一次輸出1 15 return 0;//0結束(EOF) 16 }

結構體

概念上和函式類似

 1 #include<bits/stdc++.h>
 2 using namespace std;
 3 struct cppuapa{//struct 結構體    + 名稱
 4     int per,num;
 5     string name;
 6 //    private    public    私人,共有 
 7     bool operator <(const
cppuapa &x)const{return per<x.per;} 8 //定義小於號 x(cppuapa) 9 }; 10 // char ch[10]; 11 int main() 12 { 13 cppuapa a;//int||float 14 cin>>a.per>>a.num>>a.name;//輸入 15 // scanf("s",ch); 16 cout<<a.per<<a.num<<a.name; 17 return 0; 18 }

例題

P5740 【深基7.例9】最厲害的學生 - 洛谷 | 電腦科學教育新生態 (luogu.com.cn)

 1 #include<bits/stdc++.h>
 2 using namespace std;
 3 struct per{//struct    結構體 + 名稱
 4     string name;
 5     int ch,math,eng;
 6     int dig;
 7 };
 8 //    char ch[10];
 9 int main()
10 {
11     per a[1010];
12     int n;    cin>>n;
13     for(int i=1;i<=n;i++)
14         cin>>a[i].name>>a[i].ch>>a[i].math>>a[i].eng;
15     for(int i=1;i<=n;++i)
16     {
17         a[i].dig=a[i].ch+a[i].math+a[i].eng;
18     }
19 //    for(int i=1;i<=n;i++)    cout<<a[i].dig<<"\n";
20     int p=0,maxn=0;
21     for(int i=1;i<=n;i++)
22         if(a[i].dig>maxn)
23         {
24             maxn=a[i].dig;
25             p=i;
26         }
27     cout<<a[p].name<<" "<<a[p].ch<<" "<<a[p].math<<" "<<a[p].eng;
28     return 0;
29 }

函式是一塊很重要的內容,在以後學習過程中應用的方面會非常的多!