南昌大学C语言期末考试题

合集下载

南昌大学C语言0708第一学期期末试卷B提前及答案

南昌大学C语言0708第一学期期末试卷B提前及答案

南昌大学2007〜2008学年第一学期期末考试试卷(提前)试卷编号:_______ (B )卷课程编号:H61050001 课程名称:C程序设计 _________ 考试形式:闭卷适用班级:过控05 ___________ 姓名:_____________ 学号: ________ 班级:___________ 学院:___________________ 专业: ___________________ 考试日期:2007-12-24__________2、考试结束后,考生不得将试卷、答题纸和草稿纸带出考场。

一、单项选择题(每小题2分,共50分,答案请写在答题卡)1. ________________________________________________________________________ C语言中的标识符只能由字母、数字、下划线三种字符组成,且第一个字符_________________ <A)必须为字母B)必须为下划线C)必须为字母或下划线D)可以是字母、数字、下划线中任意一种字符2. 若t为double类型,表达式t=1,t+5,t++的值是 __________ 。

A) 1 B) 6.0 C) 2.0 D) 1.03. 以下运算符中,运算对象必须是整型的是________ 。

A) / B) %= C)! = D)< =4. 设有定义:long x=-123456L;,则以下能够正确输出变量x值的语句是A) printf( “x=%d,x); B) printf( “x=%1d,x);C) printf( “ x=%8dH_ ,x); D) printf( “ x=%LD ,x)5. __________________________________________________________ 已知int x = 10,y= 20, z= 30;以下语句执行后x, y, z的值是________________________________ 。

大学生期末c语言试题及答案

大学生期末c语言试题及答案

大学生期末c语言试题及答案一、选择题(每题2分,共20分)1. C语言中,以下哪个选项是合法的变量名?A. 2variableB. _variableC. variable2D. variable-2答案:C2. 下列哪个选项是C语言中的关键字?A. defineB. typedefC. includeD. using答案:B3. 在C语言中,以下哪个选项表示的是逻辑与运算?A. &&B. ||C. !D. =答案:A4. C语言中,以下哪个选项是正确的注释方式?A. /* 这是注释 */B. // 这是注释C. /* 这是注释 */D. # 这是注释答案:A5. 在C语言中,以下哪个函数用于将字符串转换为浮点数?A. atoiB. atofC. itoaD. sprintf答案:B6. C语言中,以下哪个选项是正确的数组初始化方式?A. int arr[5] = {0, 1, 2, 3, 4};B. int arr[] = {0, 1, 2, 3, 4};C. int arr[5] = {0, 1, 2};D. int arr[] = {0, 1, 2, 3};答案:A7. 在C语言中,以下哪个选项是正确的函数声明?A. int func(int a, int b);B. int func(int a, int b) {}C. int func(int, int);D. int func(int a, int b) = 0;答案:A8. 以下哪个选项是C语言中正确的文件包含指令?A. #include <stdio.h>B. #include "stdio.h"C. #include <stdio.h>D. #include "stdio.h"答案:A9. 在C语言中,以下哪个选项是正确的字符串定义方式?A. char str[] = "Hello";B. char str[] = {'H', 'e', 'l', 'l', 'o'};C. char str[] = "Hello";D. char str[] = {'H', 'e', 'l', 'l', 'o'};答案:A10. C语言中,以下哪个选项是正确的结构体定义方式?A. struct Student {int id;char name[50];};B. struct Student {int id;char name[];};C. struct Student {int id;char name[50];} student;D. struct Student {int id;char name[];} student;答案:A二、填空题(每题2分,共20分)1. 在C语言中,使用______运算符可以取变量的地址。

大学生期末c语言试题及答案

大学生期末c语言试题及答案

大学生期末c语言试题及答案一、选择题(每题2分,共20分)1. C语言中,用于定义一个结构体的关键字是:A. structB. unionC. enumD. typedef答案:A2. 下列关于数组的描述中,正确的是:A. 数组必须在定义时初始化B. 数组的元素类型必须一致C. 数组的下标可以是实数D. 数组的下标可以是负数答案:B3. C语言中,用于文件操作的库函数位于哪个头文件中?A. stdio.hB. math.hC. string.hD. stdlib.h答案:A4. 下列哪个运算符不能用于赋值?A. =B. +=C. *=D. %答案:D5. C语言中,用于定义一个函数的关键字是:A. functionB. defineC. defD. void答案:B6. 下列关于指针的描述中,错误的是:A. 指针可以存储地址B. 指针可以存储值C. 指针可以作为函数的参数D. 指针可以作为函数的返回值答案:B7. C语言中,用于定义一个宏的预处理指令是:A. #defineB. #includeC. #pragmaD. #if答案:A8. 下列关于循环的描述中,正确的是:A. for循环可以没有初始化表达式B. while循环可以嵌套C. do-while循环至少执行一次D. 所有循环都可以使用break语句退出答案:C9. C语言中,用于定义一个枚举类型的关键字是:A. enumB. structC. unionD. typedef答案:A10. 下列关于函数的描述中,错误的是:A. 函数可以没有返回值B. 函数可以有多个返回值C. 函数可以递归调用D. 函数可以嵌套定义答案:D二、填空题(每题2分,共20分)1. 在C语言中,字符'A'的ASCII码值是______。

答案:652. 若int a = 10; int b = 20; 则表达式a++ + b的结果是______。

南昌大学2013-2014c语言考试试卷

南昌大学2013-2014c语言考试试卷

