版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、2007年9月全國計算機等級C語言程序設計一、選擇題(1)(10)每題2分,(11)(50)每題1分,共60分)下列各題A)、B)、C)、D)四個選項中,只有一個選項是正確的,請將正確選項涂寫在答題卡上,答在試卷上不得分。(1)軟件是指A)程序B)程序和文檔C)算法加數(shù)據(jù)結構D)程序、數(shù)據(jù)與相關文檔的完整集合(2)軟件調試的目的是A)發(fā)現(xiàn)錯誤B)改正錯誤C)改善軟件的性能D)驗證軟件的正確性(3)在面向對象方法中,實現(xiàn)信息隱蔽是依靠A)對象的繼承B)對象的多態(tài)C)對象的封裝D)對象的分類(4)下列敘述中,不符合良好程序設計風格要求的是A)程序的效率第一,清晰第二B)程序的可讀性好C)程序中要有
2、必要的注釋D)輸入數(shù)據(jù)前要有提示信息(5)下列敘述中正確的是A)程序執(zhí)行的效率與數(shù)據(jù)的存儲結構密切相關B)程序執(zhí)行的效率只取決于程序的控制結構C)程序執(zhí)行的效率只取決于所處理的數(shù)據(jù)量D)以上三種說法都不對(6)下列敘述中正確的是A)數(shù)據(jù)的邏輯結構與存儲結構必定是一一對應的B)由于計算機存儲空間是向量式的存儲結構,因此,數(shù)據(jù)的存儲結構一定是線性結構C)程序設計語言中的數(shù)組一般是順序存儲結構,因此,利用數(shù)組只能處理線性結構D)以上三種說法都不對(7)冒泡排序在最壞情況下的比較次數(shù)是A)B)C)D)(8)一棵二叉樹中共有70個葉子結點與80個度為1的結點,則該二叉樹中的總結點數(shù)為A)219B)221
3、C)229D)231(9)下列敘述中正確的是A)數(shù)據(jù)庫系統(tǒng)是一個獨立的系統(tǒng),不需要操作系統(tǒng)的支持B)數(shù)據(jù)庫技術的根本目標是要解決數(shù)據(jù)的共享問題C)數(shù)據(jù)庫管理系統(tǒng)就是數(shù)據(jù)庫系統(tǒng)D)以上三種說法都不對(10)下列敘述中正確的是A)為了建立一個關系,首先要構造數(shù)據(jù)的邏輯關系B)表示關系的二維表中各元組的每一個分量還可以分成若干數(shù)據(jù)項C)一個關系的屬性名表稱為關系模式D)一個關系可以包括多個二維表(11)C語言源程序名的后綴是A).exeB).CC).objD).cp(12)可在C程序中用作用戶標識符的一組標識符是A)andB)DateC)HiD)case_2007y-m-dDr.TomBig1(13
4、)以下選項中,合法的一組C語言數(shù)值常量是A)028B)12.C).177D)0x8A.5e-30Xa234e1.510,000-0xf4.5e00abc3.e5(14)以下敘述中正確的是 A)C語言程序將從源程序中第一個函數(shù)開始執(zhí)行B)可以在程序中由用戶指定任意一個函數(shù)作為主函數(shù),程序將從此開始執(zhí)行C)C語言規(guī)定必須用main作為主函數(shù)名,程序將從此開始執(zhí)行,在此結束D)main可作為用戶標識符,用以命名任意一個函數(shù)作為主函數(shù)(15)若在定義語句:int a,b,c,*p=&c; 之后,接著執(zhí)行以下選項中的語句,則能正確執(zhí)行的語句是A)scanf("%d",a,b,
5、c);B)scanf("%d%d%d",a,b,c);C)scanf("%d",p);D)scanf("%d",&p);(16)以下關于long、int和short類型數(shù)據(jù)占用內存大小的敘述中正確的是A)均占4個字節(jié)B)根據(jù)數(shù)據(jù)的大小來決定所占內存的字節(jié)數(shù)C)由用戶自己定義D)由C語言編譯系統(tǒng)決定(17)若變量均已正確定義并賦值,以下合法的C語言賦值語句是A)x=y=5;B)x=n%2.5;C)x+n=i;D)x=5=4+1;(18)有以下程序段 int j; float y; char name50; scanf("
6、;%2d%f%s", &j, &y, name);當執(zhí)行上述程序段,從鍵盤上輸入55566 7777abc 后,y的值為A)55566.0B)566.0C)7777.0D)566777.0(19)若變量已正確定義,有以下程序段i=0;do printf("%d, ",i); while( i+ );printf("%dn",i);其輸出結果是A)0,0B)0,1C)1,1D)程序進入無限循環(huán)(20)有以下計算公式若程序前面已在命令行中包含math.h文件,不能夠正確計算上述公式的程序段是A)if(x>=0) y=sqrt(
7、x);B)y=sqrt(x);else y=sqrt(-x); if(x<0) y=sqrt(-x);C)if(x>=0) y=sqrt(x);D)y=sqrt(x>=0?x :-x);if(x<0) y=sqrt(-x);(21)設有條件表達式:(EXP)? i+ :j- ,則以下表達式中與(EXP)完全等價的是A)(EXP=0)B)(EXP!=0)C)(EXP=1)D)(EXP!=1)(22)有以下程序#include <stdio.h>main() int y=9; for( ; y>0; y-) if(y%3=0) printf("%
8、d", -y);程序的運行結果是A)741B)963C)852D)875421(23)已有定義:char c; ,程序前面已在命令行中包含ctype.h文件。不能用于判斷c中的字符是否為大寫字母的表達式是A)isupper(c)B)'A'<=c<='Z'C)'A'<=c&& c <='Z'D)c <=('z'-32)&&('a'-32)<= c(24)有以下程序#include <stdio.h>main()
9、int i,j, m=55; for(i=1;i<=3;i+) for(j=3; j<=i; j+) m=m%j; printf("%dn ", m);程序的運行結果是A)0B)1C)2 D)3(25)若函數(shù)調用時的實參為變量時,以下關于函數(shù)形參和實參的敘述中正確的是A)函數(shù)的實參和其對應的形參共占同一存儲單元B)形參只是形式上的存在,不占用具體存儲單元C)同名的實參和形參占同一存儲單元D)函數(shù)的形參和實參分別占用不同的存儲單元(26)已知字符'A'的ASCII代碼值是65,字符變量c1的值是'A',c2的值是'D'
10、;。執(zhí)行語句printf("%d, %d", c1, c2-2 ); 后,輸出結果是A)A,BB)A,68C)65,66D)65,68(27)以下敘述中錯誤的是A)改變函數(shù)形參的值,不會改變對應實參的值B)函數(shù)可以返回地址值C)可以給指針變量賦一個整數(shù)作為地址值 D)當在程序的開頭包含頭文件stdio.h時,可以給指針變量賦NULL(28)以下正確的字符串常量是A)""B)'abc'C)Olympic GamesD)""(29)設有定義:char p='1', '2', '3
11、39;,*q=p; ,以下不能計算出一個char型數(shù)據(jù)所占字節(jié)數(shù)的表達式是A)sizeof(p)B)sizeof(char)C)sizeof(*q)D)sizeof(p0)(30)有以下函數(shù)int aaa(char *s) char *t=s; while(*t+); t-; return(t-s);以下關于aaa函數(shù)的功能的敘述正確的是A)求字符串s的長度B)比較兩個串的大小C)將串s復制到串tD)求字符串s所占字節(jié)數(shù)(31)若有定義語句:int a36; ,按在內存中的存放順序,a數(shù)組的第10個元素是A)a04B)a13C)a03D)a14(32)有以下程序#include <std
12、io.h>void fun(char *p) +p; printf("%sn",*p); main() char *a="Morning", "Afternoon", "Evening","Night" fun(a);程序的運行結果是A)AfternoonB)fternoonC)MorningD)orning(33)若有定義語句:int a23,*p3; ,則以下語句中正確的是A)p=a; B)p0=a;C)p0=&a12; D)p1=&a;(34)有以下程序#includ
13、e <stdio.h>void fun(int *a, int n) /* fun函數(shù)的功能是將a所指數(shù)組元素從大到小排序 */ int t, i, j; for (i=0; i<n-1;i+) for (j=i+1; j<n; j+) if (ai<aj) t=ai; ai=aj; aj=t; main() int c10=1,2,3,4,5,6,7,8,9,0,i; fun(c+4, 6); for (i=0;i<10; i+) printf("%d,", ci); printf("n");程序的運行結果是A)1,
14、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,(35)有以下程序#include <stdio.h>int fun( char s) int n=0; while(*s <= '9'&&*s >='0') n=10*n+*s-'0' ; s+; return (n);main() char s10= '6', '1', '*', '
15、4', '*', '9', '*', '0', '*' printf("%dn",fun(s);程序的運行結果是A)9B)61490C)61D)5(36)當用戶要求輸入的字符串中含有空格時,應使用的輸入函數(shù)是A)scanf()B)getchar()C)gets()D)getc()(37)以下關于字符串的敘述中正確的是A)C語言中有字符串類型的常量和變量B)兩個字符串中的字符個數(shù)相同時才能進行字符串大小的比較C)可以用關系運算符對字符串的大小進行比較D)空串一定比空格打頭的字符串?。?8)
16、有以下程序#include <stdio.h>void fun(char *t , char *s) while(*t!=0) t+; while( (*t+ = *s+ )!=0 ) ;main() char ss10="acc",aa10="bbxxyy" fun(ss, aa); printf("%s,%sn", ss,aa);程序的運行結果是A)accxyy, bbxxyyB)acc, bbxxyyC)accxxyy, bbxxyyD)accbbxxyy, bbxxyy(39)有以下程序#include <s
17、tdio.h>#include <string.h>void fun(char s10, int n) char t; int i,j; for (i=0; i<n-1; i+) for (j=i+1; j<n; j+) /* 比較字符串的首字符大小,并交換字符串的首字符 */ if (si0 > sj0) t = si0; si0 = sj0; sj0 = t;main() char ss510="bcc", "bbcc", "xy", "aaaacc", "aabc
18、c" fun(ss, 5); printf("%s,%sn", ss0,ss4);程序的運行結果是A)xy,aaaaccB)aaaacc,xyC)xcc,aabccD)acc,xabcc(40)在一個C源程序文件中所定義的全局變量,其作用域為A)所在文件的全部范圍B)所在程序的全部范圍C)所在函數(shù)的全部范圍D)由具體定義位置和extern說明來決定范圍(41)有以下程序#include <stdio.h>int a=1;int f(int c) static int a=2; c = c+1; return (a+) + c;main() int i,
19、 k=0; for(i=0;i<2;i+) int a=3; k += f(a); k +=a; printf("%dn",k);程序的運行結果是A)14B)15C)16D)17(42)有以下程序#include <stdio.h>void fun(int n, int *p) int f1,f2; if(n=1|n=2) *p=1; else fun(n-1,&f1); fun(n-2,&f2); *p=f1+f2; main() int s; fun(3,&s); printf("%dn", s );程序的運
20、行結果是A)2B)3C)4D)5(43)若程序中有宏定義行:#define N 100 則以下敘述中正確的是A)宏定義行中定義了標識符N的值為整數(shù)100B)在編譯程序對C源程序進行預處理時用100替換標識符NC)對C源程序進行編譯時用100替換標識符ND)在運行時用100替換標識符N(44)以下關于typedef的敘述錯誤的是A)用typedef可以增加新類型B)typedef只是將已存在的類型用一個新的名字來代表C)用typedef可以為各種類型說明一個新名,但不能用來為變量說明一個新名D)用typedef為類型說明一個新名,通??梢栽黾映绦虻目勺x性(45)有以下程序#include <
21、;stdio.h>struct tt int x; struct tt *y; *p;struct tt a4=20,a+1,15,a+2,30,a+3,17,a;main() int i; p=a; for(i=1; i<=2; i+) printf("%d,", p->x ); p=p->y; 程序的運行結果是A)20,30,B)30,17C)15,30,D)20,15,(46)有以下程序#include <stdio.h>#include <string.h>typedef struct char name9; char
22、 sex; float score2; STU;STU f(STU a) STU b="Zhao", 'm', 85.0, 90.0; int i; strcpy(, ); a.sex = b.sex; for (i=0; i<2; i+) a.scorei = b.scorei; return a;main() STU c="Qian", 'f', 95.0, 92.0, d; d=f(c); printf("%s,%c,%2.0f,%2.0fn", , d.
23、sex, d.score0, d.score1);程序的運行結果是A)Qian,f,95,92B)Qian,m,85,90 C)Zhao,m,85,90 D)Zhao,f,95,92(47)設有以下定義union data int d1; float d2; demo;則下面敘述中錯誤的是A)變量demo與成員d2所占的內存字節(jié)數(shù)相同B)變量demo中各成員的地址相同C)變量demo和各成員的地址相同D)若給demo.d1賦99后,demo.d2中的值是99.0 (48)有以下程序#include <stdio.h>main() int a=1, b=2, c=3, x; x=(a
24、b)&c; printf("%dn",x);程序的運行結果是A)0B)1C)2D)3(49)讀取二進制文件的函數(shù)調用形式為:fread(buffer,size,count,fp);,其中buffer代表的是A)一個文件指針,指向待讀取的文件B)一個整型變量,代表待讀取的數(shù)據(jù)的字節(jié)數(shù)C)一個內存塊的首地址,代表讀入數(shù)據(jù)存放的地址D)一個內存塊的字節(jié)數(shù)(50)有以下程序#include <stdio.h>main() FILE *fp; int a10=1,2,3,0,0, i; fp = fopen("d2.dat", "wb
25、"); fwrite(a, sizeof(int), 5, fp); fwrite(a, sizeof(int), 5, fp); fclose(fp); fp = fopen("d2.dat", "rb"); fread(a, sizeof(int), 10, fp); fclose(fp); for (i=0; i<10; i+) printf("%d,", ai);程序的運行結果是A)1,2,3,0,0,0,0,0,0,0,B)1,2,3,1,2,3,0,0,0,0,C)123,0,0,0,0,123,0,0,0
26、,0,D)1,2,3,0,0,1,2,3,0,0,二、填空題(每空2分,共40分)請將每一個空的正確答案寫在答題卡【1】至【20】序號的橫線上,答在試卷上不得分。(1)軟件需求規(guī)格說明書應具有完整性、無歧義性、正確性、可驗證性、可修改性等特性,其中最重要的是 【1】 。(2)在兩種基本測試方法中, 【2】 測試的原則之一是保證所測模塊中每一個獨立路徑至少要執(zhí)行一次。(3)線性表的存儲結構主要分為順序存儲結構和鏈式存儲結構。隊列是一種特殊的線性表,循環(huán)隊列是隊列的 【3】 存儲結構。(4)對下列二叉樹進行中序遍歷的結果為 【4】 。(5)在E-R圖中,矩形表示 【5】 。(6)執(zhí)行以下程序時輸入
27、1234567<CR>,則輸出結果是 【6】 。#include <stdio.h>main() int a=1,b; scanf("%2d%2d",&a,&b); printf("%d %dn",a,b);(7)以下程序的功能是:輸出a、b、c三個變量中的最小值。請?zhí)羁铡?include <stdio.h>main( ) int a,b,c,t1,t2; scanf("%d%d%d",&a,&b,&c); t1= a<b ? 【7】 ; t2= c &
28、lt;t1 ? 【8】 ; printf("%dn", t2 );(8)以下程序的輸出結果是 【9】 。# include <stdio.h>main() int n=12345, d; while(n!=0) d=n%10; printf("%d", d); n/=10; (9)有以下程序段,且變量已正確定義和賦值 for(s=1.0, k=1; k<=n; k+) s=s+1.0/(k*(k+1); printf("s=%fnn", s);請?zhí)羁?,使下面程序段的功能與之完全相同 s=1.0; k=1; while
29、( 【10】 ) s=s+1.0/(k*(k+1); 【11】 ; printf("s=%fnn", s);(10)以下程序的輸出結果是 【12】 。#include <stdio.h>main() int i; for(i='a' i<'f' i+,i+) printf("%c",i - 'a' + 'A'); printf("n");(11)以下程序的輸出結果是 【13】 。#include <stdio.h>#include <s
30、tring.h>char *fun(char *t) char *p=t; return (p+strlen(t)/2);main() char *str="abcdefgh" str=fun(str); puts(str);(12)以下程序中函數(shù)f的功能是在數(shù)組x的n個數(shù)(假定n個數(shù)互不相同)中找出最大最小數(shù),將其中最小的數(shù)與第一個數(shù)對換,把最大的數(shù)與最后一個數(shù)對換。請?zhí)羁铡?# include <stdio.h>void f (int x, int n) int p0, p1, i, j, t, m; i=j=x0; p0=p1=0; for(m=0;
31、m<n;m+) if ( xm>i ) i=xm; p0=m; else if( xm<j ) j=xm; p1=m; t=xp0; xp0= xn-1; xn-1 =t; t= xp1; xp1= 【14】 ; 【15】 =t;main() int a10, u; for(u=0;u<10;u+) scanf("%d", &au); f(a, 10); for(u=0;u<10;u+) printf(" %d", au); printf("n");(13)以下程序統(tǒng)計從終端輸入的字符中大寫字母的個數(shù),num0中統(tǒng)計字母A的
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 單項工程承建2024年協(xié)議協(xié)議
- 2024年毛竹資源開采承包協(xié)議范例
- 2024年化綜合服務協(xié)議模板
- 2024年新室內綠植布置服務協(xié)議
- 2024年品牌產(chǎn)品銷售代理協(xié)議模板
- 2024年工程施工期限協(xié)議條款
- 2024年度安全生產(chǎn)職責實施協(xié)議
- 2024年度鋼筋作業(yè)勞務協(xié)議
- 2024年裝載機租賃協(xié)議樣本
- 2024機械加工項目協(xié)議樣本總覽
- 性健康教育課件
- 影響世界的工業(yè)革命 2023屆高三統(tǒng)編版歷史一輪復習
- 職業(yè)學院教師教學創(chuàng)新團隊建設管理辦法
- 微型計算機原理與應用習題集及答案
- 河北省唐山市藥品零售藥店企業(yè)藥房名單目錄
- 喵喵老師制作 電子百拼的黑白電路圖
- DB34-T 4010-2021 水利工程外觀質量評定規(guī)程-高清現(xiàn)行
- 《整改報告》模板
- 送達地址確認書(樣本)
- 江蘇省歷屆中學生與社會作文大賽決賽試題及獲獎范文(完整版)資料
- 六年級數(shù)學上冊教案-分數(shù)乘法整理與練習 蘇教版
評論
0/150
提交評論