2017年9月計(jì)算機(jī)二級考試《C語言》操作題臨考猜題卷(1),C語言是一門通用計(jì)算機(jī)編程語言,應(yīng)用廣泛,今天小編為大家?guī)聿僮黝}臨考猜題卷一,有需要的朋友快來下載吧!
C語言操作題臨考猜題卷預(yù)覽
數(shù)據(jù)描述及基本操作練習(xí)題
一、填空題
1、在C語言中的實(shí)型變量分為兩種類型,它們是float型和()型。
2、若有定義:charc='\010';則變量c中包含的字符個(gè)數(shù)為()
3、已知字母a的ASCII碼為十進(jìn)制數(shù)97,且設(shè)ch為整型變量,則表達(dá)式
ch='a'+'8'-'3'的值為()
4、在C語言中(以16位PC機(jī)為例),一個(gè)float型數(shù)據(jù)在內(nèi)存中所占的字節(jié)
數(shù)為()個(gè);一個(gè)int型數(shù)據(jù)在內(nèi)存中所占的字節(jié)數(shù)為()個(gè)。
5、在C語言中,表示邏輯“假”值用數(shù)字()表示。
6、C語言中的標(biāo)識符只能由字母、數(shù)字和()三種字符組成。
7、表達(dá)式8/4*(int)(2.5)/(int)(1.25*(3.7+2.3))的值為()
8、整型常量即整常數(shù)?捎萌N形式表示:十進(jìn)制整數(shù)、八進(jìn)制整數(shù)以()開
頭、十六進(jìn)制整數(shù)以()開關(guān)(注:請用小寫字母)
9、請將75寫成C語言八進(jìn)制和十六進(jìn)制表示(),()。
10、若有定義:intm=5,y=2;則計(jì)算表達(dá)式y(tǒng)+=y-=m*=y后的y值是()
11、若a是int型變量,則表達(dá)式(a=4*5,a*2),a+6的值為()。
12、若a,b和c均是int型變量,則計(jì)算表達(dá)式a=(b=4)+(c=2)后,a值為
(),b值為(),c值為()。
13、若a是int型變量,且a的初值為6,則計(jì)算表達(dá)式a+=a-=a*a后a的
值為()
14、若a是int型變量,則計(jì)算表達(dá)式a=25/3%3后a的值為()
15、若x和n均是int型變量,且x和n的初值均為5,則計(jì)算表達(dá)式
x+=n++后x的值為(),n的值為()
C語言標(biāo)準(zhǔn)
K&R C
起初,C語言沒有官方標(biāo)準(zhǔn)。1978年由美國電話電報(bào)公司(AT&T)貝爾實(shí)驗(yàn)室正式發(fā)表了C語言。布萊恩·柯林漢(Brian Kernighan) 和 丹尼斯·里奇(Dennis Ritchie) 出版了一本書,名叫《The C Programming Language》。這本書被 C語言開發(fā)者們稱為K&R,很多年來被當(dāng)作 C語言的非正式的標(biāo)準(zhǔn)說明。人們稱這個(gè)版本的 C語言為K&R C。
K&R C主要介紹了以下特色:
結(jié)構(gòu)體(struct)類型
長整數(shù)(long int)類型
無符號整數(shù)(unsigned int)類型
把運(yùn)算符=+和=-改為+=和-=。因?yàn)?+和=-會使得編譯器不知道使用者要處理i = -10還是i =- 10,使得處理上產(chǎn)生混淆。
即使在后來ANSI C標(biāo)準(zhǔn)被提出的許多年后,K&R C仍然是許多編譯器的最 準(zhǔn)要求,許多老舊的編譯器仍然運(yùn)行K&R C的標(biāo)準(zhǔn)。
ANSI C / C89標(biāo)準(zhǔn)
1970到80年代,C語言被廣泛應(yīng)用,從大型主機(jī)到小型微機(jī),也衍生了C語言的很多不同版本。
1983年,美國國家標(biāo)準(zhǔn)協(xié)會(ANSI)成立了一個(gè)委員會X3J11,來制定 C語言標(biāo)準(zhǔn)。
1989年,美國國家標(biāo)準(zhǔn)協(xié)會(ANSI)通過了C語言標(biāo)準(zhǔn),被稱為ANSI X3.159-1989 "Programming Language C"。因?yàn)檫@個(gè)標(biāo)準(zhǔn)是1989年通過的,所以一般簡稱C89標(biāo)準(zhǔn)。有些人也簡稱ANSI C,因?yàn)檫@個(gè)標(biāo)準(zhǔn)是美國國家標(biāo)準(zhǔn)協(xié)會(ANSI)發(fā)布的。
1990年,國際標(biāo)準(zhǔn)化組織(ISO)和國際電工委員會(IEC)把C89標(biāo)準(zhǔn)定為C語言的國際標(biāo)準(zhǔn),命名為ISO/IEC 9899:1990 - Programming languages -- C[5] 。因?yàn)榇藰?biāo)準(zhǔn)是在1990年發(fā)布的,所以有些人把簡稱作C90標(biāo)準(zhǔn)。不過大多數(shù)人依然稱之為C89標(biāo)準(zhǔn),因?yàn)榇藰?biāo)準(zhǔn)與ANSI C89標(biāo)準(zhǔn)完全等同。
1994年,國際標(biāo)準(zhǔn)化組織(ISO)和國際電工委員會(IEC)發(fā)布了C89標(biāo)準(zhǔn)修訂版,名叫ISO/IEC 9899:1990/Cor 1:1994 ,有些人簡稱為C94標(biāo)準(zhǔn)。
1995年,國際標(biāo)準(zhǔn)化組織(ISO)和國際電工委員會(IEC)再次發(fā)布了C89標(biāo)準(zhǔn)修訂版,名叫ISO/IEC 9899:1990/Amd 1:1995 - C Integrity,有些人簡稱為C95標(biāo)準(zhǔn)。
C99標(biāo)準(zhǔn)
1999年1月,國際標(biāo)準(zhǔn)化組織(ISO)和國際電工委員會(IEC)發(fā)布了C語言的新標(biāo)準(zhǔn),名叫ISO/IEC 9899:1999 - Programming languages -- C ,簡稱C99標(biāo)準(zhǔn)。這是C語言的第二個(gè)官方標(biāo)準(zhǔn)。
在C99中包括的特性有:
增加了對編譯器的限制,比如源程序每行要求至少支持到 4095 字節(jié),變量名函數(shù)名的要求支持到 63 字節(jié)(extern 要求支持到 31)。
增強(qiáng)了預(yù)處理功能。例如:
宏支持取可變參數(shù) #define Macro(...) __VA_ARGS__
使用宏的時(shí)候,允許省略參數(shù),被省略的參數(shù)會被擴(kuò)展成空串。
支持 // 開頭的單行注釋(這個(gè)特性實(shí)際上在C89的很多編譯器上已經(jīng)被支持了)
增加了新關(guān)鍵字 restrict, inline, _Complex, _Imaginary, _Bool
支持 long long, long double _Complex, float _Complex 等類型
支持不定長的數(shù)組,即數(shù)組長度可以在運(yùn)行時(shí)決定,比如利用變量作為數(shù)組長度。聲明時(shí)使用 int a[var] 的形式。不過考慮到效率和實(shí)現(xiàn),不定長數(shù)組不能用在全局,或 struct 與 union 里。
變量聲明不必放在語句塊的開頭,for 語句提倡寫成 for(int i=0;i<100;++i) 的形式,即i 只在 for 語句塊內(nèi)部有效。
允許采用(type_name){xx,xx,xx} 類似于 C++ 的構(gòu)造函數(shù)的形式構(gòu)造匿名的結(jié)構(gòu)體。
復(fù)合字面量:初始化結(jié)構(gòu)的時(shí)候允許對特定的元素賦值,形式為:
struct test{int a[3],b;} foo[] = { [0].a = {1}, [1].a = 2 };
struct test{int a, b, c, d;} foo = { .a = 1, .c = 3, 4, .b = 5 }; // 3,4 是對 .c,.d 賦值的
格式化字符串中,利用 \u 支持 unicode 的字符。
支持 16 進(jìn)制的浮點(diǎn)數(shù)的描述。
printf scanf 的格式化串增加了對 long long int 類型的支持。
浮點(diǎn)數(shù)的內(nèi)部數(shù)據(jù)描述支持了新標(biāo)準(zhǔn),可以使用 #pragma 編譯器指令指定。
除了已有的 __line__ __file__ 以外,增加了 __func__ 得到當(dāng)前的函數(shù)名。
允許編譯器化簡非常數(shù)的表達(dá)式。
修改了 /% 處理負(fù)數(shù)時(shí)的定義,這樣可以給出明確的結(jié)果,例如在C89中-22 / 7 = -3, -22% 7 = -1,也可以-22 / 7= -4, -22% 7 = 6。 而C99中明確為 -22 / 7 = -3, -22% 7 = -1,只有一種結(jié)果。
取消了函數(shù)返回類型默認(rèn)為 int 的規(guī)定。
允許 struct 定義的最后一個(gè)數(shù)組不指定其長度,寫做 [](flexible array member)。
const const int i 將被當(dāng)作 const int i 處理。
增加和修改了一些標(biāo)準(zhǔn)頭文件,比如定義 bool 的 <stdbool.h> ,定義一些標(biāo)準(zhǔn)長度的 int 的 <inttypes.h> ,定義復(fù)數(shù)的 <complex.h> ,定義寬字符的 <wctype.h> ,類似于泛型的數(shù)學(xué)函數(shù) <tgmath.h>, 浮點(diǎn)數(shù)相關(guān)的 <fenv.h>。 在<stdarg.h> 增加了 va_copy 用于復(fù)制 ... 的參數(shù)。里增加了 struct tmx ,對 struct tm 做了擴(kuò)展。
輸入輸出對寬字符以及長整數(shù)等做了相應(yīng)的支持。
GCC和其它一些商業(yè)編譯器支持C99的大部分特性。
C11標(biāo)準(zhǔn)
2011年12月8日,國際標(biāo)準(zhǔn)化組織(ISO)和國際電工委員會(IEC)再次發(fā)布了C語言的新標(biāo)準(zhǔn),名叫ISO/IEC 9899:2011 - Information technology -- Programming languages -- C [9] ,簡稱C11標(biāo)準(zhǔn),原名C1X。這是C語言的第三個(gè)官方標(biāo)準(zhǔn),也是C語言的最新標(biāo)準(zhǔn)。
新的標(biāo)準(zhǔn)提高了對C++的兼容性,并增加了一些新的特性。這些新特性包括:
對齊處理(Alignment)的標(biāo)準(zhǔn)化(包括_Alignas標(biāo)志符,alignof運(yùn)算符, aligned_alloc函數(shù)以及<stdalign.h>頭文件。
_Noreturn 函數(shù)標(biāo)記,類似于 gcc 的 __attribute__((noreturn))。
_Generic 關(guān)鍵字。
多線程(Multithreading)支持,包括:
_Thread_local存儲類型標(biāo)識符,<threads.h>頭文件,里面包含了線程的創(chuàng)建和管理函數(shù)。
_Atomic類型修飾符和<stdatomic.h>頭文件。
增強(qiáng)的Unicode的支持;贑 Unicode技術(shù)報(bào)告ISO/IEC TR 19769:2004,增強(qiáng)了對Unicode的支持。包括為UTF-16/UTF-32編碼增加了char16_t和char32_t數(shù)據(jù)類型,提供了包含unicode字符串轉(zhuǎn)換函數(shù)的頭文件<uchar.h>.
刪除了 gets() 函數(shù),使用一個(gè)新的更安全的函數(shù)gets_s()替代。
增加了邊界檢查函數(shù)接口,定義了新的安全的函數(shù),例如 fopen_s(),strcat_s() 等等。
增加了更多浮點(diǎn)處理宏。
匿名結(jié)構(gòu)體/聯(lián)合體支持。這個(gè)在gcc早已存在,C11將其引入標(biāo)準(zhǔn)。
靜態(tài)斷言(static assertions),_Static_assert(),在解釋 #if 和 #error 之后被處理。
新的 fopen() 模式,(“…x”)。類似 POSIX 中的 O_CREAT|O_EXCL,在文件鎖中比較常用。
新增 quick_exit() 函數(shù)作為第三種終止程序的方式。當(dāng) exit()失敗時(shí)可以做最少的清理工作。
- PC官方版
- 安卓官方手機(jī)版
- IOS官方手機(jī)版