—南昌大学考试试卷—【适用时间:2013 ~2014 学年第二学期试卷类型:[ A ]卷】南昌大学 2013~2014学年第二学期期末考试《C程序设计(A卷)》参考答案及评分标准一、单项选择题(每小题2分,共40分)二、填空题(每空2分,共20分)【1】、循环结构【2】、声明(定义) 【3】、地址(指针) 【4】、函数头【5】、地址【6】、5_【7】、s=0 【8】、t*10【9】、strlen(str)/2 【10】、str[j-1]或*(str+j-1)三、程序阅读题(每小题4分,共 20 分)1、a=5,b=0,c=32、i1=4,i2=3,i=143、s0=18,s1=20,s2=484、 *************************5、x=13, y=21x=5, y=21, z=3四.程序设计题(每小题 10 分,共20 分)1编写一个函数,实现显示输出数组a[n]中大于等于平均值的所有元素值。

函数原型为void f2(double a[], int n),其中n为数组元素个数。

void f2(double a[ ], int n){int i;double sum=0;for(i=0;i<n;i++) sum+=a[i];sum/=n;for(i=0;i<n;i++)if(a[i]>=sum) printf(“%10.2lf ”,a[i])’;}2求满足不等式22+42+...+n2<1000的最大n值,假定分别用i和s作为取偶数值和累加值的变量。

#include<stdio.h>void main(){int i=0; //用i作为依次取值偶数的变量int s=0; //用s作为累加变量do {i+=2;s+=i*i;}while(s<1000);printf("n=%d",i-2);}。

南昌大学C期末考试试卷(标准答案全)

南昌大学C期末考试试卷(标准答案全)

南昌大学2003 ~2004 学年第二学期期末考试试卷A卷一单项选择题1.‘A’的ASCII码为65,n为int型,执行n =‘A’+‘6’-‘3’;后,n的值为 B 。

A)‘D’ B) 68 C) 不确定的值D) 编译出错2.下列变量名中, A 是合法的。

A)CHINA B) byte-size C) double D) A+a 3.在static int B[3][3]={{1},{3,2},{4,5,6}};中, a[2][2]的值是 C 。

A)0 B) 5 C)6 D)24.若有定义int a=3, *p=&a ;则*p的值是 B 。

A)常量a的地址值B)3C)变量p的地址值D)无意义5.下列关于指针运算的各叙述中,不正确的叙述是 D 。

A)指向同一数组的两个指针,可以进行相等或不等的比较运算;B)可以用一个空指针赋值给某个指针;C)指向数组的指针,可以和整数进行加减运算;D)指向同一数组的两个指针,可以进行有意义的相加运算。

6. 已知x、y、z是int型变量,且x=3,y=4,z=5;则下面各表达式中,值为0的是 D 。

A)‘x’&&‘y’ B)x<=y C)x || y+z && y-z D) !((x<y) && !z || 1) 7.下列各选项中,正确的选项是 A 。

A) 0和‘\0’值相等。

B) 0和‘0’ 值相等。

C)‘\0’和‘0’ 值相等。

D) 0、‘\0’和‘0’ 值都不相等。

8. 若有说明语句:char ch=‘\72’;则变量ch A 。

A)包含1个字符B) 包含2个字符C) 包含3个字符D) 说明不合法9.在下列关于C++与C语言关系的各描述中, D 是错误的。

A)C语言是C++的一个子集;B)C语言与C++是兼容的;C)C++对C语言进行了一些改进;D)C++和C语言都是面向对象的。

10.在下列关于类概念的各描述中, A 是错误的。

(完整版)大学C语言期末考试练习题(带详解答案)

(完整版)大学C语言期末考试练习题(带详解答案)

一、单项选择题1.(A)是构成C语言程序的基本单位。

A、函数B、过程C、子程序D、子例程2.C语言程序从C开始执行。

A) 程序中第一条可执行语句B) 程序中第一个函数C) 程序中的main函数D) 包含文件中的第一个函数3、以下说法中正确的是(C)。

A、C语言程序总是从第一个定义的函数开始执行B、在C语言程序中,要调用的函数必须在main( )函数中定义C、C语言程序总是从main( )函数开始执行D、C语言程序中的main( )函数必须放在程序的开始部分4.下列关于C语言的说法错误的是(B)。

A) C程序的工作过程是编辑、编译、连接、运行B) C语言不区分大小写。

C) C程序的三种基本结构是顺序、选择、循环D) C程序从main函数开始执行5.下列正确的标识符是(C)。

A.-a1B.a[i]C.a2_iD.int t5~8题为相同类型题考点:标识符的命名规则(1)只能由字母、数字、下划线构成(2)数字不能作为标识符的开头(3)关键字不能作为标识符选项A中的“-” ,选项B中“[”与“]”不满足(1);选项D中的int为关键字,不满足(3)6.下列C语言用户标识符中合法的是(B)。

A)3ax B)x C)case D)-e2 E)union选项A中的标识符以数字开头不满足(2);选项C,E均为为关键字,不满足(3);选项D中的“-”不满足(1);7.下列四组选项中,正确的C语言标识符是(C)。

A)%x B)a+b C)a123 D)123选项A中的“%” ,选项B中“+”不满足(1);选项D中的标识符以数字开头不满足(2)8、下列四组字符串中都可以用作C语言程序中的标识符的是(A)。

A、print _3d db8 aBcB、I\am one_half start$it 3paiC、str_1 Cpp pow whileD、Pxq My->book line# His.age选项B中的“\”,”$” ,选项D中“>”,”#”,”.”,”-”不满足(1);选项C中的while为关键字,不满足(3)9.C语言中的简单数据类型包括(D)。

南昌大学 2005-2006年 C语言 期末试题

南昌大学 2005-2006年 C语言 期末试题


