c语言表示测试结束,C语言简单测试题
《C語言簡單測試題》由會員分享,可在線閱讀,更多相關《C語言簡單測試題(12頁珍藏版)》請在人人文庫網上搜索。
1、1)C語言中下列敘述正確的是________。A)不能使用dowhile語句構成的循環B)dowhile語句構成的循環,必須用break語句才能退出C)dowhile語句構成的循環,當while語句中的表達式值為非零時結束循環D)dowhile語句構成的循環,當while語句中的表達式值為零時結束循環答案:D評析:選項A是錯誤的,c語言支持d0while語句;選項B是錯誤的,dowhile構成的循環,當while語句中的表達式值為零時結束循環,而不是非零;選項c也是錯誤的。(2)以下選項中屬于C語言的數據類型是________。A)復數型 B)邏輯型 C)雙精度型 D)集合型答案:C評析:c語。
2、言的數據類型分為基本類型、構造類型、指針類型、空類型四大類。其中,基本類型分為整型、字符型、實型三類。實型又稱浮點型,包括單精度型和雙精度型兩種類型。(3)在C語言中,不正確的int類型的常數是________。A)32768 B)0 C)037 D)0xAF答案:A評析:c語言中int類型的常數的范圍是:-3276832767。c整常數可用三種形式表示:十進制整數,八進制整數,十六進制整數。選項A超出范圍,不正確。(4)以下程序輸出的結果是________。#include#includemain()int a=;printf(%d %u,a,a);system(pause);A)-1 -1。
3、 B) C)-1 D) l答案:C評析:printf函數中不同類型的數據用不同的格式字符,其中d是按整型數據的實際長度輸出十進制整數。變量a=以d格式輸出時溢出輸出值為該數的補碼值,即-1;u用來輸出unsigned型數據,無符號整型變量的數值范圍為0,所以變量a=以u格式輸出的值為。(5)下列描述中不正確的是________。A)字符型數組中可以存放字符串B)可以對字符型數組進行整體輸入、輸出C)可以對整型數組進行整體輸入、輸出D)不能在賦值語句中通過賦值運算符”=”對字符型數組進行整體賦值答案:C評析:c語言規定只能逐個引用數組元素而不能一次引用整個數組。字符數組的輸入、輸出可以將整個字符。
4、串一次輸入或輸出。所以,選項c的說法是不正確的。(6)以下程序的輸出結果是________。#include#includemain() int i,x33=9,8,7,6,5,4,3,2,1,*p=&x11;for(i=0;i#includemain()int a=1,2,3,4,5,6,7,8,9,10,11,12;int*p=a+5,*q=NULL;*q=*(p+5);printf(%d %dn,*p,*q);A)運行后報錯 B)6 6C)6 12 D)5 5答案:A評析:題目中沒有給q分配存儲單元,只是簡單的給它賦了一個值,所以程序的運行結果是6 ll NULL pointer ass。
5、ignment,也就是運行后報錯。(9)以下說法中正確的是_________。A)C語言程序總是從第一個函數開始執行B)在C語言程序中,要調用函數必須在main()函數中定義C)c語言程序總是從main()函數開始執行D)c語言程序中的main()函數必須放在程序的開始部分答案:C評析:c語言的程序是由主函數main()開始運行,由主函數來調用其他函數,函數必須是并列的,定義后使用,不能在一個函數中定義其他函數,main()函數不一定要放在程序的開始部分,故選c。(10)有如下程序#include#includefloat fun(int x,int y)return(x+y);main()i。
6、nt a=2,b=5,c=8;printf(%3.0fn,fun(int)fun(a+c,b),(a-c);system(pause);程序運行后的輸出結果為__________。A)編譯出錯 B)9 C)21 D)90答案:B評析:本題中先執行(int)fun(a+c,b)函數的調用,值為整型數值15;然后再執行fun(15,(a-e)函數調用,值為單精度實型數值9。輸出為30f,即有效數長度為3,沒有小數位數,所以最后結果為9。(11)能正確表示a和b同時為正或同時為負的邏輯表達式是_________。A)(a=0b=0)&(a=0&b=O)&(a0)&(a+b0答案:D評析:選項A中,表。
7、達式表示的是a,b為異號;選項B中,表達式表示的是0,因為沒有滿足條件的值;選項c中,表達式表示的是0,因為沒有滿足條件的值;選項D表示的是a和b為同號。(12)若己定義:int a9,*p=a;并在以后的語句中未改變p的值,不能表示al地址的表達式是__________。A)p+l B)a+l C)a+ D)+p答案:C評析:數組名是指針常量,是個固定的指針,不能對數組名賦予一個新的地址值,也不能使這個指針常量“移動”,指向數組的其它元素。(13)以下程序的輸出結果是__________。#include#includevoid main()int a=-1,b=1,k;if(+a#incl。
8、ude#define P1(x) printf(x)void main()char d=p;P1(d);P1(d);system(pause);A)pd B)d”d” C)”p”d D)”p”d”答案:A評析:帶參數的宏定義的一般形式為:#define宏名(參數表)字符串程序中的Pl(d);經宏置換后為printf(d);,所以輸出字符串p;程序中的Pl(“d”);經宏置換后printf(“d”)。(15)以下選項中,能定義s為合法的結構體變量的是__________。A) typedef struct abc double a;charb10;s;B) struct double a;cha。
9、r b10;s;C) struct ABC double a;char b10;ABC s;D) typedef ABC double a;char b10;ABC s;答案:B評析:定義一個結構體類型的變量,可采用三種方法:先定義結構體類型,再定義變量名;在定義類型的同時定義變量:直接定義結構類型變量,即不出現結構體名:選項B符合第三種定義方法。(16)請讀程序:#include#include#includemain()char*s1=AbCdEf, *s2=aB;s1+; s2+;printf(%dn,strcmp(s1,s2);system(pause);上面程序的輸出結果是_____。
10、___。A)正數 B)負數 C)零 D)不確定的值答案:A評析:strcmp(X1,X2)是串比較函數,本題中“s1”、“s2”分別表示這兩個串中第一個字符的地址,s1+和s2+是將指針指向串的第二個字符,則*sl為“bCdEf,*s2為“B”。在字符串比較中,大小的確定是各個字符串相應位置字符的ASCII碼值的大小決定的, sls2,返回值為正數。(17)請讀程序:#include#includemain()int a=5,b=7,c=9;printf(%d,%d,a,b,c);printf(%d,%d,%d,a,b);system(pause);上面程序的輸出結果是________。A)5。
11、,7,9,5,7 B)5,7,5,7 C)5,7,不定,7,9 D)5,7,5,7,不定答案:D評析:printf函數按格式控制符的個數輸出表列中對應的數據,若輸出表列的個數大于格式控制符個數,則輸出與格式控制符對應的輸出表列的數據,輸出表列中多的則省略;若格式控制符個數大于輸出表列的個數,則輸出與格式控制符對應的輸出表列的數據,格式控制符多的部分輸出的數據是隨機的。(18)請讀程序:#include#includeint func(int a,int b)int c;c=a+b;return c;main()int x=6,y=7,z=8,r;r=func(x-,y+,x+y),z-);pr。
12、intf(%dn,r);system(pause);上面程序的輸出結果是________。A)ll B)20 C)2l D)31答案:C評析:函數func()的作用是返回兩個形參的和,第一個形參是x、y分別自減和自增后的和,其中(x,y+,x+y)是一個逗號表達式,它的值應該等于x+y,所以整個表達式(x,y+,x+y)的值為13,而第二個形參的值為8(根據語法規則,應當先使用,后自增),所以func()的返回值為13+8=21。二、填空題(每空2分,共40分)(19)若運行時給變量x輸入12,則以下程序的運行結果是 【8】 ;#include#includemain()int x,y;sca。
13、nf(%d,&x);y=x12?x+10:x-12;printf(%dn,y);system(pause);答案:【8】0評析:三目運算符的形式為(表達式1)7(表達式2):(表達式3)。當(表達式1)值為真時,返回(表達式2)的值;為假時,返回(表達式3)的值。題中因為xt2為假,所以結果為x-12,即為0。(20)下面程序的功能:輸出100以內能被3整除且個位數為6的所有整數,請補充完整。#include#includemain() int i,j;for(i=0; 【12】;i+) j=i*10+6;if( 【13】)continue;printf(%dn,j);system(pause);答案:【12】it返回正值,當smax)max=2Q;return(max);答案:【18】j4【19】arrij【20】arrij評析:2*4矩陣實際上就是一個二維數組,結合本題應為arr24,所以在第一個循環中應當填寫“4”;第二個橫線處是要判斷當前的數組元素值是否大于max,所以應填寫arrij;第三個橫線處是要將當前大于max的數組元素的值賦給變量max,所以應當填寫“arriil。
總結
以上是生活随笔為你收集整理的c语言表示测试结束,C语言简单测试题的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Mac下的Jenkins安装
- 下一篇: Google 正式开源 Jib ,帮助