南昌大学C语言期末考试题_第1页
南昌大学C语言期末考试题_第2页
南昌大学C语言期末考试题_第3页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

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

文档简介

1、一、单项选择每空 2 分,共 50 分)(请将各小题正确答案的字母序号填到相应小题的下划线上)得 分 评阅人C 语言的运算符按运算对象的数目可以分为。A) 单目运算一种B) 单目和双目运算符C) 单目、双目和三目运算符D) 单目、双目、三目运算和四目运算符C 语言表达式2/5*10 的值是。A) 0.04B) 4C) 4.0D) 0已知变量fi 的类型说明如下:float f=12.34; int i;则以下符合C 语言语法的表达式是。A) i=(int)f%5B) i=int(f)%5C) i=f%5D) i=(int f)%5能正确表示数学式5 C 语言表达式是。A) 1 =x =1)&(

2、x=1 )&(x=5)D) (1 c 的数据类型是char,i 的数据类型是int,f floatC 语言表达式c*i+c*f-i+100 值的数据类型为。A) intB) floatC) charD) 不确定在下列选项中,合法的C 语言用户标识符的是。A) intB)sinC)ifD)i+jC 程序的执行从开始。A) 程序中的第个语句B) 程序中的第个函数C) 名为main 的函数D) 包含文件的第个函数凡在C 语言函数中未指定存储类别的变量,其隐含的存储类别为。A) 自(auto)B) 静态(static)C) 字符串D) 字符或字符型变量值以下程序运行时要求输入 10 和 20 分别存放

3、在变量 x 和 y 中,能正确输入数据是。main()int x,y; scanf(x=%d,y=%d,&x,&y); printf(x+y=%d,x+y);(说明:表示换行符,用表示空格A) 1020B) x=10,y=20C) 10D) x=10 20下面程序的运行结果是。main()int a,b; a=32767;b=a+1; printf(a=%d,b=%dn,a,b);A) a=32767,b=-32768B) a=32767,b=32768C) a=32767,b=1D) 运行出错在C 语言中,以下错误的描述是。break语句不能用于循环语句和switch语句外的任何其它语句sw

4、itch语句中使用break语句或continue语句的作用相同在循环语句中使用continue 语句是为了结束本次循环,而不是终止整个循环在循环语句中使用break 语句是为了使流程跳出循环体,提前结束循环在C 语言中,数组作为函数的形参,函数调用时,若用数组名作为函数的实参,则实上传递给形参的是。A) 数组首地址B) 数组的第一个元素值C) 数组中全部元素的值D) 数组元素的个数C 语言编译系统对宏命令是。在程序运行时进行替换处理在程序连接时进行处理和源程序中其它C 语句同时进行编译在对源程序中其它成份正式编译之前进行处理设 x、y 为整型变量且已赋值,将其中较大的值输出的、正确的 if

5、语句是。if ( x y ) printf ( “ %d ” , x );if ( x y ) printf ( “ %d ” , x );printf ( “ %d ” , y );if ( x y ) ; printf ( “ %d ” , x ); else printf ( “ %d ” , y );if ( x y ) printf ( “ %d ” , x ); else printf ( “ %d ” , y );对以下程序段描述正确的是。x=10;while(x) x=x/4;A) 不执行循环体 B) 循环体执行一次 C) 循环体执行二次 D) 死循环在C 语言中,引用数组元素

6、时,对数组下标的数据类型以下说法错误的是。A) 数组下标可以用整型常量B) 数组下标可以用整型变量C) 数组下标可以用任意类型的表达式 D) 数组下标可以用整型表达式以下C 函数的功能是。int fun(int x,int y) int z=0; z=xy?x:y; return z;A) 求x 和y 二者中的最大值B) 求x 和y二者中的最小值C) 返回一个不确定的值D) 返回函数值“0”定义数组:int s10;则数组元素下标的取值。A) 最小值为1,最大值为10B) 最小值为0,最大值为10C) 最小值为0,最大值为9D) 最小值为1,最大值为9已知 int i,s45;不能表示数组第3