15. 对以下程序段描述正确的是 。 x=10; while(x) x=x/4; A) 不执行循环体 B) 循环体执行一次
C) 循环体执行二次
D) 死循环 。
16. 在 C 语言中,引用数组元素时,对数组下标的数据类型以下说法错误的是 A) 数组下标可以用整型常量 B) 数组下标可以用整型变量 C) 数组下标可以用任意类型的表达式 D) 数组下标可以用整型表达式 17. 以下 C 函数的功能是 。 int fun(int x,int y) { int z=0; z=x>y?x:y; return z; } A) 求 x 和 y 二者中的最大值 B) 求 x 和 y 二者中的最小值 C) 返回一个不确定的值 D) 返回函数值为“0” 18. 定义数组:int s[10];则数组元素下标的取值 。 A) 最小值为 1,最大值为 10 B) 最小值为 0,最大值为 10 D) 最小值为 1,最大值为 9 C) 最小值为 0,最大值为 9 19. 已知 int i,s[4][5];不能表示数组第 3 行第 3 列元素值的是 A) * ( * ( x) )+ 3 B) x [ 3 ] [ 3 ] C) * ( * ( x + 3 ) + 3 ) D) * ( x [ 3 ] + 3 ) 20. 以下 C 函数的类型是 fun (float f ) { printf ( “ %f \n ” , f ) ; A) int B) float 。 } C) void D) 无法确定 。 。
第 3 页 共 9 页
24. 若用下列语句输出 26 个大写英文字母: (1)for(a='A';a<='Z';a++) printf("%c",a); (2)for(a='Z';a>='A';a--) printf("%c",a); (3)for(a='A';a<='Z';) printf("%c",a++); (4)for(a='A';a++<='Z';) printf("%c",a); 以下说法正确的是 。 A)全都能输出 B)只有前三个语句可以输出 C)只有前两个语句可以输出 D)只有第一个语句可以输出 25. 设以下程序用来求三个元素的数组中,第 1 个元素与第 3 个元素之和(程序每行前 面的数字表示行号)。 1 main() 2 { int a[3]={3*0},i; 3 for(i=1;i<3;i++) scanf("%d",a[i]); 4 for(i=1;i<3;i++) a[0]=a[0]+a[i+1]; 5 printf("%d",a[0]); }

南昌大学c期末考试题及答案

南昌大学c期末考试题及答案

南昌大学c期末考试题及答案一、选择题(每题2分,共20分)1. 在C语言中,下列哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A2. 下列哪个选项是正确的C语言数组声明?A. int arr[10];B. int arr[];C. int arr[10] = {0};D. 所有选项答案:D3. C语言中,哪个函数用于将字符串转换成浮点数?A. atoiB. atofC. itoaD. sprintf答案:B4. 下列哪个运算符用于执行按位与操作?A. &&B. &&C. &D. ||答案:C5. 在C语言中,以下哪个关键字用于声明一个函数?A. intB. voidC. returnD. all of the above答案:D6. 下列哪个选项是C语言中的合法变量名?A. _myVarB. 2myVarC. my$varD. my var答案:A7. C语言中,哪个函数用于输出格式化的字符串到标准输出?A. printfB. scanfC. sprintfD. fprintf答案:A8. 下列哪个选项是C语言中的正确注释?A. // This is a commentB. /* This is a comment */C. //* This is a commentD. all of the above答案:B9. 在C语言中,哪个函数用于计算并返回字符串的长度?A. strlenB. strlengthC. strlengD. length答案:A10. 下列哪个选项是C语言中的正确循环语句?A. forB. whileC. do-whileD. 所有选项答案:D二、填空题(每题2分,共20分)1. 在C语言中,一个变量的声明包括变量的____和____。

答案:类型名字2. C语言中,用于定义指针的关键字是____。

C语言程序设计期末考试试题含答案

C语言程序设计期末考试试题含答案

C语言程序设计期末考试试题含答案一、选择题(每题 3 分,共 30 分)1、以下选项中,不是 C 语言关键字的是()A intB floatC classD char答案:C解析:在 C 语言中,class 不是关键字,int、float 和 char 都是常见的数据类型关键字。

2、以下变量定义中,正确的是()A int a=b=5;B char a='A';C float a=55, b=66;D double a; b;答案:C解析:A 选项中不能在定义时连续赋值;B 选项应该是 char a ='A';注意单引号;D 选项应该是 double a, b; 中间用逗号分隔。

3、以下程序段的输出结果是()```cint a = 5, b = 4, c = 6;if (a > b && a > c)printf("a 最大\n");else if (b > a && b > c)printf("b 最大\n");elseprintf("c 最大\n");```A a 最大B b 最大C c 最大D 编译错误答案:C解析:因为 5 不大于 6,所以执行 else 部分,输出“c 最大”。

4、以下循环语句执行的次数是()```cfor (int i = 0; i < 5; i++){printf("%d ", i);}```A 4 次B 5 次C 6 次D 无限次答案:B解析:从 0 到 4 ,一共 5 次。

5、以下数组定义中,正确的是()A int a5 ={1, 2, 3, 4, 5, 6};B int a ={1, 2, 3};C int a5 ={1, 2};D int a3 =(1, 2, 3);答案:B解析:A 选项数组长度为 5,却初始化了 6 个元素;C 选项只初始化了前两个元素,后面三个元素默认为 0;D 选项初始化方式错误,应该用花括号。

2022年南昌大学公共课《C语言》科目期末试卷A(有答案)

2022年南昌大学公共课《C语言》科目期末试卷A(有答案)

2022年南昌大学公共课《C语言》科目期末试卷A(有答案)一、填空题1、设x是一个整数(16bit),若要通过xly使x低8位置1,高8位不变,则y的八进制数是_______。

2、C语言源程序文件的后缀是;经过编译后,生成文件的后缀是;经过连接后,生成文件的后缀是3、C语言的源程序必须通过【】和【】后,才能被计算机执行。

4、已知字母a的ASCIl码为十进制数97,且设ch为字符型变量,则表达式ch='a'+'8'-3'的值为_______。

5、若有定义语句:int b=7;float a=2.5,c=4.7;则表达式a+(int)(b/3*(int)(a+c)/2)%4的值为_______6、若有以下定义和语句:int*p[3],a[6],i;for(i=0;i<3;i++)p[i]=8&a[2*i];则*p[0]引用的是a数组元素_______,*(p[1]+1)引用的是a数组元素_______。

