全國2007年10月高等教育自學考試 一、單項選擇題(本大題共15小題,每小題2分,共30分) 1.可以作為自定義標識符的是( )。 2.正確的變量定義是( )。 3.表達式的值為0的是( )。 4.設int a=1,b=2;,則執行a=b+2,a++,a+b;后a和b的值分別是( )。 5.設int a=2,b=3,c=4;,則表達式a>b&&b<c||b的值是( )。 6.設int a=2,b=3,x,y;,則能正確執行的語句是( )。 7.設char s[10]= 〞abcde〞,t[ ]= 〞12345〞; ,則s和t在內存中分配的字節數分別是( )。 8.設int a=10,*p=&a; ,則執行printf(〝%d\n〞,*p+a);的結果是( )。 9.自定義函數中形式參數的作用域是( )。 10.設int b[ ][5]={1,2,3,4,5,6,7};,則元素b[1][2]的值是( )。 11.對函數而言,敘述正確的是( )。 12.執行下列程序段后輸出的結果是( )。 int x,y,z=1; for(x=1,y=-1;x<y;x++,y--)z++; printf(〞%d\n〞,z); 13.設static int a[3]={1,2,3};int*p[ ]={&a[0],&a[1],&a[2]};則與數組元素a[1]等價的是( )。 14.設struct{char name[10];int age;}stu[2]={{ 〞Tom〞,25},{〞Mary〞,26}},*p=stu;則執行語句printf(〞%s%d\n〞,p->name,stu[1].age);后輸出結果是( )。 15.設typedef double DB;,則與DB u[5];的等價形式是( )。 二、填空題(本大題共10小題,每小題2分,共20分) 16.一個字符型變量所占內存的字節數是____________________。 17.寫出公式 18.執行語句printf(〞%s\n, 〞〞 World\0Wide\0Web〞);后的輸出結果是_______________。 19.設int a,b=5;,則執行表達式a=b-2==3后a的值是_________________。 20.設char s[20]= 〞My〞;,則執行strcat(s, 〞Sun! 〞)后s的內容是___________________。 21.設float x=23.65;, 則執行語句printf (〞%d\n〞,(int)(x+0.5));后輸出結是_______________。 22.若定義函數char*fun( ){…},則該函數的返回值類型是__________________。 23.設int x=-9,y;,則執行y=x>=0?x:-x;后y的值是_________________。 24.若函數調用語句為f(a,b,f(a+b,a-b,b));,則函數f的參數個數是__________________。 25.設int a=10;,則執行語句a+=a-=a+a;后a 的值是_________________。 三、程序分析題(本大題共4小題,每小題4分,共16分) 26.main() {int a=1,b=2,c=3; if(a<=c) if(b==c)printf(〞a=%d\n〞,a); else printf(〞b=%d\n〞,b); printf(〞c=%d\n〞,c); } 27.int f(int n) {static int m=5; return ++m+n; } main() {int i; for(i=0;i<3;i++)printf(〞%5d〞,f(i)); printf(〞\n〞); } 28.#define SIZE 4 main() {int n[SIZE]={8,3,4,1}; int i, j; for (i=0;i<SIZE;i++) {printf{〞%d〞,n[i]}; for(j=1;j<=n[i];j++)printf(〞*〞); printf(〞\n〞); } } 29.int fm(int a,int b) {if(b==1)return a; else return a+fm(a,b-1); } main() { printf(〞%d\n〞,fm(4,3)); } 四、程序填充題(本大題共3小題,每小題6分,共18分) 30.函數fun 用于計算數組各元素值的平方,主函數調用fun并輸出各元素的值。 void fun(int num,int a[ ]) {int i; for (i=0;i<___________;i++)a[i]=a[i]*a[i]; /*第一空*/ } main() { int i,b[5]={1,2,3,4,5}; fun(5,_______); /*第二空*/ for (i=0;i<5;i++)printf(〞%5d〞,________); /*第三空*/ printf(〞\n〞); } 31.從鍵盤輸入一串字符(“#”作為結束標志),將其寫入文本文件file.dat 中保存。 #include<stdio.h> #include<stdlib.h> main() {char ch; FILE*fp; if((fp=fopen(〞file.dat〞, 〞______〞))= =NULL) /*第一空*/ {printf(〞Can not open file\n〞);exit(0);} ch=getchar(); while (ch!=’# ’) {fputc(________,fp); /*第二空*/ ch=getchar(); } fclose(________); /*第三空*/ } 32.從鍵盤輸入x的值,根據以下公式計算并輸出x和y 的值。
#include<math.h> #include<stdio.h> main() {float x,y; scanf(〞%f〞,______); /*第一空*/ if(x<0)printf(〞input error!\n〞); else {switch ((int)(x/2)) {case 0:y=x;_______; /*第二空*/ case 1: case 2:y=x*x+1;break; case 3: case 4:y=_____________;break; /*第三空*/ default :y=1/(x*x+1); } printf(〞x=%7.2f,y=%10.6f\n〞,x,y); } } 五、程序設計題(本大題共2小題,每小題8分,共16分) 33.從鍵盤輸入100個整數,計算并輸出大于等于零的數的平均值(保留小數點后兩位)。 34.(1)編寫一個計算梯形面積的函數。函數頭是:float area(float t,float b,float h) 其中變量t、b和h分別表示梯形的上底、下底和高。 (2)編寫主函數從鍵盤輸入梯形的上底、下底和高的值,調用上述函數輸出梯形面積 (保留小數點后兩位)。 |
熱門資料下載: |
< |
自考最新熱貼: |
【責任編輯:育路編輯 糾錯】 |
|
|
【育路網版權與免責聲明】 | |
① 凡本網注明稿件來源為"原創"的所有文字、圖片和音視頻稿件,版權均屬本網所有。任何媒體、網站或個人轉載、鏈接、轉貼或以其他方式復制發表時必須注明"稿件來源:育路網",違者本網將依法追究責任; | |
② 本網部分稿件來源于網絡,任何單位或個人認為育路網發布的內容可能涉嫌侵犯其合法權益,應該及時向育路網書面反饋,并提供身份證明、權屬證明及詳細侵權情況證明,育路網在收到上述法律文件后,將會盡快移除被控侵權內容。 |
熱點專題 |