7、 行第3 列元素值的是。A) * ( * ( x) )+ 3B) x 3 3 C) * ( * ( x + 3 ) + 3 )D) * ( x 3 + 3 )以下C 函数的类型是。fun (float f ) printf ( “ %f n ” , f ) ; A) intB) floatC) voidD) 无法确定设char *s1,s2255=“programing” 以下操作正确的是。A) *s1 = “function”;B) s2=“function”;s1=s2;C) s1 = “function”;s2=s1; D) *s2=P;s1 =s2 ;设有说明语句:struct stu

8、dent int num,age; ;struct student stu3=6001,20,6003,21,6005,19; struct student *p=stu;则下面的C 语言表达式值为6003 的是。A) +(p-num)B) (p+)-numC) (*p+).numD) (*+p).num已有定义 int ( * p ) ( ) ; 则指针 p 可以。A) 代表函数的返回值B) 指向函数的入口地址C) 代表函数的类型D) 代表函数返回值的类型26 (1)for(a=A;a=A;a-) printf(%c,a);(3)for(a=A;a=Z;) printf(%c,a+);(4)

9、for(a=A;a+=Z;) printf(%c,a);以下说法正确的是。A) 全都能输出B) 只有前三个语句可以输出C) 只有前两个语句可以输出D) 只有第一个语句可以输出1 个元素与第 3 )。1 main()2 int a3=3*0,i;3for(i=1;i3;i+) scanf(%d,ai);4for(i=1;i3;i+) a0=a0+ai+1;5printf(%d,a0);则下述说法正确的是。A) 第2 行有语法错误B) 第3 行有错误,程序得不到预期结果C) 编译时第4 行出现语法错误D) 可以得到正确结二、程序阅读题 每小题 3 分,共18 分)(写出以下程序运行的结果)得 分

10、评阅人1.#include main() int a,b,c,d;unsigned u; a=12;b=-24;u=10;c=a+u;d=b+u; printf(a+u=%d,b+u=%dn,c,d);程序运行结果为:2.#include main() int a=10,b=0; if (a!=0) a=a+1;b=b+1;else a=a+2;b=b+2;程序运行结果为:3.#define V(s) s*s*s #include main() int volume;volume=V(1);printf(%dt,volume); volume=V(2);printf(%dt,volume);

11、volume=V(1+2);printf(%dn,volume);程序运行结果为:4.#include main() char s=12345;void sub_s1(char s,int n) ; void sub_s2(char s ,int n); sub_s1(s,5);sub_s2(s,6);void sub_s1(char s,int n) int i,j; for(i=0;in;i+) for(j=0;ji;j+)printf(n);void sub_s2(char s ,int n) int i,j;for(i=0;in;i+) for( j=i;jn;j+)printf(n)

12、;程序运行结果为:5.#include main() int i,a;int fun(int m); for(i=0;i2;i+) a=fun(4+i);printf(%dn,a); int fun(int m) static int n=0; m/=2;m=m*2; if(m) n=n*m; return (fun(m-2); else return(n+);程序运行结果为:6.#include main() int i,k=0,s10=1,2,3,4,5,6,7,8,9,10;for(i=0;i=0;i-)if(i%5= =0) printf(“%dt”,si); printf(“%dn”

13、,k);程序运行结果为:三、 填空题 (每空 2 分,共 20 分)(请在下划线上填入合适的内容,完成程序或程序段所要求的功能)得 分 评阅人以下程序运行时从键盘输入字符串ABCDE 和B#。# include main ( ) char c ;while( ( c = getchar ( ) ) !=) switch ( c ) case A:case B: putchar(#) ;default : putchar( * ) ;以下程序从键盘输入 20 负整数之和。请填空完成。# include main ( ) int i , a20,s,n; s=n=0;for ( i = 0 ;i20;i + )for(i=0;i20;i+) if (ai0) s+=ai;n+;printf(s=%dt,n=%dn,s,n);以下函数的功能是删除字符串s 中所出现的与变量c 相同的字符,请填空完成。void fun(char s,char c)int i,j;for(i=j=0;i+)if(si!=c);sj=0;1+2+3+10的和,请填空完成。#include main();i=1;do s=s+i;i+;whileprintf(%dn,s);设 fp #()ch=getchar(); while(ch=getchar();fclose(fp);四、 程序设计题 (第

温馨提示

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

评论

0/150

提交评论