7、下面程序段的运行结果是_______。

x=2;do{printf("*");x--;)while(!x==0);8、假设变量a、b和c均为整型,以下语句借助中间变量t把a、b和c中的值进行交换,即把b中的值给a,把c中的值给b,把a中的值给c。

例如:交换前,a=10、b=20、c=30;交换后,a=20、b=30、c=10。

请填空。

_______;a=b;b=c;_______;9、假设变量a和b均为整型,以下语句可以不借助任何变量把a、b中的值进行交换。

请填空。

a+=_______;b=a-_______;a-=_______;10、在C语言中,二维数组元素在内存中的存放顺序是_______。

二、选择题11、以下不正确的叙述是( )。

A.在C程序中,逗号运算符的优先级最低B.在C程序中,APH和aph是两个不同的变量C.若a和b类型相同,在执行了赋值表达式a=b后b中的值将放入a中,而b中的值不变D.当从键盘输入数据时,对于整型变量只能输入整型数值,对于实型变量只能输入实型数值12、以下表达式值为3的是( )A.16-13%10B.2+3/2C.14/3-2D.(2+6)/(12-9)13、有输入语句:scanf("a=%d,b=%d,c=%d",&a,&b,&C.;为使变量a的值为1,b的值为3,c的值为2;从键盘输入数据的正确形式应当是()。

南昌大学C语言2004~2005学年第二学期期末考试试卷(答案已上传)

南昌大学C语言2004~2005学年第二学期期末考试试卷(答案已上传)

2.源程序如下: main() { char ch[2][5]={“6937”, “8254”},*p[2]; int i,j,s=0; for(i=0;i<2;i++) p[i]=ch[i]; for(i=0;i<2;i++) for(j=0;p[i][j]>’\0’;j+=2) s=10 *s+p[i][j]-‘0’; printf(“%d\n”,s); } 程序运算后的结果为:
第 2 页 共 8页
17.下列选项中,不正确的 if 语句是 。 A) if ( a > b ) printf ( “ %d ” , a ); B) if ( a > b ) m = a else m = b; C) if ( 3 ) a = m ; else a = n; D) if ( a > 0 ) ; else { a = n; } 18.以下程序的输出结果是 。 # include <stdio.h > fun ( int a , int b , int m ) { m=a*b; return ; } main ( ) { int m = 1; fun ( 2 , 3 , m ) ; printf ( “ %d \n ” , m ) ; } A) 1 B) 2 C) 3 D) 6 19.若有定义:int a = 511 , * b = & a ; ,则 printf ( “ % d \ n ” , * b ) ; 的输出结果 。 为 A) 无确定的值 B) a 的地址 C) 512 D) 511 20.以下程序的输出结果是 。 # define ADD ( x ) x + x main ( ) { int m = 1 , n = 2 , k = 3 , sum ; sum = ADD ( m + n ) * k ; printf ( “ sum = %d \n ” , sum ) ; } A) sum = 9 B) sum = 10 C) sum = 12 D) sum = 18 21.已知 int i , x [ 3 ] [ 4 ] ; ,则不能将 x [ 1 ] [ 1 ] 的值赋给变量 i 的语句 是 。 A) i = * ( * ( x + 1 ) + 1 ) B) i = x [ 1 ] [ 1 ] C) i = * ( * ( x + 1 ) ) D) i = * ( x [ 1 ] + 1 ) 22.以下函数的类型是 。 fun ( float x ) { printf ( “ %d \n ” , x * x ) ; } A) int B) float C) void D) 无法确定 23.设有语句:char str1[ ] = “string”, str2 [ 8 ], * str3, * str4= “string” ; , 则下列选项 。 中,不是对库函数 strcpy 的正确调用的是 A) strcpy ( str1, “hello1”); B) strcpy ( str2, “hello2”); C) strcpy (str3, “hello3”); D) strcpy (str4, “hello4”); 24.已有定义 int ( * p ) ( ) ; , 则指针 p 可以 。 B) 指向函数的入口地址 A) 代表函数的返回值 C) 代表函数的类型 D) 代表函数返回值的类型 25.以下能正确进行字符串赋值操作的是 。 A) char * s ; * s = “apple” ; B) char * s ; s = “apple” ; C) char s[8] ; s = “apple” ; D) char s[8] ; * s = “apple” ; 26.以下符合 C 语言语法的赋值表达式是 。 A) d = 9 + e + f = d + 9 B) d = e + = d + 9 C) 5 = d + e + f D) d = 9 + e , f + 3 = d + 9 27.设有如下说明语句: struct stud { int a ; float b ; } studtype ; 则下面的叙述中,不正确的是 。

2022年南昌大学科学技术学院公共课《C语言》科目期末试卷A(有答案)

2022年南昌大学科学技术学院公共课《C语言》科目期末试卷A(有答案)

2022年南昌大学科学技术学院公共课《C语言》科目期末试卷A(有答案)一、填空题1、设x=10100011,若要通过x*y使x的高4位取反,低4位不变,则y的二进制数是_______。

2、在C语言中,输入操作是由库函数________完成的,输出操作是由库函数________完成的。

3、在C语言源程序中,一个变量代表【】。

4、若有定义语句:int b=7;float a=2.5,c=4.7;则表达式a+(int)(b/3*(int)(a+c)/2)%4的值为_______5、若有定义语句:inte=1,f=4,g=2;float m=10.5,n=4.0,k;,则执行表达式k=(e+f)/g+sqrt((double)n)*1.2/g+m后k的值是_______。

6、下面程序段的运行结果是_______。

char s[80],*sp="HELLO!";sp=strcpy(s,sp);s[0]='h';puts(sp);7、鸡兔共有30只,脚共有90只,下面程序段是计算鸡兔各有多少只。

请填空。

