久久影视这里只有精品国产,激情五月婷婷在线,久久免费视频二区,最新99国产小视频

        • 回答數(shù)

          3

        • 瀏覽數(shù)

          112

        我是新悅
        首頁(yè) > 考試培訓(xùn) > 計(jì)算機(jī)二級(jí)考試真題及答案

        3個(gè)回答 默認(rèn)排序
        • 默認(rèn)排序
        • 按時(shí)間排序

        酸奶娃兒

        已采納

        2010年春浙江省高等學(xué)校 計(jì)算機(jī)等級(jí)考試試卷 ( 二級(jí) C ) 一、程序閱讀與填空(24小題,每小題3分,共72分) 1. 閱讀下列程序說(shuō)明和程序,在每小題提供的若干可選答案中,挑選一個(gè)正確答案。 【程序說(shuō)明】 輸入一個(gè)整數(shù),求它的各位數(shù)字之和及位數(shù)。例如,17的各位數(shù)字之和是8,位數(shù)是2。 運(yùn)行示例: Enter an integer:-153 sum = 8, count = 3 【程序】 #include <> main() { int count = 0, in, sum = 0; printf("Enter an integer:"); scanf("%d", &in); if( (1) ) in = -in; do{ sum = sum + (2) ; (3) ; count++; }while( (4) ); printf("sum = %d, count = %d\n", sum, count); } 【供選擇的答案】 (1) A、in == 0 B、in > 0 C、in != 0 D、in < 0 (2) A、in /10 B、in mod 10 C、in % 10 D、in (3) A、in = in % 10 B、in /10 C、in = in /10 D、in % 10 (4) A、in % 10 != 0 B、in != 0 C、!in D、in / 10 != 0 2. 閱讀下列程序說(shuō)明和程序,在每小題提供的若干可選答案中,挑選一個(gè)正確答案。 【程序說(shuō)明】 輸出50到70之間的所有素?cái)?shù)。要求定義和調(diào)用函數(shù)isprime(m)判斷m是否為素?cái)?shù),若m為素?cái)?shù)則返回1,否則返回0。素?cái)?shù)就是只能被1和自身整除的正整數(shù),1不是素?cái)?shù),2是素?cái)?shù)。 運(yùn)行示例: 53 59 61 67 【程序】 #include <> #include <> main() { int i; int isprime(int m); for(i = 50; i <= 70; i++) if( (5) ) printf("%d ", i); } int isprime(int m) { int i, k; (6) k = (int)sqrt((double)m); for(i = 2; i <= k; i++) if(m % i == 0) (7) ; (8) ; } 【供選擇的答案】 (5) A、isprime (m) != 0 B、isprime (i) != 0 C、isprime (m) == 0 D、isprime (i) == 0 (6) A、if(m != 1) return 1; B、if(m == 1) return 0; C、; D、if(m == 1) return 1; (7) A、return 0 B、return 1 C、return i <= k D、return (8) A、return 1 B、return 0 C、return D、return i <= k 3 . 閱讀下列程序說(shuō)明和程序,在每小題提供的若干可選答案中,挑選一個(gè)正確答案。 【程序說(shuō)明】 輸入6個(gè)整數(shù),找出其中最小的數(shù),將它和最后一個(gè)數(shù)交換,然后輸出這6個(gè)數(shù)。要求定義和調(diào)用函數(shù)swap(x, y),該函數(shù)交換指針x和y所指向單元的內(nèi)容。 運(yùn)行示例: Enter 6 integers: 6 1 8 2 10 97 After swaped: 6 97 8 2 10 1 【程序】 void swap(int *x, int *y) { int t; (9) ; } main() { int i, index, a[10]; for(i = 0; i < 6; i++) scanf("%d", &a[i]); (10) ; for(i = 1; i < 6; i++) if(a[index] > a[i]) (11) ; (12) ; printf("After swaped:"); for(i = 0; i < 6; i++) printf("%d ", a[i]); printf("\n"); } 【供選擇的答案】 (9) A、t = *x, *x = *y, *y = t B、t = x, x = y, y = t C、*t = *x, *x = *y, *y = *t D、&t = x, x = y, y = &t (10)A、index = 0 B、index = 5 C、index = index D、index = 1 (11)A、a[index] = a[i] B、i = index C、a[i] = a[index] D、index = i (12)A、swap(a[index], a[5]) B、swap(*a[index], *a[5]) C、swap(a[*index], a[*5]) D、swap(&a[index], &a[5]) 4. 閱讀下列程序并回答問題,在每小題提供的若干可選答案中,挑選一個(gè)正確答案。 【程序】 #include <> #define T(c) (((c) >= '0') && ((c) <= '9') ? (c) - '0' : -1) void f1(char ch) { switch(ch){ case '0': printf("0"); case '1': printf("1"); case '2': printf("2");break; case '3': printf("3"); default: printf("9"); } printf("\n"); } double f2() { return (double)(5/2); } double f3(int n) { if(n == 1) return ; else return + (n-1); } main() { printf("%d %d\n", T('7'), T('a')); f1('1'); printf("%.1f\n", f2()); printf("%.3f\n", f3(4)); } 【問題】 (13) 程序運(yùn)行時(shí),第1行輸出 (13) 。 A、7 -1 B、-1 7 C、7 a D、-1 -1 (14) 程序運(yùn)行時(shí),第2行輸出 (14) 。 A、1239 B、12 C、1 D、9 (15) 程序運(yùn)行時(shí),第3行輸出 (15) 。 A、 B、2 C、 D、3 (16) 程序運(yùn)行時(shí),第4行輸出 (16) 。 A、 B、 C、 D、 5. 閱讀下列程序并回答問題,在每小題提供的若干可選答案中,挑選一個(gè)正確答案。 【程序】 程序1 #include <> main() { int i, j, t, a[3][4] = {1,2,3,4,5,6,7,8,9,10,11,12}; for(i = 0; i < 3; i++) for(j = 0; j <= i/2; j++){ t = a[i][j], a[i][j] = a[i][3-j], a[i][3-j] = t; } printf("%d\n", a[0][1]); printf("%d\n", a[2][2]); } 程序2 #include <> main() { char str[10] = "27"; int i, number = 0; for(i = 0; str[i] != '\0'; i++) if(str[i] >= '0' && str[i] <= '7') number = number * 8 + str[i] - '0'; printf("%d\n", number); for(i = 0; str[i] != '\0'; i++) if(str[i] >= '0' && str[i] <= '5') number = number * 6 + str[i] -'0'; printf("%d\n", number); } 【問題】 (17) 程序1運(yùn)行時(shí),第1行輸出 (17) 。 A、3 B、4 C、1 D、2 (18) 程序1運(yùn)行時(shí),第2行輸出 (18) 。 A、12 B、11 C、10 D、9 (19) 程序2運(yùn)行時(shí),第1行輸出 (19) 。 A、2 B、27 C、23 D、16 (20) 程序2運(yùn)行時(shí),第2行輸出 (20) 。 A、19 B、140 C、147 D、2 6 閱讀下列程序并回答問題,在每小題提供的若干可選答案中,挑選一個(gè)正確答案。 【程序】 #include <> main() { int i, j; char ch, *p1, *p2, *s[4]={"four","hello","peak","apple"}; for(i = 0; i < 4; i++){ p1 = p2 = s[i]; ch = *(p1 + i); while(*p1 != '\0'){ if(*p1 != ch){ *p2 = *p1; p2++; } p1++; } *p2 = '\0'; } for(i = 0; i < 4; i++) printf("%s\n", s[i]); } 【問題】 (21) 程序運(yùn)行時(shí),第1行輸出 (21) 。 A、our B、four C、fur D、fou (22) 程序運(yùn)行時(shí),第2行輸出 (22) 。 A、ello B、hllo C、heo D、hell (23) 程序運(yùn)行時(shí),第3行輸出 (23) 。 A、peak B、eak C、pek D、pak (24) 程序運(yùn)行時(shí),第4行輸出 (24) 。 A、pple B、apple C、ale D、appe 二、程序編寫 (每小題14分,共28分) 1.編寫程序,輸入100個(gè)整數(shù),將他們存入數(shù)組a,求數(shù)組a中所有奇數(shù)之和。 2.按下面要求編寫程序: (1)定義函數(shù)total(n)計(jì)算 ,函數(shù)返回值類型是int。 (2)定義函數(shù)main(),輸入正整數(shù)n,計(jì)算并輸出下列算式的值。要求調(diào)用函數(shù)total(n)計(jì)算 。 計(jì)算機(jī)等級(jí)考試參考答案(二級(jí) C ) 一、程序閱讀與填空 (24小題,每小題3分,共72分) ⑴ D ⑵ C ⑶ C ⑷ B ⑸ B ⑹ B ⑺ A ⑻ A ⑼ A ⑽ A ⑾ D ⑿ D ⒀ A ⒁ B ⒂ C ⒃ D ⒄ D ⒅ C ⒆ C ⒇ B (21)A (22)B (23)C (24)D 二、程序編寫 (每小題14分,共28分) 1. #include <> void main() { int a[100], i, s=0; for(i = 0; i < 100; i++) { scanf("%d", &a[i]); if(a[i] % 2 == 1) s = s + a[i]; } printf("%d\n", s); } 2. #include <> int total(int n) { int i, s = 0; for(i = 1; i <= n; i++) s = s + i; return s; } void main() { int i, n; float s = 0; scanf("%d", &n); for(i = 1; i <= n; i++) s = s + / total(i); printf("%f\n", s); }

        計(jì)算機(jī)二級(jí)考試真題及答案

        221 評(píng)論(15)

        一點(diǎn)流殤

        2010年9月全國(guó)計(jì)算機(jī)等級(jí)考試二級(jí)C語(yǔ)言筆試試題及答案一、選擇題((1)-(10)每題2分,(11)-(50)每題1分.共60分))(1)下列選項(xiàng)中不屬于軟件生命周期開發(fā)階段任務(wù)的是 A)詳細(xì)設(shè)計(jì) B)概要設(shè)計(jì) C)軟件維護(hù) D)軟件測(cè)試(2)樹是結(jié)點(diǎn)的集合,它的根結(jié)點(diǎn)數(shù)目是A)有且只有1 B)1或多于1 C)0或1 D)至少2(3)在面向?qū)ο蠓椒ㄖ?,?shí)現(xiàn)信息隱蔽是依靠A)對(duì)象的繼承 B)對(duì)象的多態(tài) C)對(duì)象的封裝 D)對(duì)象的分類(4)程序設(shè)計(jì)語(yǔ)言的基本成分是數(shù)據(jù)成分、運(yùn)算成分、控制成分和 A)語(yǔ)句成分 B)變量成分 C)對(duì)象成分 D)傳輸成分(5)冒泡排序在最壞情況下的比較次數(shù)是 A)n/2 B)nlog2n C)n(n-1)/2 D)n(n+1)/2(6)下列敘述中,不屬于軟件需求規(guī)格說(shuō)明書的作用的是A)作為確認(rèn)測(cè)試和驗(yàn)收的依據(jù)B)反映出用戶問題的結(jié)構(gòu),可以作為軟件開發(fā)工作的基礎(chǔ)和依據(jù) C)便于用戶、開發(fā)人員進(jìn)行理解和交流D)便于開發(fā)人員進(jìn)行需求分析 (7)下列敘述中錯(cuò)誤的是 A)一個(gè)C語(yǔ)言程序只能實(shí)現(xiàn)一種算法 B)C程序可以由多個(gè)程序文件組成 C)C程序可以由一個(gè)或多個(gè)函數(shù)組成 D)一個(gè)函數(shù)可單獨(dú)作為一個(gè)C程序文件存在(8)下列不屬于軟件工程的3個(gè)要素的是A)方法 B)過(guò)程 C)工具 D)環(huán)境 (9)下列敘述中正確的是A)數(shù)據(jù)庫(kù)系統(tǒng)是一個(gè)獨(dú)立的系統(tǒng),不需要操作系統(tǒng)的支持B)數(shù)據(jù)庫(kù)技術(shù)的根本目標(biāo)是要解決數(shù)據(jù)的共享問題C)數(shù)據(jù)庫(kù)管理系統(tǒng)就是數(shù)據(jù)庫(kù)系統(tǒng)D)以上三種說(shuō)法都不對(duì)(10)下列敘述中正確的是 A)每個(gè)C程序文件中都必須有一個(gè)main()函數(shù) B)在C程序的函數(shù)中不能定義另一個(gè)函數(shù) C)C程序可以由一個(gè)或多個(gè)函數(shù)組成 D)在C程序中main()函數(shù)的位置是固定的(11)將E-R圖轉(zhuǎn)換到關(guān)系模式時(shí),實(shí)體與聯(lián)系都可以表示成 A)屬性 B)關(guān)系 C)鍵 D)域 (12)下列定義變量的語(yǔ)句中錯(cuò)誤的是 A)double int_; B)int _int; C)char For D)float USS(13)下列敘述中正確的是 A)C語(yǔ)言編譯時(shí)不檢查語(yǔ)法 B)C語(yǔ)言的子程序有過(guò)程和函數(shù)兩種 C)C語(yǔ)言的函數(shù)可以嵌套定義 D)C語(yǔ)言的函數(shù)可以嵌套調(diào)用(14)以下選項(xiàng)中,合法的一組C語(yǔ)言數(shù)值常量是A) 0x8A B)12 C).177 D) 028(15)以下敘述中正確的是 A)構(gòu)成C程序的基本單位是函數(shù) B)可以在一個(gè)函數(shù)中定義另一個(gè)函數(shù) C)main()函數(shù)必須放在其他函數(shù)之前 D)所有被調(diào)用的函數(shù)一定要在調(diào)用之前進(jìn)行定義 (16)若在定義語(yǔ)句:int a,b,c,*p=&c;之后,接著執(zhí)行以下選項(xiàng)中的語(yǔ)句,則能正確執(zhí)行的語(yǔ)句是A)scanf("%d",&p); B)scanf("%d%d%d",a,b,c);C)scanf("%d",p); D) scanf("%d",a,b,c);(17) 有以下程序 main() {int x,y,z; x=y=1; z=x++,y++,++y; printf("%d,%d,%d\n",x,y,z); } 程序運(yùn)行后的輸出結(jié)果是 A)2,2,3 B)2,2,2 C)2,3,1 D)2,1,1(18) 若已定義:int a=25,b=14,c=19;以下三目運(yùn)算符(?:)所構(gòu)成語(yǔ)句的執(zhí)行后a<=25&&b--<=2&&c?printf("***a=%d,b=%d,c=%d\n",a,b,c):printf("###a=%d,b=%d,c=%d\n",a,b,c);程序輸出的結(jié)果是 A)***a=25,b=13,c=19 B)***a=26,b=14,c=19 C)### a=25,b=13,c=19 D)### a=26,b=14,c=19 (19)下列程序段的輸出結(jié)果是 int a=1234; float b=; double c=; printf("-,%",a,b,c); A)無(wú)輸出 B)12, C)1234, D)1234, (20)有以下程序 main() {int a=0,b=0; a=10; /*給a賦值 b=20; 給b賦值 */ printf("a+b=%d\n",a+b); /* 輸出計(jì)算結(jié)果 */ } 程序運(yùn)行后輸出結(jié)果是 A)30 B)a+b=30 C)a+b=0 D)出錯(cuò)(21)若運(yùn)行以下程序時(shí),從鍵盤輸入 ADescriptor(表示回車),則下面程序的運(yùn)行結(jié)果是 #include main() { char c; int v0=1,v1=0,v2=0; do{ switch(c=getchar()) { case ′a′:case ′A′: case ′e′:case ′E′: case ′i′:case ′I′: case ′o′:case ′O′: case ′u′:case ′U′:v1+=1; default:v0+=1;v2+=1; } } while(c!=′\n′); printf("v0=%d,v1=%d,v2=%d\n",v0,v1,v2); } A)v0=11,v1=4,v2=11 B)v0=8,v1=4,v2=8 C)v0=7,v1=4,v2=7 D)v0=13,v1=4,v2=12 (22) 有以下程序#includemain(){int y=9;for( y>0;y--)if(y%3= =0) printf("%d",--y);}程序的運(yùn)行結(jié)果是A)732 B)433 C)852 D)874(23) 設(shè)有以下程序段 int x=0,s=0; while(!x!=0)s+=++x; printf("%d",s); 則 A)運(yùn)行程序段后輸出0 B)運(yùn)行程序段后輸出1 C)程序段中的控制表達(dá)式是非法的 D)程序段執(zhí)行無(wú)限次 (24)有以下程序 fun(int x,int y){return(x+y);} main() {int a=1,b=2,c=3,sum; sum=fun((a++,b++b,a+b),c++); printf("%d\n",sum); } 執(zhí)行后的輸出結(jié)果是 A)5 B)7 C)8 D)3(25)執(zhí)行下面的程序段后,變量k中的值為 int k=3, s[2]; s[0]=k; k=s[1]*10; A)不定值 B)35 C)31 D)20 (26)以下敘述中錯(cuò)誤的是A)改變函數(shù)形參的值,不會(huì)改變對(duì)應(yīng)實(shí)參的值B)函數(shù)可以返回地址值C)可以給指針變量賦一個(gè)整數(shù)作為地址值D)當(dāng)在程序的開頭包含文件時(shí),可以給指針變量賦NULL(27)以下程序段的描述,正確的是 x=-1; do {x=x*x;} while(!x); A)是死循環(huán) B)循環(huán)執(zhí)行兩次 C)循環(huán)執(zhí)行一次 D)有語(yǔ)法錯(cuò)誤 (28)有以下程序 fun(int x,int y) {static int m=0,i=2; i+=m+1;m=i+x+y; return m; } main() {int j=1,m=I,k; k=fun(j,m); printf("%d",k); k=fun(j,m); printf("%d\n",k) } 執(zhí)行后的輸出結(jié)果是A)5,5 B)5,11 C)11,11 D)11,5(29)有以下程序 fun(int x) {int p; if(x==0║x= =1) return(3); p=x-fun(x=2); retum p; }main() { prinf("%d\n",fun(7));} 執(zhí)行后的輸出結(jié)果是A)7 B)3 C)3 D)0(30)在16位編譯系統(tǒng)上,右有定義int a[ ]={10,20,30},*p=&a;,當(dāng)執(zhí)行p++;后,下列說(shuō)法錯(cuò)誤的是 A)p向高地址移了一個(gè)字節(jié) B)p抽高地址移了一個(gè)存儲(chǔ)單元C)p向高地址移了兩個(gè)字節(jié) D)p與a+1等價(jià)(31)有以下程序 main() {int a=1,b=3,c=5; int *p1=&a,*p2=&b,*p=&c; *p=*p1*(*p2); printf("%d\n",c); } 執(zhí)行后的輸出結(jié)果是A)1 B)2 C)3 D)4(32)下列程序執(zhí)行后的輸出結(jié)果是 void func1(int i); void func2(int i); char st[]="hello,friend!"; void func1(int i) { printf("%c",st[i]); if(i<3){i+=2;func2(i);} } void func2(int i) { printf("%c",st[i]); if(i<3){i+=2;func1(i);} } main() { int i=0; func1(i); printf("\n");} A)hello B)hel C)hlo D)hlm (33)在下述程序中,判斷i>j共執(zhí)行的次數(shù)是 main() { int i=0, j=10, k=2, s=0; for (;;) { i+=k; if(i>j) { printf("%d",s); break; } s+=i; } } A)4 B)7 C)5 D)6 (34)以下函數(shù)返回a所指數(shù)組中最大值所在的下標(biāo)值 fun(int *a,int n) { int i,j=0,p; p=j; for(i=j;iif(a[i]>a[p]); return(p); } 在下劃線處應(yīng)填入的內(nèi)容是 A)i=p B)a[p]=a[i] C)p=j D)p=i (35)下列程序執(zhí)行后的輸出結(jié)果是 main() { int a[3][3], *p,i; p=&a[0][0]; for(i=1; i<9; i++)p[i]=i+1; printf("%d\n",a[1][2]); } A)3 B)6 C)9 D)隨機(jī)數(shù) (36) 有以下程序#includevoid fun(int *a,int n)/*fun函數(shù)的功能是將a所指數(shù)組元素從大到小排序*/{int t,i,j;for(i=0;ifor(j=i+1;jif (a}main(){int c[10]={1,2,3,4,5,6,7,8,9,0},i;fun(c+4,6);for (i=0;i<10;i++) printf("%d,",c);printf("\n");}程序運(yùn)行的結(jié)果是A)1,2,3,4,5,6,7,8,9,0, B)0,9,8,7,6,5,1,2,3,4,C) 0,9,8,7,6,5,4,3,2,1, D)1,2,3,4,9,8,7,6,5,0,(37)以下程序的輸出結(jié)果是#include void prt (int *x, int*y, int*z) { printf("%d,%d,%d\n",++*x,++*y,*(z++));} main() { int a=10,b=40,c=20; prt (&a,&b,&c); prt (&a,&b,&c); } A)11,42, 31 12,22,41 B)11,41,20 12,42,20 C)11,21,40 11,21,21 D)11,41,21 12,42,22 (38) 有以下程序:#include void fun(char *t,char *s){while(*t!=0)t++;while((*t++=*s++)!=0);}main(){char ss[10]=”acc”,aa[10]=”bbxxyy”;fun(ss,aa);printf(“%s,%s\n”,ss,aa);}程序運(yùn)行結(jié)果是A) accxyy , bbxxyy B) acc, bbxxyyC) accxxyy,bbxxyy D) accbbxxyy,bbxxyy(39) 有以下程序 #include main() { FILE *fp; int i=20,j=30,k,n; fp=fopen("","w"); fprintf(fp,"%d\n",i);fprintf(fp,"%d\n",j); fclose(fp); fp=fopen("","r"); fscanf(fp,"%d%d",&k,&n); printf("%d %d\n",k,n); fclose(fp); } 程序運(yùn)行后的輸出結(jié)果是 A)20 30 B)20 50 C)30 50 D)30 20 (40) 有以下程序 main() {int x[3][2]={0},I; for(I=0;I<3;I++) scanf("%d",x[i]); printf("%3d%3d%3d\n",x[0][0],x[0][1],x[1][0]); } 若運(yùn)行時(shí)輸入:246<回車>,則輸出結(jié)果為A)2 0 0 B)2 0 4 C)2 4 0 D)2 4 6(41)有以下程序 int add(int a,int b){return+b};} main() {int k,(*f)(),a=5,b=10; f=add; … } 則以下函數(shù)調(diào)用語(yǔ)句錯(cuò)誤的是 A)k=(*f)(a,b); B)k=add(a,b); C)k=*f(a,b); D)k=f(a,b);(41)有以下程序 #include <> main(int argc,char *argv[]) {int i=1,n=0; while(i #define N 5 #define M N+1 #define f(x) (x*M) main() {int i1,i2; i1=f(2); i2=f(1+1); printf(“%d %d\n”,i1,i2); } 程序的運(yùn)行結(jié)果是A)12 12 B)11 7 C)11 11 D)12 7(44)設(shè)有以下語(yǔ)句 typedef struct TT {char c; int a[4];}CIN; 則下面敘述中正確的是 A)可以用TT定義結(jié)構(gòu)體變量 B)TT是struct類型的變量C)可以用CIN定義結(jié)構(gòu)體變量 D)CIN是struct TT類型的變量(45)有以下結(jié)構(gòu)體說(shuō)明、變量定義和賦值語(yǔ)句 struct STD {char name[10]; int age; char sex; }s[5],*ps; ps=&s[0]; 則以下scanf函數(shù)調(diào)用語(yǔ)句中錯(cuò)誤引用結(jié)構(gòu)體變量成員的是 A)scanf(“%s”,s[0].name); B)scanf(“%d”,&s[0].age);C)scanf(“%c”,&(ps>sex)); D)scanf(“%d”,ps>age);(46)若有以下定義和語(yǔ)句 union data { int i; char c; float f;}x; int y; 則以下語(yǔ)句正確的是A)x=; B); C)y=x; D)printf(“%d\n”,x);(47)若變量已正確定義,則以下語(yǔ)句的輸出結(jié)果是 s=32; s^=32;printf(“%d”,s);A)-1 B)0 C)1 D)32(48) 若程序中有宏定義行:#define N 100 則以下敘述中正確的是A)宏定義行中定義了標(biāo)識(shí)符N的值為整數(shù)100B)在編譯程序?qū)源程序進(jìn)行預(yù)處理時(shí)用100替換標(biāo)識(shí)符NC) 對(duì)C源程序進(jìn)行編譯時(shí)用100替換標(biāo)識(shí)符ND)在運(yùn)行時(shí)用100替換標(biāo)識(shí)符N(49)以下敘述中正確的是 A)C語(yǔ)言中的文件是流式文件,因此只能順序存取數(shù)據(jù) B)打開一個(gè)已存在的文件并進(jìn)行了寫操作后,原有文件中的全部數(shù)據(jù)必定被覆蓋 C)在一個(gè)程序中當(dāng)對(duì)文件進(jìn)行了寫操作后,必須先關(guān)閉該文件然后再打開,才能讀到第1個(gè)數(shù)據(jù)D)當(dāng)對(duì)文件的讀(寫)操作完成之后,必須將它關(guān)閉,否則可能導(dǎo)致數(shù)據(jù)丟失(50)有以下程序 #include <> main() {FILE *fp; int i; char ch[]=”abcd”,t; fp=fopen(“”,”wb+”); for(i=0;i<4;i++)fwriter&ch[],1,1fp; fseek(fp,-2L,SEEK_END); fread(&t,1,1,fp); fclose(fp); printf(“%c\n”,t); } 程序執(zhí)行后的輸出結(jié)果是 A)d B)c C)b D)a二、填空題(每空2分,共40分)(1)在面向?qū)ο蠓椒ㄖ?,類之間共享屬性和操作的機(jī)制稱為 【1】 。 (2)一個(gè)關(guān)系表的行稱為 【2】 。(3)耦合和內(nèi)聚是評(píng)價(jià)模塊獨(dú)立性的兩個(gè)主要標(biāo)準(zhǔn),其中 【3】 反映了模塊內(nèi)各成分之間的聯(lián)系。 (4)線性表的存儲(chǔ)結(jié)構(gòu)主要分為順序存儲(chǔ)結(jié)構(gòu)和鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu).隊(duì)列是一種特殊的線性表,循環(huán)隊(duì)列是隊(duì)列的【4】存儲(chǔ)結(jié)構(gòu).(5) 【5】 的任務(wù)是診斷和改正程序中的錯(cuò)誤。(6) 以下程序的輸出結(jié)果是【6】.#include main(){ int n=12345,d;while(n!=0){ d=n%10; printf("%d",d); n/=10;}}(7)以下程序運(yùn)行后的輸出結(jié)果是 【7】 。main(){ int m=011,n=11; printf("%d %d\n",++m,n++);}(8)有以下程序,若運(yùn)行時(shí)從鍵盤輸入:18,11<回車>,則程序輸出結(jié)果是 【8】 。main(){ int a,b; printf("Enter a,b:");scanf("%d,%d",&a,&b); while(a!=b) { while(a>b) a-=b; while(b>a) b-=a; } printf("%3d%3d\n",a,b); }(9) 有以下程序段,且變量已正確定義和賦值for(s=;k<=n;k++) s=s+(k*(k+1));printf("s=%f\n\n",s);請(qǐng)?zhí)羁?使下面程序段的功能為完全相同s=;k=1;while(_【9】_______){ s=s+(k*(k+1)); _【10】_______;}printf("s=%f\n\n",s);(10)執(zhí)行以下程序的輸出結(jié)果是【11】______.#include main(){ int i,n[4]={1};for(i=1;i<=3;i++){ n=n[i-1]*2+1; printf("%d",n); }}(11)以下程序中函數(shù)f的功能是在數(shù)組x的n個(gè)數(shù)(假定n個(gè)數(shù)互不相同)中找出最大最小數(shù),將其中最小的數(shù)與第一個(gè)數(shù)對(duì)換,把最大的數(shù)與最后一個(gè)數(shù)對(duì)換.請(qǐng)?zhí)羁?#include viod f(int x[],int n){ int p0,p1,i,j,t,m;i=j=x[0]; p0=p1=0;for(m=0;m{ if(x[m]>i) {i=x[m]; p0=m;}else if(x[m]}t=x[p0]; x[p0]=x[n-1]; x[n-1]=t;t=x[p1];x[p1]= _【12】_______; 【13】______=t;}main(){ int a[10],u;for(u=0;u<10;u++) scanf("%d",&a);f(a,10);for(u=0;u<10;u++) printf("%d",a);printf("\n");}(12)下列程序中的函數(shù)strcpy2()實(shí)現(xiàn)字符串兩次復(fù)制,即將t所指字符串復(fù)制兩次到s所指內(nèi)存空間中,合并形成一個(gè)新的字符串。例如,若t所指字符串為efgh,調(diào)用strcpy2后,s所指字符串為efghefgh。請(qǐng)?zhí)羁铡?include <>#include <>void strcpy2(char *s,char *t){ char *p=t; while(*s++=*t++); s= 【14】 ; while( 【15】 =*p++);}main(){ char str1[100]="abcd",str2[]="efgh"; strcpy2(str1 ,str2); printf("%s\n",str1);}(13)以下程序統(tǒng)計(jì)從終端輸入的字符中大寫字母的個(gè)數(shù),num[0]中統(tǒng)計(jì)字母A的個(gè)數(shù),num[1]中統(tǒng)計(jì)字母B的個(gè)數(shù),其它依次類推.用#號(hào)結(jié)束輸入,請(qǐng)?zhí)羁?#include #include main(){ int num[26]={0},i; char c;while((_【16】_______)!='#')if(isupper(c)) num[c-‘A’]+= 【17】_______;for(i=0;i<26;i++)Printf("%c:%d\n",i+'A',num);}(14)以下程序中,函數(shù)fun的功能是計(jì)算x2-2x+6,主函數(shù)中將調(diào)用fun函數(shù)計(jì)算:y1=(x+8)2-2(x+8)+6y2=sin2(x)-2sin(x)+6請(qǐng)?zhí)羁铡?include ""double fun(double x) { return(x*x-2*x+6); }main(){ double x,y1,y2; printf("Enter x:"); scanf("%lf",&x); y1=fun( 【18】 ); y2=fun( 【19】 ); printf("y1=%lf,y2=%lf\n",y1,y2); }(15) 以下程序的輸出結(jié)果是_【20】______.#include #define M 5#define N M+Mmain(){ int k;k=N*N*5; printf("%d\n",k);}一、選擇題答案:1-10:CACDC DADBA 11-20:BDDBA CCCCB 21-30:DCBCA CCBCA 31-40:CCDAB DCDAB 41-50:CABCD BBBDB二、填空題答案:1.繼承 2. 元組 3.內(nèi)聚 4.順序 5. 程序調(diào)試 6. 54321 11 8. 1 <=n k++ 10. 3 7 5 [0] x[0] ,*s++ () 14. (x+8),sin(x) 希望對(duì)你有所幫助

        227 評(píng)論(10)

        j解y語(yǔ)h花

        2010年3月全國(guó)計(jì)算機(jī)等級(jí)考試二級(jí)C語(yǔ)言筆試真題及參考答案一、選擇題(1)下列敘述中正確的是A)對(duì)長(zhǎng)度為n的有序鏈表進(jìn)行查找,最壞清況下需要的比較次數(shù)為nB)對(duì)長(zhǎng)度為n的有序鏈表進(jìn)行對(duì)分查找,最壞情況下需要的比較次數(shù)為(n/2)C)對(duì)長(zhǎng)度為n的有序鏈表進(jìn)行對(duì)分查找,最壞情況下需要的比較次數(shù)為(log2n)D)對(duì)長(zhǎng)度為n的有序鏈表進(jìn)行對(duì)分查找,最壞情況下需要的比較次數(shù)為(nlog2n)(2)算法的時(shí)間復(fù)雜度是指A)算法的執(zhí)行時(shí)間B)算法所處理的數(shù)據(jù)量C)算法程序中的語(yǔ)句或指令條數(shù)D)算法在執(zhí)行過(guò)程中所需要的基本運(yùn)算次數(shù)(3)軟件按功能可以分為:應(yīng)用軟件、系統(tǒng)軟件和支撐軟件(或工具軟件)。下面屬于系統(tǒng)軟件的是A)編輯軟件B)操作系統(tǒng)C)教務(wù)管理系統(tǒng)D)瀏覽器(4)軟件(程序)調(diào)試的任務(wù)是A)診斷和改正程序中的錯(cuò)誤B)盡可能多地發(fā)現(xiàn)程序中的錯(cuò)誤C)發(fā)現(xiàn)并改正程序中的所有錯(cuò)誤D)確定程序中錯(cuò)誤的性質(zhì)(5)數(shù)據(jù)流程圖(DFD圖)是A)軟件概要設(shè)計(jì)的工具B)軟件詳細(xì)設(shè)計(jì)的工具C)結(jié)構(gòu)化方法的需求分析工具D)面向?qū)ο蠓椒ǖ男枨蠓治龉ぞ撸?)軟件生命周期可分為定義階段,開發(fā)階段和維護(hù)階段。詳細(xì)設(shè)計(jì)屬于A)定義階段B)開發(fā)階段C)維護(hù)階段D)上述三個(gè)階段(7)數(shù)據(jù)庫(kù)管理系統(tǒng)中負(fù)責(zé)數(shù)據(jù)模式定義的語(yǔ)言是A)數(shù)據(jù)定義語(yǔ)言B)數(shù)據(jù)管理語(yǔ)言C)數(shù)據(jù)操縱語(yǔ)言D)數(shù)據(jù)控制語(yǔ)言(8)在學(xué)生管理的關(guān)系數(shù)據(jù)庫(kù)中,存取一個(gè)學(xué)生信息的數(shù)據(jù)單位是A)文件B)數(shù)據(jù)庫(kù)C)字段D)記錄(9)數(shù)據(jù)庫(kù)設(shè)計(jì)中,用E-R圖來(lái)描述信息結(jié)構(gòu)但不涉及信息在計(jì)算機(jī)中的表示,它屬于數(shù)據(jù)庫(kù)設(shè)計(jì)的A)需求分析階段B)邏輯設(shè)計(jì)階段C)概念設(shè)計(jì)階段D)物理設(shè)計(jì)階段(10)有兩個(gè)關(guān)系R和T如下: 則由關(guān)系K得到關(guān)系T的操作是A)選擇B)投影C)交D)并(11)以下敘述正確的是A)C語(yǔ)言程序是由過(guò)程和函數(shù)組成的B)C語(yǔ)言函數(shù)可以嵌套調(diào)用,例如:fun(fun(x))C)C語(yǔ)言函數(shù)不可以單獨(dú)編譯D)C語(yǔ)言中除了main函數(shù),其他函數(shù)不可作為單獨(dú)文件形式存在(12)以下關(guān)于C語(yǔ)言的敘述中正確的是A)C語(yǔ)言中的注釋不可以?shī)A在變量名或關(guān)鍵字的中間B)C語(yǔ)言中的變量可以在使用之前的任何位置進(jìn)行定義C)在C語(yǔ)言算術(shù)表達(dá)式的書寫中,運(yùn)算符兩側(cè)的運(yùn)算數(shù)類型必須一致D)C語(yǔ)言的數(shù)值常量中夾帶空格不影響常量值的正確表示(13)以下C語(yǔ)言用戶標(biāo)識(shí)符中,不合法的是A)_1B)AaBcC)a_bD)a-b(14)若有定義:double a=22;int i=0,k=18;,則不符合C語(yǔ)言規(guī)定的賦值語(yǔ)句是A)a=a++,i++;B)i=(a+k)<=(i+k);C)i=a%11;D)i=!a;(15)有以下程序#include<>main(){ char a,b,c,d;scanf(“%c%c”,&a,&b);c=getchar(); d=getchar();printf(“%c%c%c%c\n”,a,b,c,d);}當(dāng)執(zhí)行程序時(shí),按下列方式輸入數(shù)據(jù)(從第1列開始,代表回車,注意:回車也是一個(gè)字符)1234則輸出結(jié)果是A)1234B)12C)12 3D)12 34(16)以i關(guān)于C語(yǔ)言數(shù)據(jù)類型使用的敘述中錯(cuò)誤的是A)若要準(zhǔn)確無(wú)誤差的表示自然數(shù),應(yīng)使用整數(shù)類型B)若要保存帶有多位小數(shù)的數(shù)據(jù),應(yīng)使用雙精度類型C)若要處理如“人員信息”等含有不同類型的相關(guān)數(shù)據(jù),應(yīng)自定義結(jié)構(gòu)體類型D)若只處理“真”和“假”兩種邏輯值,應(yīng)使用邏輯類型(17)若a是數(shù)值類型,則邏輯表達(dá)式(a==1)||(a!=1)的值是A)1B)0C)2D)不知道a的值,不能確定(18)以下選項(xiàng)中與if(a==1)a=b; else a++;語(yǔ)句功能不同的switch語(yǔ)句是A)switch(a){case:a=b;break;
        default:a++;

        B)switch(a==1)
        {case 0:a=b;break;
        case 1:a++;
        }C)switch(a){default:a++;break;
        case 1:a=b;
        }D)switch(a==1){case 1:a=b;break;
        case 0:a++;
        }(19)有如下嵌套的if語(yǔ)句if (am=i*j;
        }}printf("m=%d\n",m);}程序運(yùn)行后的輸出結(jié)果是A)m=6B)m=2C)m=4D)m=5(21)有以下程序#include(>main(){int a=l;b=2;for(;a<8;a++) {b+=a;a+=2;}printf("%d,%d\n",a,b);}程序運(yùn)行后的輸出結(jié)果是A)9,18B)8,11C)7,11D)10,14(22)有以下程序,其中k的初值為八進(jìn)制數(shù)#include <>main(){int k=011;printf("%d\n",k++);}程序運(yùn)行后的輸出結(jié)果是A)12B)11C)10D)9(23)下列語(yǔ)句組中,正確的是A)char *s;s="Olympic";B)char s[7];s="Olympic";C)char *s;s={"Olympic"};D)char s[7];s={"Olympic"};(24)以下關(guān)于return語(yǔ)句的敘述中正確的是A)一個(gè)自定義函數(shù)中必須有一條return語(yǔ)句B)一個(gè)自定義函數(shù)中可以根據(jù)不同情況設(shè)置多條return語(yǔ)句C)定義成void類型的函數(shù)中可以有帶返回值的return語(yǔ)句D)沒有return語(yǔ)句的自定義函數(shù)在執(zhí)行結(jié)束時(shí)不能返回到調(diào)用處(25)下列選項(xiàng)中,能正確定義數(shù)組的語(yǔ)句是A)int num[0..2008];B)int num[];C)int N=2008; int num[N];D)#define N 2008 int num[N];(26)有以下程序#include <>void fun(char *c,int d){*c=*c+1;d=d+1;printf("%c,%c,",*c,d);main(){char b='a',a='A';fun(&b,a);printf("%e,%e\n",b,a);}程序運(yùn)行后的輸出結(jié)果是A)b,B,b,AB)b,B,B,AC)a,B,B,aD)a,B,a,B(27)若有定義int(*Pt)[3];,則下列說(shuō)法正確的是A)定義了基類型為int的三個(gè)指針變量B)定義了基類型為int的具有三個(gè)元素的指針數(shù)組ptC)定義了一個(gè)名為*pt、具有三個(gè)元素的整型數(shù)組D)定義了一個(gè)名為pt的指針變量,它可以指向每行有三個(gè)整數(shù)元素的二維數(shù)組(28)設(shè)有定義double a[10],*s=a;,以下能夠代表數(shù)組元素a[3]的是A)(*s)[3]B)*(s+3)C)*s[3]D)*s+3(29)有以下程序#include()main(){int a[5]={1,2,3,4,5},b[5]={O,2,1,3,0},i,s=0;for(i=0;i<5;i++) s=s+a[b[i]]);printf("%d\n", s);}程序運(yùn)行后的輸出結(jié)果是A)6B)10C)11D)15(30)有以下程序#include <>main(){int b [3][3]={O,1,2,0,1,2,O,1,2},i,j,t=1;for(i=0;i<3;i++)for(j=ij<=1;j++) t+=b[i][b[j][i]];printf("%d\n",t);}程序運(yùn)行后的輸出結(jié)果是A)1B)3C)4D)9(31)若有以下定義和語(yǔ)句.......這是全國(guó)2010全國(guó)c語(yǔ)言考試的部分題目,樓主需要的話可以自己去下載轉(zhuǎn)自:酷8學(xué)習(xí)網(wǎng)

        201 評(píng)論(13)

        相關(guān)問答