《C语言程序设计》教材习题参考答案

Similar documents
《C语言程序设计》第2版教材习题参考答案

《C语言程序设计》教材习题参考答案

C++ 程序设计 告别 OJ1 - 参考答案 MASTER 2019 年 5 月 3 日 1

Generated by Unregistered Batch DOC TO PDF Converter , please register! 浙江大学 C 程序设计及实验 试题卷 学年春季学期考试时间 : 2003 年 6 月 20 日上午 8:3


网C试题(08上).doc

Microsoft Word _1-2.doc

没有幻灯片标题

untitled


download.kaoyan.com_2006ÄêÌì½ò¹¤Òµ´óѧ¸ß¼¶ÓïÑÔ³ÌÐòÉè¼Æ£¨409£©¿¼ÑÐÊÔÌâ

untitled

B4C2

2006..,1..,2.,.,2..,3..,3 22..,4..,4 :..,5..,5 :..,5..,6..,6..,8..,10 :..,12..,1..,6..,6.., ,5,:..,1 :..,1 :..,1 :..,2..,2..,3 :..,1 :..,1..,1.

一、审计的分类

zyk00168ZW.PDF

. (A) (B) (C) A (D) (E). (A)(B)(C)(D)(E) A

Ps22Pdf

untitled

5. 閱 讀 下 文, 推 斷 內 最 適 合 填 入 的 詞 語 依 序 為 何? 人 也 真 是 一 個 絕 字, 一 邊 向 左, 一 邊 向 右, 一 副 的 樣 子, 偏 又 相 連 著, 各 說 各 話 各 走 各 路, 卻 又 人, 這 麼 一 個 簡 單 的 字, 竟 包 含 如 此

CC213

Microsoft Word - temp71.doc

Microsoft PowerPoint - 4. 数组和字符串Arrays and Strings.ppt [兼容模式]

校园之星

エスポラージュ株式会社 住所 : 東京都江東区大島 東急ドエルアルス大島 HP: ******************* * 关于 Java 测试试题 ******

6 C51 ANSI C Turbo C C51 Turbo C C51 C51 C51 C51 C51 C51 C51 C51 C C C51 C51 ANSI C MCS-51 C51 ANSI C C C51 bit Byte bit sbit

2012年新闻出版产业分析报告

C 1


NOWOER.OM m/n m/=n m/n m%=n m%n m%=n m%n m/=n 4. enum string x1, x2, x3=10, x4, x5, x; 函数外部问 x 等于什么? 随机值 5. unsigned char *p1; unsigned long *p

《C语言程序设计》教材习题参考答案

( ) A B C D ( ) A B C D A B C D A B C D A 8750 B C 6250 D 5000 A B C D A B C D

Ps22Pdf

<4D F736F F D20C9CFBAA3B2C6BEADB4F3D1A C4EAC9CFB5B3D1B5B0E0BDE1D2B5C0EDC2DBCCE2BFE2A3A8746F20D1A7D4B1A3A92E646F6378>

Microsoft Word 年9月二级C真卷.doc

Ps22Pdf

chap07.key

Ps22Pdf

鼠年运程

untitled

Ps22Pdf

FY.DOC

Microsoft Word - 第5-7章

untitled

期中考试试题讲解


Ps22Pdf

(Microsoft Word - \265\332\276\305\306\332)

* P3-5 招 募 2016 年 度 關 愛 大 使 (P3-5) 陳 淑 儀 26/4/ * P6 學 生 沖 印 畢 業 照 片 (P6) 朱 筱 玲 26/4/ * P4-6 招 募 學 生 及 家 長

钢铁金相图谱

2012年 MBA系统班数学应用题部分

untitled

untitled

OOP with Java 通知 Project 2 提交时间 : 3 月 14 日晚 9 点 另一名助教 : 王桢 学习使用文本编辑器 学习使用 cmd: Power shell 阅读参考资料