for(x=0;x<=30;x++){y=30一x;if(_______)printf("%d,%d\n",x,y);}8、设有一输入函数scanf("%d”,k);它不能使float类型变量k得到正确数值的原因是_______未指明变量k的地址和_______格式控制符与变量类型不匹配。

9、设有以下定义和语句,请在printf语句的_______中填上能够正确输出的变量及相应的格式说明。

union{int n;doublex;}num;num.n=10;num.x=10.5;printf("_______",_______);10、下面程序段的运行结果是_______。

int i=5;char c[6]="abcd";do{c[i]=c[i-1];}while(--i>0);puts(c);二、选择题11、下面不正确的字符串常量是( )A.'abe'B."12'12"C. "o"D.""12、下列4组选项中,不是C语言关键字的选项是。

大学c语言期末考试题及答案

大学c语言期末考试题及答案

大学c语言期末考试题及答案一、选择题(每题2分,共20分)1. 下列哪个选项是C语言的关键字?A. intB. floatC. doubleD. string答案:A2. C语言中,哪个函数用于将整数转换为字符串?A. itoa()B. atoi()C. printf()D. sprintf()答案:A3. 在C语言中,以下哪个是正确的字符串定义方式?A. char str[] = "Hello World";B. string str = "Hello World";C. char str = "Hello World";D. char str[12] = "Hello World";答案:A4. 下列哪个是C语言中正确的数组声明?A. int array[10] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9};B. int array[] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9};C. int array = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9};D. int array[10] = 0;答案:B5. C语言中,哪个运算符用于求两个数的余数?A. %B. /C. *D. -答案:A6. 下列哪个是C语言中正确的条件语句?A. if (x > y)B. if x > yC. if(x > y)D. if (x > y)答案:D7. 在C语言中,哪个函数用于计算两个数的最大值?A. max()B. max_int()C. max_value()D. None of the above答案:D8. C语言中,哪个关键字用于定义函数?A. functionB. defC. funcD. int答案:D9. 在C语言中,哪个语句用于结束程序的执行?A. break;B. exit();C. return;D. end;答案:B10. 下列哪个是C语言中正确的循环结构?A. do-whileB. forC. whileD. All of the above答案:D二、填空题(每题2分,共10分)1. C语言中,用于定义变量的关键字是________。

C语言程序设计2007~2008学年第二学期期末考试试卷(A)

C语言程序设计2007~2008学年第二学期期末考试试卷(A)

南昌大学2007~2008学年第二学期期末考试试卷6、在程序中执行到________语句时,将结束所在函数的执行过程,返回到调用该函数的位置。

7、以下程序main(){int aa[4][4]={{1,2,3,4},{5,6,7,8},{3,9,10,2},{4,2,9,6}};int i,s=0;for(i=0;i<4;i++) s+=aa[i][1];printf(%d\n,s);}程序运行后的输出结果是________________。

8、以下fun函数把ch中的大写字母转换成字母序列中的下一个大写字母,字母Z转换成字母A,其它字符不变,返回转换后的字母或其它字符.请填空。

