其它考試重點
文件的複習方法:
把上課時候講的文件這一章的題目要做一遍,一定要做,基本上考試的都會在練習當中。
1)字符串的 strlen() 和 strcat() 和strcmp() 和strcpy()的使用方法一定要記住。他們的參數都是地址。其中strcat()和strcmp()有兩個參數。
2)strlen 和 sizeof的區別也是考試的重點;
3)define f(x)(x*x) 和 define f(x) x*x 之間的差別。一定要好好的注意這寫容易錯的地方,替換的時候有括號和沒有括號是很大的區別。
4)int *p;
p= (int *)malloc(4);
p= (int *)malloc(sizeof(int));以上兩個等價
當心填空題目,malloc的返回類型是 void *
6)函數的遞歸調用一定要記得有結束的條件,並且要會算簡單的遞歸題目。要會作遞歸的題目
7)結構體和共用體以及鏈表要掌握最簡單的。typedef考的很多,而且一定要知道如何引用結構體中的各個變量,鏈表中如何填加和刪除節點,以及何如構成一個簡單的鏈表,一定記住鏈表中的節點是有兩個域,一個放數值,一個放指針。
8)函數指針的用法(*f)()記住一個例子:
int add(int x, int y)
{....}
main()
{ int (*f)();
f=add;
}
賦值之後:合法的調用形式爲1、add(2,3);
2、f(2,3);
3、(*f)(2,3)
9)兩種重要的數組長度:
char a[]={‘a’,’b’,’c’}; 數組長度爲3,字符串長度不定。sizeof(a)爲3。
char a[5]={ ‘a’,’b’,’c’} 數組長度爲5,字符串長度3。sizeof(a)爲5。
10)scanf 和 gets的數據:
如果輸入的是 good good study!
那麼scanf(“%s”,a); 只會接收 good. 考點:不可以接收空格。
gets(a); 會接收 good good study! 考點:可以接收空格。
11)共用體的考查:
union TT
{ int a;
charch[2];}
考點一: sizeof (struct TT) = 4;
12)“文件包含”的考查點:
no1.c no2.c
|
|
這裏一個C語言程序是有兩個文件組成,分別是no1.c, no2.c。那麼no1.c中最開始有個#include”no2.c”他表示把第二個文件的內容給包含過來,那麼no1.c中調用add()函數的時候就可以了把數值傳到no2.c中的被調用函數add()了。
一個文件必須要有main函數。 這句話錯了。 例如:no2.c就沒有。
頭文件一定是以.h結束的。 這句話錯了。例如:no1.c中就是#include”no2.c”以.c結尾的。
13)指針迷惑的考點:
char ch[]=”iamhandsome”;
char *p=ch;
問你 *(p+2) 和 *p+2的結果是多少?
‘m’ ‘k’ 結果是這兩個,想不通的同學請作死的想!想通爲止!
14)數組中放數組一定要看懂:
int a[8]={1,2,3,4,4,3,2,2};
int b[5]={0};
b[a[3]]++ 這個寫法要看懂,結果要知道是什麼?b[4]++,本身是0,運行完後,b[4]爲1了。
15)字符串的賦值
C語言中沒有字符串變量,所以用數組和指針存放字符串:
1、char ch[10]={“abcdefgh”}; 對
2、char ch[10]=“abcdefgh”; 對
3、char ch[10]={‘a’,’b’,’c’,’d’,’e’,’f’,’g’,’h’}; 對
4、char *p=“abcdefgh”; 對
5、char *p; 對
p=“abcdefgh”;
6、char ch[10]; 錯了!數組名不可以賦值!
ch=“abcdefgh”;
7、char *p={“abcdefgh”}; 錯了!不能夠出現大括號!
16)字符串賦值的函數背誦:一定要背誦,當心筆試填空題目。
把s指針中的字符串複製到t指針中的方法
1、while( (*t=*s)!=null){s++;t++;} 完整版本
2、while( *t=*s ){s++;t++;} 簡單版本
3、while( *t++=*s++); 高級版本
17)typedef 是取別名,不會產生新的類型,他同時也是關鍵字
考點一:typedef int qq 那麼 int x 就可以寫成 qq x
考點二:typedef int *qq 那麼 int *x就可以寫成 qq x
18)static 考點是一定會考的!複習相關的習題。
static int x;默認值爲0。
int x:默認值爲不定值。
19)函數的遞歸調用一定會考!至少是2分。