11 6 C語言學習

2021-09-29 09:20:56 字數 1688 閱讀 3293

逆序輸出

#include#define maxn 105

int a[maxn];

int main()

for(int i = n-1; i >= 1; i--)

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

printf("%d\n", a[0]);

return 0;

}

scanf("%d",&x)

其返回值為正確輸入的變數個數. 正確執行時會成功給x賦值,即賦值了乙個變數. 返回1.

當出錯的時候,比如輸入了字母,那麼就會返回0.

當遇到檔案結束標記eof的時候,會返回-1.

所以,這個**,不一定要ctrl +z 輸入任意非數字字元就可以終止迴圈了.

ctrl +z 就是windows上輸入eof標記的方法,會引起scanf返回-1

開燈問題。有n盞燈,編號為1~n。第1個人把所有燈開啟,第2個人按下所有編號為2

的倍數的開關(這些燈將被關掉),第3個人按下所有編號為3的倍數的開關(其中關掉的燈

將被開啟,開著的燈將被關閉),依此類推。一共有k個人,問最後有哪些燈開著?輸

入n和k,輸出開著的燈的編號。k≤n≤1000。

樣例輸入:

7 3樣例輸出:

1 5 6 7

#include#include#define maxn 1010

int a[maxn];

int main()

printf("\n");

return 0;

}

strlen(char *)

作用:檢測字串實際長度。

如:char s="1234567";

int a=strlen(s);//a=7

實際上strlen(char *)檢測的是'\0',strlen(char *)碰到'\0'就返回'\0'以前的字元數。

又如:char f="123456\01111";

int b=strlen(f);//b=6,因為遇到了'\0'

9

\12是轉義字元,表示八進位制10,就是換行符,換到下一行;

\後面跟八進位制數,所以後面的數最大是7;

\x後面跟十六進製制數,所以後面跟的字母最大是f或f。

可以這裡理解 \ddd 是八進位制的字元 為什麼128 不能連一起 因為八進位制是0-7

字元陣列補充 

isalpha是一種函式:判斷字元ch是否為英文本母,若為英文本母,返回非0(小寫字母為2,大寫字母為1)。若不是字母,返回0。在標準c中相當於使用「 isupper( ch ) || islower( ch ) 」做測試。

C語言學習

c語言學習 2013 3 26 1 編寫strcat s,t 函式,功能 將t指向的字串複製到s指向的字串的尾部。程式設計思路 1 通過while迴圈找到字串s的結束符。2 從找到的結束符開始將t複製到s,同時移動二者的指標。2 編寫函式strend s,t 如果字串t出現在字串s的尾部,該函式返回...

c語言學習

今天總結一些c 語言方面的知識 變數的概念 其值在作用域內可以改變的量稱為變數。乙個變數應該有乙個名字,並在記憶體中佔據一定儲存空間。區域性變數和全域性變數 區域性變數是在函式內作定義說明的,其作用域僅限函式內,離開該函式再使用這種變數是非法的。全域性變數也稱為外部變數,是在函式外部定義的變數,它不...

c語言學習

計算機工作基本原理 現代計算機可分為幾個部件 cpu 處理單元 擔負著絕大部分的計算工作。ram 隨機訪問儲存器 作為乙個工作區來儲存程式和檔案。硬碟 永久儲存器 即使在計算機關機時也能記下程式和檔案。以及各種外圍裝置 如鍵盤,滑鼠和監視器 用來提供人與計算器之間的通訊。cpu工作過程 從記憶體中獲...