C语言试题资料答案.doc
《C语言试题资料答案.doc》由会员分享,可在线阅读,更多相关《C语言试题资料答案.doc(7页珍藏版)》请在咨信网上搜索。
C语言试题 一、基础知识填空题 1、一个C程序由若干函数构成,其中有且只能有一个 主 函数。 2、C语言中的基本数据类型有整形、字符型、 实型 和 枚举类型 。 3、若变量a是数字字符,将其转换成相应的数值用什么语句 a=a+48 。 4、C语言中的数据类型有基本类型、 构造类型 和 指针 以及 空类型 。 5、若变量a是小写字母,将其转换成相应的大写字母用什么语句 a=a-65 。 6、将数学表达式写成C语言表达式为 y=sin(a*x)+ln(a+x)+exp(a*x) 。 7、若有定义union st{ char name[20]; float score; int age;}; 则sizeof (union st ) 为 20 。(在TC环境下) 8、有定义int td[10]={0,1,2,3,4,5,6,7,8,9}, *p, i=4; 若执行语句: p=td; printf(“%d”, *(p+i)); 输出结果是 4 。 1. 在C语言中,关键字都用( 大写 ){大写或小写};C语言是通过有且仅有一个( 主函数 )。 2. C语言中构造类型数据有哪三种:( 数组 )、( 结构体 )、( 公用体 )。 3. 若k=sizeof(int),I=sizeof(float),则k=( 2 ),I=( 4 )。 4. 符号’&&’是( 逻辑与 )运算符,&a是指( 取a的地址 )。 5. 能表述20<x<30或x<-100的C语言表达式是( 20<x&&x<30||x<-100 )。 6. 若有以下程序段: int t,x=2,y=1; t=(x=0)&&(y=0); 则t=( 0 ),x=( 0 ),y=( 1 )。 7. 若有以下程序片段: char str[] = “ab\\\n\0””; printf(“%d”,strlen(str)); 则输出结果是( 6 )。 如果缺省函数的类型,编译器默认它为______int________类型。 3.当函数的类型和返回值的类型不一致是,则以____ 函数________类型为准。 5.已知x=3,y=2,循环while(x == y){x--; continue; } 执行 0 次。 6. 若有定义union student { char name[20]; float score; }; 则sizeof (union student ) 为 20 。 二、单选题 下面哪个是合法的变量名: A 。 (A)f_max (B)typedef (C)tr?ue (D)5ac 2、下列常数中哪个是不符合C语法规定的 B (A)‘\’ (B)‘\101’ (C)0x1e (D)1.e5 3、C语言程序是由 C 组成的。 (A).子程序 (B) .过程 (C) .函数 (D)主程序和子程序 4、C源程序中不能表示整形常数的数制是 A (A)二进制 (B) 八进制 (C) 十进制 (D)十六进 当定义一个共用体变量时系统分配给它的内存是( A )。 A. 各成员所需内存的总和 B. 成员中占内存量最大者所需的容量 C. 结构中第一个成员所需内存量 D. 结构中最后一个成员所需内存量 判断char类型的变量cl是否为数字字符的正确表达式为( B ) A.(cl>=0)&&(c1<=9) B .(c1>='0')&&(c1<=’9’) C.'0'<=c1<=’9' D .(c1>='0')||(cl<='9’) 10. 设有如下枚举类型定义: enum language{Basic,Assembly,Ada=100,COBOL,Fortran}; 请问枚举变量Assembly的值是( A )。 若枚举类型定义中没有指定元素的值,则整型常量值从0开始依次递增, (A)1 (B)0 (C)101 (D)99 执行语句for(i=0;i<1O;i++);后,变量i的值为( A ) A. 1O B . 9 C . O D . 1 15.下列语句的循环次数为( A ) int x=5; while(x){x--;break;} A. 1; B .5 C .6 D .无限次 4、若对两个数组a和b进行初始化 char a[]=〞abc〞;char b[]={‘a’,’b’,’c’}; 则下列叙述正确的是 D 。 (A)a与b数组完全相同 (B) a与b数组长度相同 (C) a与b数组都存放字符串 (D) 数组a比数组b长度长 5、使下列程序段输出”123,456,78”由键盘输入数据,正确的输入是 C 。 int i,j,k; scanf(“%d,%3d%d”,&i,&j,&k); printf(“%d,%d,%d\n”,i,j,k); A.12345678 B .123,456,78 C .123,45678 D .123,*45678 6、下列语句中,合法的定义是 C 。 (A)int a[]="string"; (类型不匹配) (B) int a[5]={0,1,2,3,4,5};(个数有6个) (C)char *s="string"; (D) char a[20];a=”string”;(a是地址) 7、有以下程序 int a[3][4],*p=a[0]; 则以下 D 不是对a数组中第i行,第j列元素值的正确引用。 (A) a[i][j] (B) *(*(a+i)+j) (C) *(p+(i*4+j)) (D)*(a+i)+j 三、程序阅读填空题 1、 #include “stdio.h” void main() { int x,y,z; __ void fun(int i, int j, int k)__________; x=4;y=12;z=6; ___ fun(x, y, z)_________; printf(“%x=%d;y=%d;z=%d\n”,x,y,z); } void fun(int i, int j, int k) { int t; t=(i+j+k)/2; printf(“t=%d\n”,t); } 2、这道题没题目,不知道题目的目的是干什么 #include “stdio.h” #include “string.h” void count(char a[ ]) { int sun1=0,sum2=0,sum3=0; int i; for(i=0;a[i]!=’\0’;i++) if(a[i]>=’a’&&a[i]<=’z’||a[i]>=’A’&&a[i]<=’Z’) sum1++; else if(______________________) ____________________; else _____________________; printf(“sum1=%d,sum2=%d,sum3=%d\n”,sum1,sum2,sum3); } void main() { char string[81]; printf(“input string:\n”); _________________; count(string); } 10、下列程序的功能是将字符串s中所有的空格字符删去,请在______处填空。 main() { char *s = “Our teacher teaches C language” ; int i , j ; for ( i=j=0 ; s[i] !=’\0’ ; i++ ) if ( s[i] != ‘ ‘ ) s[j++] = s[i]; ___s[j]=’\0’_____ ; printf (“%s\n”,s); } 4. 从键盘中输入一个数,将其插入到一个升序数组中,保持数组任然按升序排列,将程序补充完整。 void main() { int data,temp,k; static int a[9]={-10,2,4,8,10,15,25,50}; printf(“\nEnter a data:”); scanf(“%d”,&data); _____a[8]=data____________; for(k=8;___k>0_________;k--) if(a[k]<a[k-1]) {______temp=a[k]_________; a[k]=a[k-1]; a[k-1]=temp; } else _____ a[8]=data ____________; for(k=0;____k<9__________;k++) printf(“%7d”,a[k]); } 下面程序运行的结果是_______________。//这道题讲过,一个变量在那个大括号内定义就在这括号内有效 static int x=5; void main () { void f1(); void f2(); int x=10; f1(); f2(); printf(“x(1)=%d\n”,x); } void f1() { x+=20; printf(“x(2)=%d,”,x); } void f2() { int x=100; printf(“x(3)=%d,”,x); } 1.求(函数mm用来求阶乘),请将程序补充完整: void main() { long s=0,i,mm(int k); for(i=1;i<11;i++) s=s+mm(i); printf(“%ld”,s); } long mm(int k) { long t=1,j; for(j=1;j<=k;j++) t*=j ; return t ; } 程序实现给数组a赋值,并通过指针的方式输出数组a的值,请将程序补充完整。 void main() { int a[6],i; __int *p___________; for(i=0;i<6;i++) scanf(“%d”,_____a[i]__________); p=a; for(i=0;i<6;i++) printf(“%3d”,_____a[i]或者*(p+i)_________); printf(“\n”); 四.编程题 1.从键盘输入一个正整数n,求n! 2.输出100——999内的所有水仙花数。水仙花数是指3位数的各位数字的立方和等于这个位数本身。例如,153=1*1*1+5*5*5+3*3*3 3.一个数如果恰好等于它的因子之和,这个数就称为“完数”,编写程序找出 1—5000中的所有完数。 4. 有定义int a[10]={10,2,4,1,3,7,9,5,6,8};请用选择排序法将数组a中的元素按升序排列,并输出排序后的结果 5. 从键盘输入两个整数m和n,编程求m和n的最大公约数以及最小公倍数。 6. 请编写函数 sum(a,n), 求 sn=a+aa+aaa+....+aa...aa(n个a) 的值,并在主函数中调用该函数。其中 a 是一个数字. 例如, 若a=2, n=5时: Sn=2+22+222+2222+22222, 其值应为24690. 根据下列已完成的部分, 完成未完成部分(注: 在函数 sum 中不能定义新的变量, 可不用已定义的某些变量). long sum(int a, int n) { long sn, tn; int count; ..........; return(sn); } 7.编程求一个学生n门课程的平均成绩。 8.求10以内的素数 9. 编写程序实现:求x的y次方。 10、输入任意一个3位数,将其各位数字反序输出(例如:输入123,输出321)。 11、 定义函数int f(char *x) 判断x所指的字符串是否为回文,若是则函数返回1,否则 返回0。 说明:回文是指一个字符串顺序输出和逆序输出相同。例如:“abcddcba”就是一个回文。 课本: 1、 printf格式字符%d,%u,%f,%s,%c 2、带参数的宏定义及宏嵌套 3、数组元数的地址计算,数组元素的引用方式 4、C语言的基本类型 5、字符串函数(求长度、连接、比较等) 6、函数的反回值 7、不同类型的数据据相运算 8、结构体变量的存储空间的分配 9、指针的含义及间接引用 10、实参是传值与传地址 11、函数printf 和scanf 的使用 12、复合赋值 实验指导书: P26-28、上机题1、7 P29-31、上机题2、3、7 P33-36、上机题3、9 P38、上机题3 P45、上机题7 实验二:第3,6题 实验三:第10题 实验四:第3题 实验五:第8题- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 试题 资料 答案
咨信网温馨提示:
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【精****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【精****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【精****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【精****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
关于本文