Linux C 指標練習

2021-07-09 02:16:02 字數 1603 閱讀 9481

題目一

已知陣列內容如下 s = ,輸入乙個常數 m(1<=m<=9),使得該陣列內容順序後移n個位置。如n = 3時,陣列後移3個位置後的內容為

**如下:

#include int main()

; int b[9] = ;

int *p = a;

int *q = b;

int i,m,n;

printf("請輸入要移動的位數:\n");

scanf("%d",&m);

n = m;

for(i = 0; i < m; i++)

for (i = 0;i < 9 - m;i++)

*q++ = *p++;

printf("移動後陣列為:\n");

for(i = 0; i < 9;i++)

printf("%d ",b[i]);

printf("\n");

return 0;

}

執行結果如下:
fs@ubuntu:~/qiang/tmp$ ./zhizhen2

請輸入要移動的位數:

3移動後陣列為:

7 8 9 1 2 3 4 5 6

fs@ubuntu:~/qiang/tmp$ ./zhizhen2

請輸入要移動的位數:

7移動後陣列為:

3 4 5 6 7 8 9 1 2

fs@ubuntu:~/qiang/tmp$

題目二、

輸入乙個字串,內有數字和非數字字元,如a123x456  17960? 302tab5876 將其中連續的數字作為乙個整數,一次存放到整數型陣列a中,例如123放到 a[0],456放到 a[1]中,統計有多少個整數,並輸出這些數;

#include #include int main(int argc, const char *argv)

else

p++;//此時flag為1,沒有整數輸出,則看下乙個字元

} }//字串結束後,會遇到兩種情況,乙個是最後乙個字元為數字,另一種是非數字字元

if(flag == 0)//因為前面的程式中,整數的下乙個字元為非數字時,才會輸出整數,若最後乙個是數字的話,則無法輸出,所以這裡對最後乙個字元進行判斷

a[i] = sum;//將最後乙個整數輸出

else

i--;//此時最後乙個字元為非數字,沒有整數輸出,但i多加了一次,所以此處i--

count = i + 1;//整數個數為i+1

printf("共有%d個整數\n",count);

printf("這些整數是:\na=");

for(j = 0; j < i+1; j++)

printf("%d ",a[j]);

printf("\n");

return 0;

}

輸出結果為:fs@ubuntu:~/qiang/tmp$ ./zhizhen1

請輸入字串:

123xiao45 ?

Linux C 函式練習

學習函式主要學習的就是函式的宣告 定義和呼叫,下面請看兩個例子,來幫助我們學習函式 題目一 編寫乙個函式iswithin 它接受兩個引數,乙個是字元,另乙個是字串指標。其功能是如果字元在字串中。就返回1 真 如果字元不在字串中,就返回0 假 在乙個使用迴圈語句為這個函式提供舒服的完整程式中進行測試。...

Linux C 函式練習

學習函式主要學習的就是函式的宣告 定義和呼叫,下面請看兩個例子,來幫助我們學習函式 題目一 編寫乙個函式iswithin 它接受兩個引數,乙個是字元,另乙個是字串指標。其功能是如果字元在字串中。就返回1 真 如果字元不在字串中,就返回0 假 在乙個使用迴圈語句為這個函式提供舒服的完整程式中進行測試。...

Linux C 陣列和指標

陣列的基本概念 定義及使用方法 字串的深入理解及相關字串操作庫函式 指標的基本概念 定義與使用方法 指標型別的引數和返回值 指標與陣列的關係 指向指標的指標和指標陣列 陣列的基本概念 簡單來說就是具有相同資料型別的若干變數的有序集合,是一種復合型別。陣列count的元素的儲存空間是相鄰的,陣列成員可...