c基礎,看似簡單實則值得思考的問題
以下問題,自己有被難倒,值得思考:
1.你覺得計算機是如何工作的?請用文字來描述一下你頭腦中的計算機
2.你是如何理解變數的?變數為什麼有型別之分?
3.什麼是計算機語言?跟英語象嗎?你覺得你應該如何避免出現類似於的
英語學習中的“啞巴英語”?
4.對於 s=(int)f1%(int)f2; (int)先結合,%後執行。關係到運算子的優先順序。
5.定義一個整型變數c,將其初始化,判斷是否是數字。輸出Y或N,並將其輸出注意輸入使用scanf輸入
比如:
輸入 23 輸出為Y
輸入 D 輸出為N
6.輸入一個四個字母組成的單詞,將每個字元反向輸出。
<span style="font-size:14px;">#include <stdio.h> int main(void) { char ch[4]; scanf("%s",ch); printf("%c%c%c%c",ch[3],ch[2],ch[1],ch[0]); return 0; }</span>
7.從終端輸入一個浮點數字,將數字的值保留兩位小數輸出。
比如: 輸入:3.545644,輸出:3.54 ;涉及到處理四捨五入的問題。
<span style="font-size:14px;">#include "stdio.h"
void main()
{double a=3.5678; //a可換成其他小數
int b=(int)(a*100);
double c=b/100.0;
printf("%.2f",c);
}
結果為 3.56 (百分位後的小數全部捨去)</span>
8.定義整型變數x,y,初始化值為,將表示式(x++,y++)計算後的值賦給變數s,輸出s的值,變數值使用scanf輸入, 多個引數使用空格隔開
比如:
輸入 6 4 輸出為4
輸入 6 1 輸出為1
解析:逗號運算子,結果取最後一個表示式的值(y++);
能不能說“換行符就是輸入完一行內容後,游標轉到下一行的起始位置”,而“回車符就是輸入完一行後游標轉到該行 的起始位置,其並不換行”?如果是,那我們平時在鍵盤上用的 Enter和 Tab 又屬於什麼符呢???
解:換行(\n)就是游標下移一行卻不會移到這一行的開頭,回車(\r)就是回到當前行的開頭卻不向下移一行.
Enter鍵按下後會執行\n\r這樣就是我們看到的一般意義的回車了,所以你用16進位制檔案檢視方式看一個文字,就會 在行尾發現"\n\r"
Tab
10.隨機函式與偽隨機函式的區別
#include <time.h>#include <stdlib.h>
隨機數發生器函式:srand(time(0));每次編譯的結果數字都不一樣
偽隨機數函式:int n = rand()%100; 編譯一次之後,如若不再進行第二次編譯就直接執行,則每次取到的數字都是那一個
11.迴圈控制語句 continue break區別
break只能在switch語句或者迴圈中使用
continue 只能在迴圈中使用
1> continue:
1)(跳過本次)退出本次迴圈,進入到下一次迴圈;
2)只能在迴圈中使用;
2> break:
1) 退出本層迴圈,繼續執行其他程式;
2) 只能在迴圈和switch結構中使用.