#include<iostream> #include<cstdio> using namespace std; int main(){ int y,m,d,ans=0,flag=0; printf("請輸入年月日,並用逗號隔開\n"); scanf("%d,%d,%d",&y,&m,&d); if((y%400==0)||((y%100!=0)&&(y%4==0)))flag=1;//判斷是否爲閏年 m--; switch(m){ case 11:ans+=30; case 10:ans+=31; case 9:ans+=30; case 8:ans+=31; case 7:ans+=31; case 6:ans+=30; case 5:ans+=31; case 4:ans+=30; case 3:ans+=31; case 2:ans=ans+flag+28; case 1:ans+=31; } ans+=d; printf("這一天是這一年的第%d天\n",ans); return 0; }
/* 題目:選擇排序 做者:thmyl 日期:2019-10-17 */ #include<iostream> #include<cstdio> #define maxn 1010 using namespace std; int n,a[maxn]; int main(){ printf("請輸入數字的個數:"); scanf("%d",&n); printf("請輸入須要排序的數字:\n"); for(int i=1;i<=n;i++)scanf("%d",&a[i]); for(int i=1;i<=n;i++){ for(int j=i+1;j<=n;j++){ if(a[i]>a[j])swap(a[i],a[j]); } } printf("排好序後的數列爲:\n"); for(int i=1;i<=n;i++)printf("%d ",a[i]); puts(""); return 0; }
/* 題目:冒泡排序 做者:thmyl 日期:2019-10-17 */ #include<iostream> #include<cstdio> #define maxn 1010 using namespace std; int n,a[maxn]; int main(){ printf("請輸入數字的個數:"); scanf("%d",&n); printf("請輸入須要排序的數字:\n"); for(int i=1;i<=n;i++)scanf("%d",&a[i]); for(int i=1;i<=n;i++) for(int j=n;j>i;j--)//從後向前浮動 if(a[j]<a[j-1])swap(a[j],a[j-1]); printf("排好序後的數列爲:\n"); for(int i=1;i<=n;i++)printf("%d ",a[i]); puts(""); return 0; }
/* ìa??:2???±??-DòáDμ??3Dò£?ê?3???óDDòêyáD ×÷??:thmyl è??ú:2019-10-18 */ #include<iostream> #include<cstdio> #define maxn 1010 using namespace std; int a[maxn],n,mn,mark; int *p[maxn]; bool vis[maxn]; int main(){ printf("請輸入數字的個數:"); scanf("%d",&n); printf("請輸入須要排序的數字:\n"); for(int i=1;i<=n;i++)scanf("%d",&a[i]); for(int i=1;i<=n;i++){//?°?òμúi′óμ?êy mn=0x7fffffff; for(int j=1;j<=n;j++) if(a[j]<mn&&!vis[j]) mn=a[j],mark=j; p[i]=&a[mark]; vis[mark]=1; } printf("排好序後的數列爲:\n"); for(int i=1;i<=n;i++)printf("%d ",*p[i]); puts(""); return 0; }
int *a[10]:定義了10個指向整型元素的指針ios
int (*a)[10]:定義了一個指針,指向一個有10個整型元素的數組數組
#include<iostream> #include<cstdio> using namespace std; int b[10][10]; int (*a)[10]; int main(){ int cnt=0; for(int i=0;i<10;i++) for(int j=0;j<10;j++){ b[i][j]=cnt; cnt++; } a=b; for(int i=0;i<10;i++,a++){ for(int *p=*a,j=0;j<10;j++,p++){ printf("%d ",*p); } puts(""); } return 0; }
(2019.10.24)ide
#include<iostream> #include<cstdio> using namespace std; const int N=10; void input(int *a,int N){//事實上沒有定義數組,而是傳遞了數組的地址,設a[]或*a均可以,用法相同 for(int i=0;i<N;i++)scanf("%d",&a[i]); } void index(int *a,int N){ for(int i=0;i<N;i++) for(int j=i+1;j<N;j++) if(a[i]>a[j])swap(a[i],a[j]); } void output(int *a,int N){ for(int i=0;i<N;i++)printf("%d ",a[i]); } int main(){ freopen("Cola.txt","r",stdin); int a[N]; input(a,N); index(a,N); output(a,N); return 0; }
#include<iostream> #include<cstdio> using namespace std; const int N=10; int main(){ int a[N]; void input(int *a,int N); void index(int *a,int N); void output(int *a,int N); input(a,N); index(a,N); output(a,N); return 0; } void input(int *a,int N){//事實上沒有定義數組,而是傳遞了數組的地址,設a[]或*a均可以,用法相同 for(int i=0;i<N;i++)scanf("%d",&a[i]); } void index(int *a,int N){ for(int i=0;i<N;i++) for(int j=i+1;j<N;j++) if(a[i]>a[j])swap(a[i],a[j]); } void output(int *a,int N){ for(int i=0;i<N;i++)printf("%d ",a[i]); }
#include<iostream> #include<cstdio> #define N 10 using namespace std; int main(){ int a,b,c; scanf("%d%d",&a,&b); #ifdef N c=a+b; #else c=a-b; #endif printf("%d",c); return 0; }
//這裏的if後面的條件必須宏定義 #include<iostream> #include<cstdio> using namespace std; int a,b; int main(){ scanf("%d",&a); #if(a>0)//Error b=a; #else b=-a; #endif printf("%d\n",b); return 0; }
//不要輸出一個一個的數,要先組成一個數而後再輸出。 //聽說某sp考試能檢測你的輸出方式,嗯哼哼? #include<iostream> #include<cstdio> using namespace std; int main(){ int i=0,n,a[5],sum=0; printf("Please input a number in 5 single numbers:\n"); scanf("%d",&n); while(n){ a[i]=n%10; n/=10; i++; } for(int i=0;i<5;i++) for(int j=i+1;j<5;j++) if(a[j]>a[i])swap(a[i],a[j]); printf("The largest number is:"); for(int i=0;i<5;i++){ sum=sum*10+a[i]; } printf("%d\n",sum); printf("The smallest number is:"); i=4; while(a[i]==0)i--; swap(a[4],a[i]); sum=0; for(int i=4;i>=0;i--){ sum=sum*10+a[i]; } printf("%d\n",sum); return 0; }
(2019.10.25)函數
標準輸入輸出spa
/*scanf*/ %f float %lf double %Lf long double /*printf*/ %f float/double %Lf long double