Microsoft Word 生物02.doc

新・解きながら学ぶC言語

第5章修改稿

数 学 高 分 的 展 望 一 管 理 类 联 考 分 析 第 一 篇 大 纲 解 析 篇 编 写 : 孙 华 明 1 综 合 能 力 考 试 时 间 :014 年 1 月 4 日 上 午 8:30~11:30 分 值 分 配 : 数 学 :75 分 逻 辑 :60 分 作 文 :65 分 ; 总


第一部分 公共基础知识

C/C++ - 文件IO

(Microsoft Word A-C\244W\270\374\272\364\255\266.doc)

untitled

䥄 ‱‰⁝‍਀㙁㡂㕄㡃䉂㔾w)

Microsoft Word - 功医检测问&答

《C语言程序设计》教材习题参考答案

<4D F736F F D20C1E3B5E3CFC2D4D8C4A3B0E52E646F63>

2008年4月全国计算机等级考试二级C语言真题(含答案)

2015年计算机二级(C语言)模拟试题及答案(四)

新・明解C言語入門編『索引』

注册会计师任职资格检查办法

FZUBRIDGE

保母人員丙級應檢資料第二部份 doc

int *p int a 0x00C7 0x00C7 0x00C int I[2], *pi = &I[0]; pi++; char C[2], *pc = &C[0]; pc++; float F[2], *pf = &F[0]; pf++;

( CIP ) /. - :, ( ) ISBN , -. K CIP ( 1999 ) * ( 6 ) : * ISBN :

2013 C 1 # include <stdio.h> 2 int main ( void ) 3 { 4 int cases, a, b, i; 5 scanf ("%d", & cases ); 6 for (i = 0;i < cases ;i ++) 7 { 8 scanf ("%d %d

内 容 提 要 指 针 持 久 动 态 内 存 分 配 字 符 串 ( 字 符 数 组 ) 2

zt

untitled

