C语言上机题库百科园第精选章!南信大!_第1页
C语言上机题库百科园第精选章!南信大!_第2页
C语言上机题库百科园第精选章!南信大!_第3页
C语言上机题库百科园第精选章!南信大!_第4页
C语言上机题库百科园第精选章!南信大!_第5页
免费预览已结束,剩余7页可下载查看

下载本文档

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

文档简介

1、单选若已定义 chars10 ;则在下面表达式中不表示s1 的地址是()。A.&s1B.&s0+1+1 +下面程序段的运行结果是()。chara= ” language ”,*p;%c”,*p-32); p+ ; p=a;while(*p!='u') printf(下面能正确进行字符串赋值操作的是()5='A','B','C','D','E'5="ABCDE"*s;s="ABCDE"*s;scanf("%s",s);设 p1

2、和 p2是指向同一个字符串的指针变量,c为字符变量,则以下能正确执行并得到有意义的结果的赋值语句是() 。=c;=*p1+*p2;=p2;=*p1*(*p2);已有函数 max(a,b) ,为了让函数指针变量p指向函数max,正确的赋值方法是()A.*p=max(a,b);B.*p=max;=max;=max(a,b);以下正确的叙述是() 。语言允许main函数带形参,且形参个数和形参名均可由用户指定B. 当 main函数带有形参时,传给形参的值只能从命令行中得到C.若有说明:intmain(intargc,char*argv), 则 argc 的值必须大于1语言允许main函数带形参,形参

3、名只能是argc和 argv若有定义:int(*p)4; 则标识符p() 。A. 是一个指针数组名B. 定义不合法C.是一个指向整型变量的指针D.是一个指针,它指向一个含有四个整型元素的一维数组设有程序段:chars="china"char*p;p=s; 则下面叙述正确的是()。A.*p与 s0 相等B. 数组s中的内容和指针变量p中的内容相等数组长度和p所指向的字符串长度相等和 p完全相同下面程序段的运行结果是() 。char*s= ” abcde” ;s+=2;printf(“%s”,s);A. 字符 'c' 的地址B. 不确定D.字符 'c&#

4、39; 下面判断正确的是()。10="china" 等价于 charstr10;str="china"4="abc",d4="abc" 等价于 charc4=d4="abc"*a="china" 等价于char*a;*a="china"*s="china" 等价于char*s;s="china"设有程序段:chars= ” china ”;char*p;p=s; 则下面叙述正确的是()A. 数组s中的内容和指针变量p

5、中的内容相等B.*p与 s0 相等数组长度和p所指向的字符串长度相等和 p完全相同已有变量定义和函数调用语句:inta=25;print_value(&a); 下面函数的输出结果是()voidprint_value(int*x) printf(“%dn”,+*x); 若有说明:int*p,m=5,n; 以下程序段正确的是()=&n;*p=m;=&n;scanf("%d",&p);=&n;scanf("%d",*p);("%d",&n);*p=n;变量的指针,其含义是指该变量的()A. 值

6、B. 地址C.一个标志D.名已有定义intk=2;int*ptr1,*ptr2; 且 ptr1 和 ptr2 均已指向变量k,下面不能正确执行的赋值语句是()=k;=*ptr1+*ptr2;=*ptr1*(*ptr2);=ptr2程序设计/* 请编写函数fun, 该函数的功能是: 判断字符串是否为回文, 若是则函数返回1, 主函数中输出 "YES", 否则返回 0, 主函数中输出"NO"。回文是指顺读和倒读都一样的字符串。例如, 字符串LEVEL是回文, 而字符串123312就不是回文。注意 : 部分源程序给出如下。请勿改动main函数和其他函数中的任何

7、内容, 仅在函数fun 的花括号中填入所编写的若干语句。试题程序 :*/#include<>#defineN80intfun(charstr)/*Begin*/*End*/voidmain()charsN;FILE*out;chartest80="1234321","123421","123321","abcdCBA"inti;printf("Enterastring:");gets(s);printf("nn");puts(s);if(fun(s)printf(

8、"YESn");elseprintf("NOn");/*/ out=fopen("debug","w");for(i=0;i<4;i+)if(fun(testi)fprintf(out,"YESn");elsefprintf(out,"NOn");fclose(out);/*/intfun(charstr)inti,n=0,fg=1,j=0;while(strj)n+;j+;for(i=0;i<n/2;i+)/* 循环比较字符*/if(stri=strn-1-i)

9、;/* 相同 , 什么都不作*/else/* 不同 , 直接跳出循环*/fg=0;break;returnfg;/* 请编写函数fun, 该函数的功能是: 统计一行字符串中单词的个数, 作为函数值返回。一行字符串在主函数中输入, 规定所有单词由小写字母组成, 单词之间有若干个空格隔开 , 一行的开始没有空格。注意 : 部分源程序给出如下。请勿改动main函数和其他函数中的任何内容, 仅在函数 fun 的花括号中填入所编写的若干语句。试题程序:*/#include<>#include<>#defineN80 intfun(char*s) /*Begin*/*End*/vo

