C语言 五邑大学 高潮 练习5 答案.doc_第1页
C语言 五邑大学 高潮 练习5 答案.doc_第2页
C语言 五邑大学 高潮 练习5 答案.doc_第3页
C语言 五邑大学 高潮 练习5 答案.doc_第4页
C语言 五邑大学 高潮 练习5 答案.doc_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

试卷号:TSheet5一、选择题1、执行完下列3条语句后,c指向_。int a,b,*c=&a; int * p=c; p=&b;(A) p(B) c(C) b(D) a答案:D2、下列程序是要对两个整型变量的值进行交换。以下正确的说法是_。int myswap(int p, int q) int t; t=p; p=q; q=t;int main() int a=10, b=20; myswap(&a,&b); return 0;(A) 该程序完全正确(B) 该程序有错,只要将语句myswap(&a, &b); 中的参数改为a,b即可(C) 该程序有错,只要将myswap()函数中的形参p和q以及t均定义为指针(执行语句不变)即可(D) 以上说法都不正确答案:D3、若已定义:char s10; 则在下面表达式中不表示s1的地址的是_。(A) s+1(B) s+(C) &s0+1(D) &s1答案:B4、下面程序段中, for循环的执行次数是 _。 char *s=ta018bc; for( ; *s!=0; s+) printf(*);(A) 9(B) 5(C) 6(D) 7答案:C5、以下不正确的字符串赋初值的方式是_。(A) char *str = string;(B) char *str; str = string;(C) char str = s,t,r,i,n,g;(D) char str7 = s,t,r,i,n,g;答案:C二、填空题1、若有以下定义和语句:int a4=0,10,20,30, *p; p=&a1; 则+(*p)的值是_。答案:112、若有以下定义和语句:int a4=0,10,20,30,*p; p=&a2; 则*-p的值是_。答案:103、设a数组中的数据已按由小到大的顺序存放,以下程序可把a数组中相同的数据删得只剩一个。请填空。int delmore(int a, int m) /m为有序数组a的长度 int i,j,n; n=i=m-1; while(i0) if(*(a+i)=*(a+i-1) for(j= _ ; j=n; j+) *(a+j-1)= *( _ ); n-; i-; return n+1; /返回无重复数据的新的有序数组a的长度答案:i a+j i+1 a+j4、运行以下程序,从键盘上依次输入book和book!后,则该程序段的运行结果是_ 。char a180, a280,*s1=a1,*s2=a2;scanf(%s%s,a1,s2);if( !strcmp(s1,s2) ) printf(*);else printf(#);printf(%d, strlen(strcat(sl,s2);答案:#95、下面程序的功能是将两个字符串连接起来。请填空。char *conj(char *p1,char *p2) char *p=p1; while(*p1)_ ; while (*p2) *p1=_ ; p1+ ; p2+ ; *p1=0; _ ;答案:p1+ *p2 return p +p1 *p2 return p6、下列程序的输出结果是_int main() int n; int fun(char *s1,char*s2); char *p1,*p2; p1=abcxyz; p2=abcwdj; n=fun(p1,p2); printf(%dn, n); return 0;int fun(char *s1,char*s2) while(*s1&*s2&*s2+=*s1+); return *(-s1)-*(-s2);答案:1三、程序操作题1、打开考生文件夹中的程序文件xt0604.c,编写一个函数strToInt( ),其功能是:将一个数字字符串转换为整数。参考代码:考生程序代码#include #include int main()_ /函数声明char str80;printf(请输入数字串:);gets(str);printf(数字串转换成整数后再加1000的结果:%dn,strToInt(str)+1000);return 0;/定义函数strToInt()标准程序代码#include #include int main()int strToInt(char *str); /函数声明char str80;printf(请输入数字串:); gets(str);printf(数字串转换成整数后再加1000的结果:%dn,strToInt(str)+1000);return 0;/定义函数strToInt()int strToInt(char *str)int i,n=*str-0,len=strlen(str);for(i=1;ilen;i+)n=n*10+*(str+i)-0;return n;2、打开考生文件夹中的程序文件xt0607_1.c,编写程序实现如下功能:在主函数中输入一个字符串str1,调用函数strPartCopy将str1中的下标为偶数的字符取出构成一个新的字符串放入字符串str2中,在主函数中输出结果字符串str2。参考代码:考生程序代码#include #include void strPartCopy(char *dest, char *source)int main() char str180,str280; printf(Enter a string(str1): ); gets(str1); strPartCopy(str2,str1); printf(str2: %sn,str2); return 0;标准程序代码#include #include void strPartCopy(char *dest, char *source) int i,len=strlen(source); for(i=0;ilen;i+=2,source+=2,dest+) *dest=*source; *dest=0;int ma

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论