char fun(char ch){if(ch= =’Z') ch=__________;else if(ch〉=’A’&&ch<=’Y’) ch=__________;return ch;}9、下面程序的功能是:输出100以内能被3整除且个位数为6的所有整数。

#include 〈stdio。

h〉void main(void){int i, j;for(i=0; i<10; i++) {j = i*10+6;if (_____ _____ ) continue;printf(”%d ",j);}}10、以下程序的功能是调用函数fun计算:m=1-2+3-4+…+9—10,并输出结果。

请填空。

int fun(int n){int m=0,f=1,i;for(i=1;i〈=n;i++){m+=i*f;f= __________ ;}return m;}main(){printf(”m=%d\n”,________ __);}11、下面程序段是输出两个字符串中对应字符相等的字符。

请选择填空。

char x[]="programming";char y[]=”Fortran";int i=0;while (_______________ __ __){if (x[i]==y[i]) printf ("%c",x[i]);else i++;}}12、以下程序从终端读入数据到数组中,统计其中正数的个数,并计算它们之和。

南昌大学C语言期末考试0506试卷答案

南昌大学C语言期末考试0506试卷答案

C语言程序设计期终试卷答案及评分细则一、单项选择题(每空 2 分,共50 分
二、程序阅读题(每小题3分,共18分)
三、填空题(每空2分,共20分)
求出前2项之和为一位数存入数组2分
1分
1分
求出前2项之和为两位数存入数组3分,没有考虑超过20项的情况应扣分
四、编程题(第1小题4分,第2小题8分,共12分)
1.共4分(本题考自定义函数的应用,用主函数完成题目的功能不给分)
void fun(char s1[],char s2[])
{ int i,j=0;
for(i=0;s1[i];i++) 0.5分 if(s1[i]>='0'&&s1[i]<='9') 1分
s2[j++]=s1[i]; 1分 s2[j]='\0'; 1分
puts(s2); 输出0.5分(可用循环语句) } 2.共8分
# include <stdio.h> main ( )
{int x[20],i,t,s=0,k=0; x[0]=2;x[1]=3;k=2; s=x[0]+x[1];
while (k<20) 循环控制正确1分 {t=x[k-1]*x[k-2]; if(t<10) {s+=t; x[k++]=t; } else
{ x[k++]=t/10;s+=t/10; if(k<20) {x[k++]=t%10;s+=t%10;} } } i=0; while(i<k)
{
printf("%3d",x[i]);i++; }
printf("\n%d\n",s); }。

大学c语言期末考试试题及答案

大学c语言期末考试试题及答案

大学c语言期末考试试题及答案一、选择题(每题2分,共20分)1. 下列哪个是C语言的关键字?A. intB. StringC. mainD. void答案:A2. 在C语言中,哪个运算符用于计算两个数的乘积?A. +B. -C. *D. /答案:C3. 以下哪个是合法的C语言变量名?A. 2variableB. variable2C. variable-nameD. variable#name答案:B4. 在C语言中,哪个函数用于计算两个数的和?A. sum()B. add()C. plus()D. None of the above答案:D5. 下列哪个是C语言的标准输入输出库?A. <stdio.h>B. <iostream.h>C. <io.h>D. <input.h>答案:A6. 在C语言中,哪个语句用于结束程序的执行?A. break;B. continue;C. return;D. exit;答案:C7. 在C语言中,哪个关键字用于定义一个函数?A. funcB. functionC. defD. void答案:D8. 下列哪个是C语言中的控制流语句?A. ifB. switchC. forD. All of the above答案:D9. 在C语言中,哪个函数用于输出字符串到标准输出设备?A. printf()B. puts()C. cout()D. print()答案:B10. 下列哪个是C语言的字符串类型?A. charB. stringC. strD. text答案:A二、填空题(每题2分,共10分)1. 在C语言中,字符常量用____表示。

答案:单引号2. 在C语言中,一个数组的元素个数称为____。

答案:数组的长度或数组的维度3. 函数____用于输出格式化的数据到标准输出设备。

答案:printf4. 在C语言中,____关键字用于定义一个函数的返回类型。

南昌大学C语言期末考试试卷

南昌大学C语言期末考试试卷

第 4 页 共 8页
二, 程序阅读题 (每小题 6 分,共 30 分)
得分 评阅人
1.源程序如下: #include <stdio.h> main() { int k=4, m=1, p; p=func(k,m); printf("%d,",p); p=func(k,m); printf("%d \n",p); } func(int a, int b) { static int m=0, i=2; i+=m+1; m=i+a+b; return m; } 程序运算后的结果为:____________. 2.源程序如下: main(){ int a[][3]={{1,2,3},{4,5,0}},{*pa}[3],i; pa=a; for(i=0;i<3;i++) if(i<2) pa[1][i]=pa[1][i]-1; else pa[1][i]=1; printf("%d\n",a[0][1]+a[1][1]+a[1][2]); } 程序运算后的结果为:____________. 3.源程序如下: int m(unsigned k) { int s=1; do{ s*=k%10; k/=10; }while(k); return s; } main() { printf("%d,%d\n",m(1234),m(43209)); } 则程序的输出结果是果是:____________. 4.源程序如下: main(){ int a=10,b=20,c; c=(a%b<1)||(a/b>1); printf("%d %d %d\n",a,b,c); } 程序运算后的结果为:____________.

南昌大学09-10届c语言期末考试试题

南昌大学09-10届c语言期末考试试题

南昌大学 2009~2010学年第二学期期末考试试卷(1)输入项可以是一个实型常量,例如:scanf(“%f”,3.5);(2)只有格式控制,没有输入项,也能正确输入数据到内存,例如:scanf(“a=%d,b=%d”);(3)当输入一个实型数据时,格式控制部分可以规定小数点后的位数,例如: scanf(“%7.2f”,&f);(4) 当输入数据时,必须指明变量的地址,例如: scanf(“%f”,&f);6、以下程序的输出结果是。

main(){ int a=12, b=12;printf(“%d %d\n”,--a,++b);}(1)10 10 (2)12 12 (3)11 10 (4)11 137、C语言基本类型包括________。

(1) 整型、实型、逻辑型 (2) 整型、实型、字符型(3) 整型、字符型、逻辑型 (4) 整型、实型、字符型、逻辑型8、有以下程序main( ){ int a=15,b=21,m=0;switch(a%3){ case 0: m++;break;case 1: m++;switch(b%2){ default: m++;case 0: m++;break; }}printf(“%d\n”,m);}则该程序运行后的输出结果是________。

(1)1 (2) 2 (3) 3 (4)49、以下关于运算符优先顺序的描述中正确的是___ __。

(1) 关系运算符<算术运算符<赋值运算符<逻辑与运算符(2) 逻辑与运算符<关系运算符<算术运算符<赋值运算符(3) 赋值运算符<逻辑与运算符<关系运算符<算术运算符(4) 算术运算符<关系运算符<赋值运算符<逻辑与运算符10、阅读以下程序:main( ) { int x;scanf("%d",&x);if(x--<5) printf("%d",x);else printf("%d",x++);}该程序运行后,如果从键盘上输人5并按回车键,则输出结果是。

2022年南昌大学共青学院公共课《C语言》科目期末试卷B(有答案)

2022年南昌大学共青学院公共课《C语言》科目期末试卷B(有答案)

2022年南昌大学共青学院公共课《C语言》科目期末试卷B(有答案)一、填空题1、假设变量a和b均为整型,以下语句可以不借助任何变量把a、b中的值进行交换。

请填空。

a+=_______;b=a-_______;a-=_______;2、C语言源程序的基本单位是________3、结构化程序由________、________ 、________ 3种基本结构组成。

4、若a是int型变量,且a的初值为6,则执行表达式a+=a-=a*a后a的值为_______5、若a是int型变量,则执行表达式a=25/3%3后a的值为_______6、设x是一个整数(16bit),若要通过xly使x低8位置1,高8位不变,则y的八进制数是_______。

7、鸡兔共有30只,脚共有90只,下面程序段是计算鸡兔各有多少只。

请填空。

for(x=0;x<=30;x++){y=30一x;if(_______)printf("%d,%d\n",x,y);}8、若有定义floata[3][5];则a数组所含数组元素个数是_______,a数组所占的字节数是_______。

9、下面程序段将输出computer。

请填空。

char c[]="It is a computer";for(i=0;_______;i++){_______;printf("%c",c[j]);}10、设main函数的说明为:int main(int argc,char*argv[]),且有命令行为:FILE1123<回车>,则argc的值是_______,argv[1]的值是_______。

二、选择题11、下面4个选项中,是合法浮点数的选项是。

( )A.+1e+1B.-.60C.123eD.-e35e-9.4 12e-4 1.2e-4. 8e-403e2 -8e5 +2e-1 5.e-012、已知字母A的ASCII码为十进制数65,且定义c2为字符型变量,则执行语句c2='A'+'6'-'3';后,c2中的值为( )。

南昌大学C语言题库

南昌大学C语言题库

C 语言题库1、 一个C 程序的执行是从程序的执行是从___ A _____ A _____ A __。

A)A)本程序的本程序的main 函数开始函数开始,,到main 函数结束函数结束B)B)本程序文件的第一个函数开始本程序文件的第一个函数开始本程序文件的第一个函数开始,,到本程序文件的最后一个函数结束到本程序文件的最后一个函数结束C)C)本程序的本程序的main 函数开始函数开始,,到本程序文件的最后一个函数结束到本程序文件的最后一个函数结束D)D)本程序文件的第一个函数开始本程序文件的第一个函数开始本程序文件的第一个函数开始,,到本程序main 函数结束函数结束2、 以下叙述正确的是以下叙述正确的是: C : CA)A)在在C 程序中程序中,main ,main 函数必须位于程序的最前面函数必须位于程序的最前面 B)C 程序的每行中只能写一条语句程序的每行中只能写一条语句 C)C 语言本身没有输入输出语句语言本身没有输入输出语句D)D)在对一个在对一个C 程序进行编译的过程中程序进行编译的过程中,,可发现注释中的拼写错误可发现注释中的拼写错误3、 以下叙述不正确的是。