第一章三角函数 1.3 三角函数的诱导公式 A 组 ( ) 一 选择题 : 共 6 小题 1 ( 易诱导公式 ) 若 A B C 分别为 ABC 的内角, 则下列关系中正确的是 A. sin( A B) sin C C. tan( A B) tan C 2 ( 中诱导公式 ) ( ) B. cos(

<4D F736F F D20B8DFB9A4CAD4CCE2BCAFA3A A3A9A3A8CDF5DEA5D5FBC0EDB3C2CFFEB6ABC9F3D4C434D4C231C8D5B8FCD5FDA3A92E646F63>

《侵权法》综合练习题

CIP 1500 / ISBN X Ⅰ. Ⅱ. Ⅲ. Ⅳ. D CIP edu. cn


臺 灣 警 察 專 科 學 校 專 科 警 員 班 第 三 十 二 期 ( 正 期 學 生 組 ) 新 生 入 學 考 試 國 文 科 試 題 壹 單 選 題 :( 一 ) 三 十 題, 題 號 自 第 1 題 至 第 30 題, 每 題 二 分, 計 六 十 分 ( 二 ) 未 作 答 者 不 給

( CIP ) /. 2 ( ). :, 2003 ( ) ISBN R CIP ( 2003 ) ( 2 ) ( ) 850 mm 1168mm 1 /

Microsoft PowerPoint - 5. 指针Pointers.ppt [兼容模式]


2001年(下)局域网技术与组网工程试卷答案

《C语言程序设计》第2版教材习题参考答案

<4D F736F F D203937B6AFA4A4B2C4A454A6B8BCD2A6D2C344A5D82E646F63>


OHSMS考试大纲 终.doc

3. 給 定 一 整 數 陣 列 a[0] a[1] a[99] 且 a[k]=3k+1, 以 value=100 呼 叫 以 下 兩 函 式, 假 設 函 式 f1 及 f2 之 while 迴 圈 主 體 分 別 執 行 n1 與 n2 次 (i.e, 計 算 if 敘 述 執 行 次 數, 不

C/C++语言 - 运算符、表达式和语句


,,,,,,,,,,,,, :,, ;,,,,, ( ),,,, : ( ) ; ( ) ; ( ) ( ) ; ( ) ( A ) ; ( ) ( ),,,,,,, 80

立 志 于 打 造 最 贴 近 考 生 实 际 的 辅 导 书 计 算 机 考 研 之 数 据 结 构 高 分 笔 记 率 辉 编 著 周 伟 张 浩 审 核 讨 论 群 :

Ps22Pdf

e yx = ( y / y) /( x / x) e yx

Transcription:

教材名称 : C 语言程序设计 ( 第 1 版 ) 黄保和 江弋编著清华大学出版社 ISBN:978-7-302-13599-9, 红色封面 答案制作时间 :2011 年 2 月 -5 月 一 选择题 1. 设已定义 int a, * p, 下列赋值表达式中正确的是 :C)p=&a 2. 设已定义 int x,*p=&x;, 则下列表达式中错误的是 :B)&*x 3. 若已定义 int a=1,*b=&a;, 则 printf( %d \n,*b); 的输出结果为 :A) a 的值 4. 设已定义 int x,*p,*pl=&x,*p2=&x;, 则下列表达式中错误的是 :C)p=p1+p2. 5. 设有函数定义 void p(int *x)printf( %d\n,*x); 和变量定义 int a=3;, 则正确的函数 调用是 :C)p(&a) 6. 函数 int fun(char * x)char * y=x; while(*y)y++;return(y-x); 的功能是 A) 求字 符串的长度 7. 运行一下程序, 输出结果为 :B)5 6 int fun (int a,int *b) a++;(*b)++; return a+*b; void main() int x=1,y=2; Printf( %d,fun(x,&y)); Printf( %d,fun(x,&y)); 8. 运行以下程序, 输出结果为 :C)58 #include<stdio.h> Int * fun(int a,int *b) a++;(*b)++; *b=a+*b; return b; Void main() Int x=1,y=2,*z; Z=fun(x,&y); Printf( %d,*z); Z=fun(x,&y); Printf( %d,*z); 9. 若已定义 int a[]=1,2,3,4,*p=a;, 则下面表达式中值不等于 2 的是 C)*(++a) 第 1 页 / 共 7 页

10. 若已定义 int a[]=1,2,3,4,*p=a+1;, 则 p[2] 的值为 C)4 11. 设已定义 int x[4][10],*p=x[0];, 则下列表达式中的值为整形的是 B)*(p+1) 12. 设已定义 char s[]= ABCD ;, printf( %s,s+1) 的值为 C)BCD 13. 设已定义 char str[]= abcd,*ptr=str;, 则 *(prt+4) 的值为 B)0 14. 下面对字符串变量的初始化或赋值操作中, 错误的是 C)char a[10];a= OK ; 15. 设已定义 char *ps[2]= abc, 1234 ;, 则以下叙述中错误的是 A)ps 为指针变 量, 它指向一个长度为 2 的字符串数组 16. 设已定义 struct int a,b; s,*ps=&s;, 则错误的结构体成员引用是 C)*ps.a 17. 设已有以下定义, 则表达式的值为 2 的是 A)k=++p->data struct st int data; st *link; a[3]=1,a+1,3,a+2,5,0,*p=a; 二 编程题 1. 输入 3 个字符串, 输出其中最大的字符串 ( 用字符指针 ) #define str_count 3 #define str_length 100 char a[str_count][str_length],*p; printf(" 请输入 3 个字符串 :"); for(i=0;i<str_count;i++) scanf("%s",a[i]); p=a[0]; for(i=1;i<str_count;i++) if(strcmp(p,a[i])<0) p=a[i]; printf(" 最大的字符串为 :%s",p); 2. 定义一个函数, 函数的功能是求已知半径的圆的周长和面积 要求把半径 周长和面积设置成函数参数 第 2 页 / 共 7 页

