




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、精選優(yōu)質(zhì)文檔-傾情為你奉上習(xí)題解答一、單項選擇題1. 若定義了int n=2, *p=&n, *q=p;則下面【 】的賦值是非法的。A. p=qB. *p=*qC. n=*qD. p=n【答案】D2. 若定義了double *p, a;則能通過scanf函數(shù)給輸入項讀入數(shù)據(jù)的程序段是【 】。A. p=&a; scanf(“%1e”,p);B. *p=&a; scanf(“%1f”,p);C. p=&a; scanf(“%f”,p);D. p=&a; scanf(“%1f”,a);【答案】C3. 若定義了int a10, i=3, *p; p=&a
2、5;下面不能表示為a數(shù)組元素的是【】。A. p-5B. ai+5C. *p+D. ai-5【答案】D4. 若有如下定義:int n5=1,2,3,4,5,*p=n;則值為的表達式是【】。A. *+5B. *(p+5)C. *p+=4D. p+4【答案】C5. 設(shè)變量b的地址已賦給指針變量ps,下面為“真”的表達式是【】。A. b=&psB. b=psC. b=*psD. &b=&ps【答案】C6. 設(shè)有以下定義和語句:int a32=1,2,3,4,5,6,*p3;p0=a1;則*(p0+1)所代表的數(shù)組元素是【】。A. a01B. a10C. a11D. a12【答案
3、】C7. 若定義了char *str=”Hello!”;下面程序段中正確的是【】。A. char c , *p=c; strcpy(p,str);B. char c5, *p; strcpy(p=&c1,&str3);C. char c5; strcpy(c,str);D. char c5; strcpy(p=c+2,str+3);【答案】B8. 若有下面的程序段,則不正確的fxy函數(shù)的首部是【】。main() int a20, n; fxy(n, &a10); A. void fxy(int i, int j)B. void fxy(int x, int *y)C.
4、void fxy(int m, int n)D. void fxy(int p, int q10)【答案】A9. 不合法的帶參數(shù)main函數(shù)的首部形式是【】。A. main(int argc, char *argv)B. main(int i, char *j)C. main(int a, char *b)D. main(int argc, char *argv10)【答案】A10. 設(shè)有如下定義int (*pt)( );則以下敘述中正確的是【】。A. pt是指向一維數(shù)組的指針變量B. pt是指向整型數(shù)據(jù)的指針變量C. pt是一個函數(shù)名,該函數(shù)的返回值是指向整型數(shù)據(jù)的指針D. pt是指向函數(shù)的
5、指針變量,該函數(shù)的返回值是整型數(shù)據(jù)【答案】D二、填空題1. 請指出在int *p3;定義中p是【】。在int (*q)();定義中q是【】?!敬鸢浮俊?】整型指針數(shù)組;【2】指向返回值是整型的函數(shù)指針2. 若有如下定義,則使指針p指向值為20的數(shù)組元素的表達式是p+=。int a6=1,5,10,15,20,25,*p=a;【答案】43. 執(zhí)行以下程序段后,x的值為。int a32=1,2,10,20,15,30;int x, *p;p=&a00;x=(*p)*(*(p+3)*(*(p+5);【答案】6004. 請?zhí)羁諏⒑瘮?shù)補充完整,使得add函數(shù)具有求兩個數(shù)之和的功能。void ad
6、d(int a, int b, 【1】c)【】=a+b;【答案】【1】int *;【2】*c5. 下面程序的功能是輸出數(shù)組中的最大值,由s指針指向該元素,請將該程序補充完整。main() int a8=6,7,2,9,1,10,5,8,*p,*s; for (p=a,s=a;p-a<8;p+)if () s=p; printf(“max:%dn”,*s);【答案】*p>*s6. 下面程序的功能是通過調(diào)用aver函數(shù),計算數(shù)組中各元素的平均值。請將該程序補充完整。float aver(int *a, int n) int i; float x=0.0; for (i=0;i<n
7、;i+)x+=【1】; x=【】; return x;main() int m=2,1,7,4,5,9,6; float avg; avg=aver(m,7); printf(“average=%fn”,avg);【答案】【1】ai或*(a+i);【2】x/n7. 下面函數(shù)的功能是計算指針p所指向的字符串中的字符個數(shù)。請將該程序補充完整。unsigned int MStrlen(char *p)unsigned int len;len=0;for (; *p!= 【1】; p+)len 【2】;return 【3】;【答案】【1】0;【2】+;【3】lenunsigned int MStrle
8、n(char s)char *p=s;while(*p!= 【1】)p+;return 【2】;【答案】【1】0;【2】p-s8. 下面函數(shù)的功能是對兩個字符串進行比較,返回兩個字符串中第一個不同字符的ASCII值之差。例如,字符串“abcd”和“abm”,輸出-10。請將該程序補充完整。int cmp(char *p, char *q) while (*p=*q && *p!= 【1】) p+; q+; return(【】);【答案】【1】0;【2】*p-*q9. 下面程序的功能是輸出命令行的參數(shù),若程序生成的可執(zhí)行文件為file.exe,則執(zhí)行該程序時鍵入命令:file N
9、EW BEIJING程序輸出結(jié)果為:NEW BEIJING請將該程序補充完整。main(int argc, char *argv) while(-argc【1】)argv+;printf(“%s”, 【】);【答案】【1】>0;【2】*argv三、閱讀程序,寫結(jié)果1. #include <stdio.h>void fact(int m, int n, int *p1, int *p2)*p1=2*m+n;*p2=m-n/2;main()int a,b,c,d;a=4; b=7;fact(a,b,&c,&d);printf(“%d%dn”,c,d);【答案】15
10、 12. #include <stdio.h>main()char str=”abcxyz”,*p;for (p=str;*p;p+=2)printf(“%s”,p);printf(“n”);【答案】abcxyzcxyxyz3. #include <stdio.h>main()static int x=1,2,3;int s,i,*p=NULL;s=1;p=x;for(i=0;i<3;i+)s*=*(p+i);printf(“%dn”,s);【答案】64. #include <stdio.h>main()int a=1,2,3,4,5;int *p=N
11、ULL;p=a;printf(“%d, ”,*p);printf(“%d, ”,*(+p);printf(“%d, ”,*+p);printf(“%d, ”,*(p-);printf(“%d, ”,*p+);printf(“%d, ”,*p);printf(“%d, ”,+(*p);printf(“%d, ”,*p);【答案】1, 2, 3, 3, 2, 3, 4, 4, 5. #include <stdio.h>char b=”program”;char *a=”PROGRAM”;main()int i=0;printf(“%c%sn”,*a,b+1);while(putchar
12、(*(a+i)i+;printf(“i=%dn”,i);while(-i)putchar(*(b+i);printf(“n%sn”,&b3);【答案】ProgramPROGRAM i=7margorgram四、編程題1. 編寫函數(shù),對傳送過來的三個數(shù)選出最大和最小值,并通過形參傳回調(diào)用函數(shù)?!緟⒖汲绦颉?include <stdio.h>void find_maxmin(int a,int b,int c,int *max,int *min)*max=*min=a;if (*max<b) *max=b;if (*min>b) *min=b;if (*max<
13、;c) *max=c;if (*min>c) *min=c;return;void main()int a, b, c;int max, min;printf("Please input 3 numbers:");scanf("%d%d%d",&a,&b,&c);find_maxmin(a,b,c,&max,&min);printf("n the max is %d, the min is %dn",max,min);2. 求一個3×3二維數(shù)組主對角線元素之和。【參考程序】#in
14、clude <stdio.h>void main()int a33,i,j;int sum;/輸入3×3二維數(shù)組printf("Please input 3*3 numbers:");for (i=0;i<3;i+)for (j=0;j<3;j+)scanf("%d",&aij);sum=0;/求主對角線元素之和for (i=0;i<3;i+)sum+=aii;printf("n the main diagonal sum is %dn",sum);3. 有n個整數(shù),使前面各數(shù)順序向后移
15、動m個位置,最后m個數(shù)變成最前面m個數(shù),見圖?。寫一函數(shù)實現(xiàn)以上功能,在主函數(shù)中輸入n個整數(shù)和輸出調(diào)整后的n個數(shù)。 n-m m圖 6-22 題3示意【參考程序】#include <stdio.h>#define N 5void move_num(int *a, int m)int i,bN;/將a數(shù)組復(fù)制到b數(shù)組for (i=0;i<N;i+)bi=ai;/將b數(shù)組的元素移動m位復(fù)制到a數(shù)組for (i=0;i<N;i+)a(i+m)%N=bi;void main()int aN,m,i;printf("Please input %d numbers:&quo
16、t;,N);for (i=0;i<N;i+)scanf("%d",&ai);printf("nPlease input move number:");scanf("%d",&m);move_num(a,m);printf("nafter move:");for (i=0;i<N;i+)printf("%d ",ai);4. 用指針參數(shù)編寫一個字符串連接的函數(shù) radd(char *s,char *t,int f),其中f為標(biāo)志變量,當(dāng)f=0時,將s指向的字符串連接到t
17、指向的字符串的后面;當(dāng)f=1時,將t指向的字符串連接到s指向的字符串的后面。并寫出調(diào)用該函數(shù)的完整程序?!緟⒖汲绦颉?include <stdio.h>#include <string.h>void radd(char *s,char *t,int f)char *tmp;int i=0;if (f=0) /標(biāo)志變量為0,交換s和t的指向tmp=t;t=s;s=tmp;while (*s!='0') s+;/將s移動到字符串末尾while (*(t+i)!='0') /將t字符串復(fù)制到s中*(s+i)=*(t+i);i+; *(s+i)=
18、0;/加上字符串結(jié)束標(biāo)志void main()char s40, t40;int f;printf("Please input 2 strings:");gets(s);gets(t);printf("Please select string add direction:");scanf("%d",&f);radd(s,t,f); printf("nafter string add:");puts(s);puts(t);5. 編寫程序,利用指向函數(shù)的指針實現(xiàn)求1到n的和與階乘?!緟⒖汲绦颉?include <stdio.h>long n_sum(int n) /求1到n的和long s=0;int i=0;for (i=1;i<=n;i+)s=s+i;
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 小食品銷售管理制度
- 投標(biāo)部獎懲管理制度
- 柴油發(fā)電房管理制度
- 核準(zhǔn)證使用管理制度
- 檢測用試劑管理制度
- 檢驗章使用管理制度
- 模具庫模具管理制度
- 殯葬館司機管理制度
- 毒餌站投放管理制度
- 民辦非企業(yè)管理制度
- 一次二次系統(tǒng)、一次二次設(shè)備介紹課件
- 金屬非金屬礦山安全標(biāo)準(zhǔn)化講座課件
- 八年級名著導(dǎo)讀-給青年的十二封信
- 2023版?zhèn)€人征信模板簡版(可編輯-帶水?。?/a>
- 2023-2024學(xué)年浙江省慈溪市小學(xué)語文六年級期末評估試題附參考答案和詳細解析
- 2023年廣東廣州市公安局招考聘用刑事技術(shù)助理70人筆試題庫含答案解析
- 海洋之歌(英文)
- 2023年05月福建廈門大學(xué)嘉庚學(xué)院圖書館館員公開招聘1人筆試題庫含答案解析
- 招標(biāo)代理項目考核評分標(biāo)準(zhǔn)表
- 泌尿系統(tǒng)常見疾病超聲檢查
- 《蛇傷急救與防治》
評論
0/150
提交評論