一維數(shù)組
#import <Foundation/Foundation.h>
int main(int argc, const char * argv[])
{
@autoreleasepool {
int a=5;
//在內(nèi)存中開(kāi)辟了一塊4字節(jié)空間。
int arr[5];
//在內(nèi)存中開(kāi)辟了連續(xù)的5個(gè)空間二跋,每一個(gè)空間是4字節(jié)低千,數(shù)組的名稱是arr溜哮。
//格式:數(shù)據(jù)類(lèi)型 數(shù)組名[長(zhǎng)度]
//長(zhǎng)度:必須是常量表達(dá)式
//給數(shù)組如何賦值拜姿?
//1.初始化(賦初值)
//1>全部賦值
int arr1[5]={1,2,3,4,5};
//數(shù)組不能一次性輸出
//引用數(shù)組元素:下標(biāo) 格式:數(shù)組名[下標(biāo)] 下標(biāo):可以是常量、變量状蜗、表達(dá)式
// printf("%d\n",arr1);
// 2>部分賦值
int arr2[5]={1,2,3};
printf("%d\n%d\n",arr2[0],arr2[4]);
// 3>特殊賦值
int arr3[]={1,2,3,4,5};
// 4>初始化為空
int arr4[5]={};
// 2.先定義嗓奢,后賦值
// arr[0]=1;
// arr[1]=2;
// arr[2]=3;
// arr[3]=4;
// arr[4]=5;
//利用循環(huán)賦值——遍歷數(shù)組
// int arr5[5];
// printf("請(qǐng)輸入5個(gè)整數(shù):");
// for (int i=0; i<5; i++) {
// scanf("%d",&arr5[i]);
// }
// printf("數(shù)組中5個(gè)元素分別為:\n");
// for (int i=0; i<5; i++) {
// printf("%d\n",arr5[i]);
// }
//數(shù)組越界
// int arr6[5];
// arr6[5]=10;
// printf("%d\n",arr1[0]);
//計(jì)算占多少個(gè)字節(jié);
// printf("%lu\n%lu\n",sizeof(arr),sizeof(int [5])); // sizeof(arr):數(shù)組名 sizeof(int[5])數(shù)組元素燎窘;
}
return 0;
}
import <Foundation/Foundation.h>
int main(int argc, const char * argv[])
{
@autoreleasepool {
// 1》對(duì)一個(gè)長(zhǎng)度為5的整型數(shù)組賦初值摹闽,并輸出數(shù)組元素。
// int arr[5] = {1,2,3,4,5};
// printf("數(shù)組元素為:\n");
// for (int i=0; i<5; i++) {
// printf("%d ",arr[i]);
// }
// 2》對(duì)一個(gè)長(zhǎng)度為5的浮點(diǎn)型數(shù)組賦值褐健,并逆序輸出數(shù)組元素付鹿。
// float arr[5];
// printf("請(qǐng)輸入5個(gè)小數(shù):");
// for (int i=0; i<5; i++) {
// scanf("%f",&arr[i]);
// }
//
// printf("數(shù)組元素為:");
// for (int i=4; i>=0; i--) {
// printf("%.2f ",arr[i]);
// }
// 3》求5個(gè)同學(xué)的總成績(jī)、平均成績(jī)蚜迅、最高成績(jī)舵匾、最低成績(jī)。
// float score[5],sum=0,avg,max,min;
// printf("請(qǐng)輸入5個(gè)成績(jī):\n");
// //循環(huán)遍歷數(shù)組
// for (int i=0; i<5; i++) {
// printf("請(qǐng)輸入第%d個(gè)成績(jī):",i+1);
// scanf("%f",&score[i]);//輸入成績(jī)
// sum+=score[i]; //求出總成績(jī)
// }
// avg=sum/5; //求出平均成績(jī)
// max=min=score[0]; //將第一個(gè)成績(jī)賦值給最大最小的變量慢叨、
// //遍歷數(shù)組
// for (int i=1; i<5; i++) {
// //比較求出最大值
// if (max<score[i]) {
// max=score[i];
// }
// //比較求出最小值
// if (min>score[i]) {
// min=score[i];
// }
// }
// //輸出最終結(jié)果
// printf("總成績(jī)?yōu)椋?.2f\n平均成績(jī)?yōu)椋?.2f\n最高成績(jī)?yōu)椋?.2f\n最低成績(jī)?yōu)椋?.2f\n",sum,avg,max,min);
// 4》輸入10個(gè)數(shù)纽匙,打印出所有低于平均數(shù)的數(shù)。
// int arr[10],sum=0;
// float avg;
// printf("請(qǐng)輸入10個(gè)整數(shù):");
// for (int i=0; i<10; i++) {
// scanf("%d",&arr[i]);
// sum+=arr[i];
// }
// avg = sum/10.0;
// for (int i=0; i<10; i++) {
// if (arr[i]<avg) {
// printf("%d ",arr[i]);
// }
// }
// 5》對(duì)一個(gè)長(zhǎng)度為5的整型數(shù)組賦值拍谐,并將數(shù)組中的元素逆序
int arr[5];
printf("請(qǐng)輸入5個(gè)整數(shù):");
for (int i=0; i<5; i++) {
scanf("%d",&arr[i]);
}
//遍歷數(shù)組:只遍歷一半烛缔,因?yàn)閿?shù)組元素前后都要交換馏段。
for (int i=0; i<5/2; i++) {
//交換前后元素
int t = arr[i];
arr[i]=arr[5-1-i]; // 5 2 3 4 1
arr[5-1-i]=t;
}
printf("數(shù)組元素如下:");
for (int i=0; i<5; i++) {
printf("%d ",arr[i]);
}
}
return 0;
}