#define pi 3.1415926 double r; printf(" 请输入半径 :"); scanf("%lf",&r); double c,s; void circle(double r, double *,double *); circle(r,&c,&s); printf(" 圆的周长和半径分别为 :%lf,%lf",c,s); void circle(double r,double *c,double *s) *c=2*pi*r; *s=pi*r*r; 3. 定义函数 max, 函数参数为 3 个字符串, 函数返回值最大的字符串 #define str_length 100 #define str_count 3 char a[str_count][str_length]; printf(" 请输入三个字符串 :\n"); for(i=0;i<str_count;i++) scanf("%s",a[i]); char * max(char * a1,char *a2,char *a3); printf(" 最大的字符串是 :%s",max(a[0],a[1],a[2])); char * max(char * a1,char *a2,char *a3) 第 3 页 / 共 7 页

char * p; p=a1; if(strcmp(p,a2)<0) p=a2; if(strcmp(p,a3)<0) p=a3; return p; 4. 自己定义字符串复制函数, 然后调用之 char *s="test"; char *o; char * str_copy_self(char *s); o=str_copy_self(s); printf("%s",o); char * str_copy_self(char *s) int str_length=strlen(s); char *o=(char *)malloc((str_length+1)*sizeof(char)); for(i=0;i<str_length;i++) o[i]=s[i]; o[i]='\0'; return o; 5. 定义一个函数, 函数参数为一维数组 ( 用指针表示 ), 函数返回数组元素的平均值 第 4 页 / 共 7 页

double arr[]=1,2,3,4,5,6,7,8,9,10; double ave(double arr[],int arr_len); printf("%lf",ave(arr,10)); double ave(double arr[],int arr_len) double res=0; for(i=0;i<arr_len;i++) res+=arr[i]; res=res/arr_len; return res; 6. 定义一个函数, 删除字符串中第 k 个字符开始的 m 个字符, 例如删除字符串 abcde 第 2 个字符开始的 3 个字符, 则删除后结果为 ae; 又如删除字符串 abcde 第 4 个字符开始的 5 个字符, 则删除后结果为 abc; char str[]="abcde"; void str_pruning(char * str,int begin_pos,int pruning_count); str_pruning(str,4,5); printf("%s",str); void str_pruning(char * str,int begin_pos,int pruning_count) int str_len=strlen(str); if(begin_pos>=str_len) str[0]='\0'; 第 5 页 / 共 7 页

else if((begin_pos-1+pruning_count)>=str_len) str[begin_pos-1]='\0'; else int i=0; while(1) str[begin_pos+i-1]=str[begin_pos+pruning_count+i-1]; if(str[begin_pos+pruning_count+i-1]=='\0') break; i++; 7. 在字符串中删除所有指定字符 ( 如把字符串 teacher 中的 e 字符删除, 得到 tachr), 使用子函数和字符指针 char str[]="teacher"; void char_punching(char * str, char l); char_punching(str,'e'); printf("%s",str); void char_punching(char * str, char l) int c=0; int str_len=strlen(str); for(i=0;i<str_len;i++) if(str[i]==l) 第 6 页 / 共 7 页

c++; else str[i-c]=str[i]; str[str_len-c]='\0'; 8. 求二维数组的最大元素值及最大元素的位置 ( 用指针法引用数组元素 ) int a[3][3]=1,2,333,4,15,6,7,8,9; int x=3,y=3,i,j; int px=0,py=0; int *p,*p_max; p_max=a[0]; for(i=0;i<x;i++) p=a[i]; for(j=0;j<y;j++) printf("%d\n",*p); if(*p_max<*p) px=i; py=j; p_max=p; p++; printf("%d\n",*p_max); ================ 此后无内容 =============== 第 7 页 / 共 7 页