以下叙述不正确的是。

D DA)A)一个一个C 源程序可由一个或多个函数组成源程序可由一个或多个函数组成 B)B)一个一个C 源程序必须包含一个main 函数函数C)C 程序的基本组成单位是函数程序的基本组成单位是函数 D)D)在在C 程序中程序中,,注释说明只能位于一条语句的后面注释说明只能位于一条语句的后面4、 C 语言规定语言规定::在一个源程序中在一个源程序中,main ,main 函数的位置函数的位置 C C C 。

A)A)必须在最开始必须在最开始必须在最开始 B)B)必须在系统调用的库函数的后面必须在系统调用的库函数的后面必须在系统调用的库函数的后面C)C)可以任意可以任意可以任意 D)D)必须在最后必须在最后必须在最后5、 一个C 语言程序是由语言程序是由 B BA)A)一个主程序和若干子程序组成一个主程序和若干子程序组成一个主程序和若干子程序组成 B)B)函数组成函数组成函数组成 C)C)若干过程组成若干过程组成若干过程组成 D)D)若干子程序组成若干子程序组成若干子程序组成6、 在C 语言中语言中((以16位PC 机为例机为例),5),5种基本数据类型的存储空间长度的排列顺序为种基本数据类型的存储空间长度的排列顺序为 A AA) char< int < 1ong int<=float<double B)char=int<1ong int<=float<doubleC) char< int < 1ong int=float=double D)char=int =1ong int<=float<double7、 若x,i,j 和k 都是int 型变量型变量,,则执行下面表达式后x 的值为的值为 C Cx=(i=4,j=16,k=32)A)4 B)16 C)32 D)528、 假设所有变量均为整型假设所有变量均为整型,,则表达式则表达式(a=2,b=5,b++,a+b)(a=2,b=5,b++,a+b)(a=2,b=5,b++,a+b)的值是的值是的值是: B : BA)7 B)8 C)6 D)29、 下列四组选项中下列四组选项中,,均不是C 语言关键字的选项是语言关键字的选项是 A AA)define B)getc C)include D)while IF char scanf go Type printf case pow 1010、、 下面四个选项中下面四个选项中,,均是C 语言关键字的选项是语言关键字的选项是 B BA)auto B)switch C)signed D)if Enum typedef union struct Include continue scanf type 1111、、 下面四个选项中下面四个选项中,,均是不合法的用户标识符的选项是。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一、单项选择题(每空2 分,共50 分)(请将各小题正确答案的字母序号填到相应小题的下划线上)得分评阅人1. C语言的运算符按运算对象的数目可以分为。

A) 单目运算一种 B) 单目和双目运算符C) 单目、双目和三目运算符D) 单目、双目、三目运算和四目运算符2. C语言表达式2/5*10的值是。

A) 0.04 B) 4 C) 4.0 D) 03. 已知变量f和i的类型说明如下:float f=12.34; int i;则以下符合C语言语法的表达式是。

A) i=(int)f%5 B) i=int(f)%5C) i=f%5 D) i=(int f)%54. 能正确表示数学式1≤x≤5的C语言表达式是。

A) 1 <=x<=5 B) (x> =1)&(x<=5 )C) (x>=1 )&&(x<=5) D) (1 < =x)||(5> =x)5. 设变量c的数据类型是char,i的数据类型是int,f的数据类型是float,则C语言表达式c*i+c*f-i+100值的数据类型为。

A) int B) float C) char D) 不确定6. 在下列选项中,合法的C语言用户标识符的是。

A)int B)sin C)if D)i+j7. C程序的执行从开始。

A) 程序中的第1个语句 B) 程序中的第1个函数C) 名为main 的函数 D) 包含文件的第1个函数8. 凡在C语言函数中未指定存储类别的变量,其隐含的存储类别为。

A) 自动(auto) B) 静态(static) C) 字符串D) 字符或字符型变量值9. 以下程序运行时要求输入10和20分别存放在变量x和y中,能正确输入数据的是。

main(){int x,y;scanf("x=%d,y=%d",&x,&y);printf("x+y=%d",x+y);}(说明:用<CR>表示换行符,用_表示空格符)A) 10_20<CR> B) x=10,y=20<CR>C) 10<CR> D) x=10<CR>20<CR> y=20<CR>10. 下面程序的运行结果是。

main(){int a,b;a=32767;b=a+1;printf("a=%d,b=%d\n",a,b);A) a=32767,b=-32768 B) a=32767,b=32768C) a=32767,b=1 D) 运行出错11. 在C语言中,以下错误的描述是。

