首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> C語言 >> 關於C語言

C 語言一維陣列與字元陣列實戰:宣告、初始化、複製、排序、字串操作全攻略

     編輯:關於C語言

陣列基本操作

int a[4] = {9,8,7,6};          // 部分初始化,剩餘補 0
float b[6] = {2.5, 3.14};      // 前兩項賦值,其餘 0.0
char c[3] = "abc";             // 自動補 '\0',需 size≥4
char d[3] = {'a','b','c'};     // 無結束符,非字串

常見演算法範例

隨機生成 + 求和

int sum=0, a[20];
for(i=0;i<20;i++) { a[i]=rand()%41+30; sum+=a[i]; }

陣列複製

for(i=0;i<20;i++) b[i]=a[i];

對應元素相加存入第三陣列

c[i] = a[i] + b[i];

氣泡排序

for(i=0;ia[j+1]) swap(&a[j], &a[j+1]);

字串核心函數

函數用途注意
strlen字串長度(不含 \0)遇 \0 停止
strcpy(dst, src)複製字串dst 需足夠空間
strcat(dst, src)拼接字串dst 需足夠空間
strcmp(s1, s2)比較字串(ASCII 碼)返回 >0/=0/<0

字串反轉實作

char str[] = "hello";
int len = strlen(str);
for (int i=0, j=len-1; i

避坑提醒

  • 陣列**不做邊界檢查**,越界行為未定義
  • 陣列名是**常量指標**,不可賦值(arr = p 錯誤)
  • sizeof(arr) 得整個陣列大小,strlen(arr) 得字串長度
  • 字串常量在 .rodata,指標指向時不可修改內容
陣列宣告示意 字串初始化 排序流程圖 字串函數示意 記憶體佈局
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved