Day24-陣列來表示字串
那今天我們要教的是用陣列來表示字串
那我來看一下範例吧!
範例1: 印出Jason
#include<stdio.h>
#include<stdlib.h>
int main(void){
char name[6];
name[0]='J';
name[1]='a';
name[2]='s';
name[3]='o';
name[4]='n';
name[5]='\0';
printf("%s",name);
system("pause");
}
印出:
範例2:
#include<stdio.h>
#include<stdlib.h>
int main(void){
char name[6];
name[0]='J';
name[1]='a';
name[2]='\0';
name[3]='s';
name[4]='o';
name[5]='n';
printf("%s",name);
system("pause");
}
印出:
解釋:
%s代表印出一個字串
字元’\0’指的是判斷字串是否結束
再來我們要講的是二維和多維陣列
範例: 使用二維陣列計算行列的值
若矩陣A=
|A|=a00a11a22+a10a21a02+a20a12a01-a02a11a20-a12a21a20-a22a10a01
#include<stdio.h>
#include<stdlib.h>
int main(void){
int line[3][3],i,j,ans=0;
for(i=0;i<3;i++)
for(j=0;j<3;j++){
printf("輸入行列式地%d行%d列的元素:",i+1,j+1);
scanf("%d",&line[i][j]);
}
for(i=0;i<3;i++){
ans=ans+line[0][i*line[1][(i+1)%3]]*line[2][(i+2)%3];
-line[0][(i+2)%3]*line[1][(i+1)%3]*line[2][i];
}
printf("Ans=%d\n",ans);
system("pause");
}
印出:
最後一個我們要講的是將陣列傳遞進函式
陣列也可以當作引數,傳遞進入函式中,但比較特別的地方是傳遞陣列時不會將陣列複製一份,而是將陣列第一個元素的記憶體位址傳遞進函式
範例:
#include<stdio.h>
#include<stdlib.h>
void func(int []);
int main(void){
int a[2]={3,6};
printf("a[0]=%d a[1]=%d\n",a[0],a[1]);
func(a);
printf("a[0]=%d a[1]=%d\n]",a[0],a[1]);
system("pause");
}
void func(int a[]){
int temp;
temp=a[0];
a[0]=a[1];
a[1]=temp;
}
印出:
解釋:
對於傳入陣列的函式,並不了解陣列也幾個元素,只知道陣列開頭的位址,因此傳遞陣列進入函式時,通常也會在傳遞一個整數常數,紀錄這個陣列具有多少元素
那今天就先到這拉
謝謝大家今天的閱讀