A) break语句不能用于循环语句和switch语句外的任何其它语句B) 在switch语句中使用break语句或continue语句的作用相同C) 在循环语句中使用continue语句是为了结束本次循环,而不是终止整个循环D) 在循环语句中使用break语句是为了使流程跳出循环体,提前结束循环12. 在C语言中,数组作为函数的形参,函数调用时,若用数组名作为函数的实参,则实际上传递给形参的是。

A) 数组首地址 B) 数组的第一个元素值C) 数组中全部元素的值 D) 数组元素的个数13. C语言编译系统对宏命令是。

A) 在程序运行时进行替换处理B) 在程序连接时进行处理C) 和源程序中其它C语句同时进行编译D) 在对源程序中其它成份正式编译之前进行处理14. 设x、y为整型变量且已赋值,将其中较大的值输出的、正确的if 语句是。

A) if ( x >y ) printf ( “ %d ” , x );B) if ( x >y ) printf ( “ %d ” , x );printf ( “ %d ” , y );C) if ( x >y ) ; printf ( “ %d ” , x ); else printf ( “ %d ” , y );D) if ( x >y ) printf ( “ %d ” , x ); else printf ( “ %d ” , y );15. 对以下程序段描述正确的是。

x=10;while(x) x=x/4;A) 不执行循环体 B) 循环体执行一次C) 循环体执行二次 D) 死循环16. 在C语言中,引用数组元素时,对数组下标的数据类型以下说法错误的是。

A) 数组下标可以用整型常量 B) 数组下标可以用整型变量C) 数组下标可以用任意类型的表达式 D) 数组下标可以用整型表达式17. 以下C函数的功能是。

int fun(int x,int y){ int z=0;z=x>y?x:y;return z; }A) 求x 和y二者中的最大值B) 求x 和y二者中的最小值C) 返回一个不确定的值 D) 返回函数值为“0”18. 定义数组:int s[10];则数组元素下标的取值。

A) 最小值为1,最大值为10 B) 最小值为0,最大值为10C) 最小值为0,最大值为9 D) 最小值为1,最大值为919. 已知int i,s[4][5];不能表示数组第3行第3列元素值的是。

A) * ( * ( x) )+ 3 B) x [ 3 ] [ 3 ]C) * ( * ( x + 3 ) + 3 ) D) * ( x [ 3 ] + 3 )20. 以下C函数的类型是。

fun (float f ){ printf ( “ %f \n ” , f ) ; }A) int B) float C) void D) 无法确定21. 设char *s1,s2[255]=“programing” ;以下操作正确的是。

A) *s1 = “function”; B) s2=“function”;s1=s2;C) s1 = “function”;s2=s1; D) *s2='P';s1 =s2 ;22. 设有说明语句:struct student{ int num,age; };struct student stu[3]={{6001,20},{6003,21},{6005,19}};struct student *p=stu;则下面的C语言表达式中,值为6003的是。

A) ++(p->num) B) (p++)->numC) (*p++).num D) (*++p).num23. 已有定义int ( * p ) ( ) ; 则指针p 可以。

A) 代表函数的返回值 B) 指向函数的入口地址C) 代表函数的类型D) 代表函数返回值的类型24. 若用下列语句输出26个大写英文字母:(1)for(a='A';a<='Z';a++) printf("%c",a);(2)for(a='Z';a>='A';a--) printf("%c",a);(3)for(a='A';a<='Z';) printf("%c",a++);(4)for(a='A';a++<='Z';) printf("%c",a);以下说法正确的是。

A) 全都能输出B) 只有前三个语句可以输出C) 只有前两个语句可以输出D) 只有第一个语句可以输出25. 设以下程序用来求三个元素的数组中,第1个元素与第3个元素之和(程序每行前面的数字表示行号)。

1 main()2 { int a[3]={3*0},i;3 for(i=1;i<3;i++) scanf("%d",a[i]);4 for(i=1;i<3;i++) a[0]=a[0]+a[i+1];5 printf("%d",a[0]); }则下述说法正确的是。

A) 第2行有语法错误 B) 第3行有错误,程序得不到预期结果C) 编译时第4行出现语法错误D) 可以得到正确结果二、程序阅读题(每小题3分,共18分)(写出以下程序运行的结果)得分评阅人1.#include<stdio.h>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=%d\n",c,d); } 程序运行结果为:2.#include <stdio.h>main(){ int a=10,b=0;if (a!=0){ a=a+1;b=b+1;}else{ a=a+2;b=b+2;}printf(“%d,%d\n",a,b); }程序运行结果为:3.#define V(s) s*s*s#include <stdio.h>main(){ int volume;volume=V(1);printf("%d\t",volume);volume=V(2);printf("%d\t",volume);volume=V(1+2);printf("%d\n",volume); }程序运行结果为:4.#include <stdio.h>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;i<n;i++){ for(j=0;j<i;j++) printf("%c",s[j%5]);printf("\n");}}void sub_s2(char s[ ],int n){ int i,j;for(i=0;i<n;i++){ for( j=i;j<n;j++) printf("%c",s[j%5]); printf("\n");}}程序运行结果为:5.#include <stdio.h>main(){ int i,a;int fun(int m);for(i=0;i<2;i++){ a=fun(4+i);printf("%d\n",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 <stdio.h>main(){ int i,k=0,s[10]={1,2,3,4,5,6,7,8,9,10}; for(i=0;i<10;i++)if(i%2) k+=s[i];for(i=i-1;i>=0;i--)if(i%5= =0) printf(“%d\t”,s[i]);printf(“%d\n”,k);}程序运行结果为:三、填空题(每空 2 分,共20 分)(请在下划线上填入合适的内容,完成程序或程序段所要求的功能)得分评阅人7. 以下程序运行时从键盘输入字符串ABCDE按回车键结束输入,要求在下划线上填入合适的内容,使输入字符串中的…A‟和…B‟转换为字符…#‟输出,其它字符输出为…*‟。

相关文档
最新文档