10、idmain()FILE*wf;charlineN;intnum=0;printf("Enterastring:n");gets(line);num=fun(line);printf("Thenumberofwordis:%dnn",num);/*/ wf=fopen("d:","w");fprintf(wf,"%d",fun("Thisisabigcar");fclose(wf);/*/ 【参考代码】inti,j=0;for(i=0;si!='0'i+)if

11、(si!=''&&(si+1=''|si+1='0')/* 如果一个字母的下一个字符为空格或者结束标记, 则表示一个单词结束*/ j+;returnj;/* 返回单词个数*/* 假定输入的字符串中只包含字母和*号。请编写函数fun, 它的功能是: 除了字符串前导的 *号之外 , 将串中其他*号全部删除。在编写函数时, 不得使用C语言提供的字符串函数。例如, 若字符串中的内容为*A*BC*DEF*G*, 删除后 , 字符串中的内容则应当是 *ABCDEFG。注意: 部分源程序给出如下。请勿改动main函数和其他函数中的任何内容, 仅

12、在函数 fun 的花括号中填入所编写的若干语句。试题程序:*/#include<>#include<>voidfun(char*a) /*End*/ /*Begin*/voidmain()chars81;FILE*in,*out;inti;printf("Enterastring:n");gets(s);fun(s);printf("Thestringafterdeleted:n");puts(s);/*/ in=fopen("","r");out=fopen("debug&quo

13、t;,"w");for(i=0;i<8;i+)fscanf(in,"%s",s);fun(s);fprintf(out,"%sn",s);fclose(in);fclose(out);/*/【参考代码】inti=0;char*p=a;while(*p&&*p='*')ai=*p;i+;p+;while(*p)if(*p!='*')ai=*p;i+;p+;ai='0'/* 假定输入的字符串中只包含字母和*号。 请编写函数fun, 它的功能是: 将字符串中的前导 *号全

14、部删除, 中间和后面的*号不删除。例如, 若字符串中的内容为*A*BC*DEF*G*, 删除后 , 字符串中的内容则应当是 A*BC*DEF*G* 。注意: 部分源程序给出如下。请勿改动main函数和其他函数中的任何内容, 仅在函数 fun 的花括号中填入所编写的若干语句。试题程序:*/#include<>voidfun(char*a)/*Begin*/*End*/ voidmain()FILE*wf,*in;inti;chars81,t81="*A*BC*DEF*G*"printf("Enterastring:n");gets(s);fun

15、(s);printf("Thestringafterdeleted:n");puts(s);/*/ in=fopen("","r");wf=fopen("debug","w");for(i=0;i<8;i+)fscanf(in,"%s",t);fun(t);fprintf(wf,"%sn",t);fclose(in);fclose(wf);/*/【参考代码】char*p=a;while(*p='*')p+;/* 指针p指向字符串第一个

16、字母*/for(;*p!='0'p+,a+)*a=*p;*a='0'/* 请编一个函数fun(char*s), 该函数的功能是把字符串中的内容逆置。例如 , 字符串中原有的字符串为abcdefg, 则调用该函数后, 串中的内容为gfedcba 。注意 : 部分源程序给出如下。请勿改动main函数和其他函数中的任何内容, 仅在函数 fun 的花括号中填入所编写的若干语句。试题程序 :*/#include<>#include<>#defineN81voidfun(char*s) /*End*/ /*Begin*/voidmain()chara

17、N;FILE*out;printf("Enterastring:");gets(a);printf("Theoriginalstringis:");puts(a);fun(a);printf("n");printf("Thestringaftermodified:");puts(a);strcpy(a,"HelloWorld!ThisisafirstCprogram!"); fun(a);/*/out=fopen("d:","w");fprintf(out

18、,"%s",a);fclose(out);/*/ 【参考代码】charch;inti,m,n;i=0;m=n=strlen(s)-1;while(i<(n+1)/2)ch=si;si=sm;sm=ch;i+;m-;/* 请编写函数fun, 其功能是: 将两个两位数的正整数a、 b合并形成一个整数放在c中。合并的方式是: 将 a数的十位和个位依次放在c数的千位和十位上,b数的十位和个位依次放在 c数的百位和个位上。例如, 当 a=45,b=12, 调用该项函数后,c=4152。注意: 部分源程序给出如下。请勿改动main函数和其他函数中的任何内容, 仅在函数 fun 的花括号中填入所编写的若干语句。试题程序:*/#include<>#include<>voidfun(inta,intb,long*c)/*Begin*/*End*/voidmain()inta,b;longc;FILE*out;printf("

温馨提示

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

评论

0/150

提交评论