- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
                        查看更多
                        
                    
                语言复习题指针结构体.doc
                    C语言复习题_指针结构体
一、选择
1、	若有以下定义:char s[20]=programming/*ps=s;则不能代表字符o的表达式是A。
ps+2	B) s[2]	C) ps[2]	D) ps+=2,*ps
2、	若有以下定义和语句:int a[10]={l,2,3,4,5,6,7,8,9,10},*p=a;则不能表示a数组元素的表达
式是旦。
*p	B)a[10]	C) *a	D) a[p-a]
3、	己知int *p,a; p=a;这里的运算符的含义
位与运算	B)逻辑与运算	C)取指针内容	D)取变量地址
4、	定义结构体如下:
struct student {int num;
char name[4]; int age;
};
则 printf( “%d” ,sizeof(struct student})的结果为:
5、	若有定义如下:int i=3,*p=i;显示i的值的正确语句是旦。
printf(%d,p};
printf(%d,*p);
printf(%p、*p);
printf(%p,p);
6、	在定义结构体时,下列叙述正确的是垒。
系统不会分配空间
系统会按成员大小分配空间
系统会按最大成员大小分配空间
以上说法均不正确
7、	指针是一种D。
A)标识符 B)变量 C)运算符 D) A存地址
8、	定义 struct s {int x; char y[6];} si;,请问正确的赋值是
sl.y=” abc” ;
sl-〉y=” abc” ;
strcpy(sl.y,” abc”
sl.strcpy(y,” abc”);
9、	已知定义“intx =	则合法的赋值表达式是厶。
A) p = x B) p = x C) *p = x D) *p = *x
10、在C语句中,后跟指针变量名,表示该指针变量的
A)值 B)别名 C)地址 D)类型
二、程序填空
1、下面程序的功能是实现数组元素中值的逆序。
include stdio.h
void invertfint *s, int num);
int main()
{
int i, n=5, a[5]={l,2,3,4,5};
: //调用函数逆序 for(i=0;i5;i++)
://输出逆序后的数组元素
return 0;
}
void invert(int *s, int num)
{
int *t,k; t=s+num;
while(	3	)
{
k=*s;
*s=*t;
*t=k;
4	?,
5	;
}
}
答:(1) invert(a,n-l); (2) printf(%4d,a[i] ⑶ st (4) s++ (5) t-
三、程序改错
1、以下程序的功能是:输入两实参a, b,调用函数fun后,输出a,b的值己进行交换。 仔细阅读程序,请先指出错误行号,并改正使它能得出正确的结果。
注意:不要改动main函数,不得增或删行,也不得更改程序的结构!
①
#includestdio.h
int main()
②
void fun(int *x, *y)
{int a,b;
③
{int t;
⑦ printf(Entera,b:);
④
t=x;
⑧ scanf(%d%dza,b);
⑤
x=y;
⑨ printf(a=%d b=%d\n\n/a,b);
⑥
y=t;
? fun(a?b);
}
printf(a=%d b=%d\n\n,a,b);
return 0; }
1、	第 2 行改为 int fun(int *x, int *y)
2、	第4行改为t=*x;
3、	第5行改为*x=*y;
4、	第6行改为*y=t;
4、	第 8 行改为 scanf(%d%d,a/b);
5、	第 10 行改为 fun(a, b);
四、写出程序运行结果
1、仔细阅读下面的程序,假设时间a是07:59:59,时间b是08:10:02,请写出程序的输入和 输山结果。
#include stdio.h
struct TIME {
int hour, minute,second;
};
void InputTime(struct TIME *p)
{
scanf(%d : %d : %d, p-〉hour,p-minute, p-second);
}
void OutputTime(struct TIME p)
{
printf(%02d:%02d:%02d,, p.hour, p.minute, p.second);
}
int Sub(struct TIME x, struct TIME y)
{
int tl = x.hour * 3600 + x.minute * 60 + x.second; int t2 = y.hour * 3600 + 
                您可能关注的文档
最近下载
- 第三单元习作:写观察日记(技法+范文+素材)统编版 四年级语文上册单元作文提升精讲.docx VIP
- 测绘工程监理讲解.ppt
- 四川省成都市金牛区成都外国语学校2023-2024学年九年级上学期9月月考数学试题(无答案).docx VIP
- 解读-GBT 228.1-2021 金属材料 拉伸试验 第1部分:室温试验方法.pdf VIP
- 雷顿三坐标操作手册.pdf
- 22G101 三维彩色立体图集.docx VIP
- 【资本深探】周亚辉投资笔记全集.pdf VIP
- DB13(J)_T 8357-2020 十字槽复合保温板应用技术标准(2024年版).docx
- 鲁教五四制六年级数学上册第一章达标检测卷附答案.doc VIP
- 企业绩效评价标准值2024.pdf VIP
 原创力文档
原创力文档 
                        

文档评论(0)