C语言习题笔试.doc_第1页
C语言习题笔试.doc_第2页
C语言习题笔试.doc_第3页
C语言习题笔试.doc_第4页
C语言习题笔试.doc_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

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

文档简介

桂 林 电 子 科 技 大 学 试 卷 学年第 学期 课号 课程名称 适用班级(或年级、专业)考试时间 120 分钟 班级 学号 姓名 题 号一二三四五六七八九十成绩满 分40203010得 分评卷人一、单项选择题(每小题2分,共40分)在每小题的四个备选答案中选出一个正确答案,并将其代码写在题干后面的括号内。不选、错选或多选者,该题无分。1、C语言中用于结构化程序设计的3种基本结构是( C )。 A)输入、处理、输出B)树形、网形、环形C)顺序、选择、循环D)主程序、子程序、函数2、下列一维数组的定义中,错误的是( B )。A) int a4; B) int a4=1,2,5,3,4;C) int a4=0; D) int a4=1,2,3;3、若已定义:int a32=1,2,3,4,5,6;,值为5的数组元素是 ( B )。A) a32B) a20C) a21D) a234、若已定义 char string =I am a boy!,则该数组的长度是( C )。A) 13 B) 12 C) 11 D) 105、在C言语中,函数返回值的类型取决于( C )。A) return 语句中表达式值的类型B) 调用函数时主调函数所传递的实参类型C) 函数定义时在函数首部所说明的函数类型D) 函数定义时形参的类型6、若调用函数的实参是一个数组名,则向被调用函数传递的是( C )。A) 数组的长度 B) 数组每一个元素的地址C) 数组第一个元素的地址D) 数组每个元素的值7、 若定义 int a23=1,2,3;,则a10的值是( B )。A)3 B)2 C) 1 D) 08、设char s10= abcd, t =12345;,则s和t在内存中分配的字节数分别是( A )。A)10和6B)6和6C)10和5 D)6和59、 一个C语言程序是由( A )。A)函数组成 B)一个主程序和若干子程序组成C)若干过程组成 D)若干子程序组成10、 有如下程序int a10=1,2,3,4,5,6,7,8,9,10;int *p=&a3,b; b=*(p+5);则b的值是( B )。 A)5 B)9 C)6 D)811、已知 int t=0; while (t=1) . 则以下叙述正确的是( B )。A)循环控制表达式的值为0 B)循环控制表达式的值为1C)循环控制表达式不合法 D)以上说法都不对12、为了避免在嵌套的条件语句 if - else 中产生二义性,C语言规定:else子句总是与( B )配对。A) 缩排位置相同的ifB) 其之前最近的ifC) 其之后最近的ifD) 同一行上的13、若有以下定义和语句: char strl =string, str24; 则用以复制字符串的正确方法是( A )。A) strcpy(str2,Hello);B) str1=Hello;C) str2=str1;D) strcpy(strl,Hello);14、 定义如下变量和数组:int k;int a33=9,8,7,6,5,4,3,2,1;则下面语句的输出结果是( D )。for(k=0;k3;k+)printf(%d,akk); A)7 5 3 B)7 4 1 C)9 6 3 D)9 5 115、以下程序的输出结果是( C )。#include void main() int s,k; for(s=1,k=2;k5;k+) s+=k; printf(%dn,s);A) 1B) 9C) 10D) 1516、 若有以下调用语句,则不正确的fun函数的首部是( B )。 main() int a50,n; fun(n, &a9); A) void fun(int m, int x) B)void fun(int n, int a) C)void fun(int p, int *s) D)void fun(int s, int h41)17、有如下程序 main( ) int x=1,a=0,b=0; switch(x) case 0: b+; case 1: a+; case 2: a+;b+; printf(“a=%d,b=%dn”,a,b); 该程序的输出结果是( A )。 A) a=2,b=1B) a=1,b=1C) a=1,b=0D) a=2,b=218、 若有下面的程序段:char s=china;char *p; p=s;则下列叙述正确的是( A )。A)*p与s0相等 B)数组s中的内容和指针变量p中的内容相等C)s数组长度和p所指向的字符串长度相等 D)s和p完全相同19、 下面程序段的运行结果是( A )。 char a=lanuage,*p; p=a; while(*p!=u)printf(%c,*p-32);p+;A)LAN B)language C)LANGUAGE D)langUAGE20、 有以下程序int f(int n) if(n=1)return 1;else return f(n-1)+1;main() int i,j=0;for(i=1;i3;i+)j+=f(i);printf(%dn,j);程序运行后的输出结果是( C )。A)1 B)2 C)3 D)4二、读程序,写出程序执行后的输出结果。(每题5分,共20分)1、以下程序的运行结果是_14_#include void main() int x=12; while(x20) x+; if(x/3!=0) x+;break; else continue; printf(%dn,x);2、下面程序的运行结果是_012983_ #include void inv (int x , int n)int t,i,j; for (i=0; in/2; i+) j=n-1-i; t=xi; xi=xj; xj=t;void main()int i,a5=3,8,9,12,0; inv(a,5); for(i=0;im)m=arrayij;colum=j;row=i;printf(%d,%d,%dn,m,row,colum);三、程序填空题(每空3分,共30分)1、将字符数组a中下标值为偶数的元素从小到大排列,其他元素不变。请填空。void main() char a =clanguage,t;int i,j,k;k=strlen(a);for(i=0;i=k-2;i+=2) for(j=i+2;jaj_) t=ai;ai=aj;aj=t;puts(a);printf(n); 2、以下程序功能是计算矩阵A的主对角线上的元素之和并输出。请补全程序。void main()int a44=1,3,5,7,9,11,13,15,17,19,21,23,25,27,29,31,i,j;int sum=0;for(_i=0_; i4_;i+) for(j=0;j4;j+) if(i=j) _sum=sum+aij_;printf(%dn,sum);3、以下定义一个fun函数的功能是:在第一个循环中给数组元素一次赋值为:1,2,3,4,5,6,7,8,9,10;在第二个循环中是数组元素变为:1,2,3,4,5,5,4,3,2,1void fun(int a10)int i;for(i=0;i10;i+) ai=i+1; for(i=0;i5;i+) a9-i=ai; 4、有一已按递减顺序排列的数组a,其中的数据为:19,17,15,13,11,9,7,5,3,1。将从键盘输入的数k插入到该数组中,使插入后的数组仍然有序,请补全程序。#include void main() int a10=19,17,15,13,11,9,7,5,3,1,k,i; scanf(%d,&k); for (i=9; i=0; i-) if ( kai ) ai+1 =ai; if (i=0) ai= k ; else ai+1=k; break; for (i=0; i11; i+) printf(%d ,ai);四、程序设计题(10分)编写一个函数max求两个数的最小值,

温馨提示

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

评论

0/150

提交评论