南昌大学C语言期末考试试卷
南昌大学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语言试题及答案一、选择题(每题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语言试题及答案一、选择题(每题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 ~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期末考试试卷(标准答案全)
南昌大学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语言期末考试题及答案一、选择题(每题2分,共20分)1. 下列关于C语言的描述中,错误的是:A. C语言是一种高级语言B. C语言的执行方式是编译执行C. C语言支持面向对象编程D. C语言具有丰富的库函数答案:C2. 在C语言中,用于定义一个结构体的关键字是:A. structB. unionC. enumD. typedef答案:A3. 下列关于数组的描述中,正确的是:A. 数组必须在定义时初始化B. 数组的下标从1开始C. 数组可以存储不同类型的数据D. 数组的大小在定义后不能改变答案:D4. 在C语言中,用于文件操作的库函数是:A. printfC. fopenD. getchar答案:C5. 下列关于指针的描述中,错误的是:A. 指针可以存储变量的地址B. 指针可以作为函数的参数C. 指针可以被赋值为NULLD. 指针可以存储函数的地址答案:D6. 在C语言中,用于定义一个函数的关键字是:A. functionB. defC. voidD. int答案:B7. 下列关于循环的描述中,错误的是:A. for循环可以嵌套使用B. while循环可以和break语句一起使用C. do-while循环至少执行一次D. 循环体内不能使用continue语句答案:D8. 在C语言中,用于定义一个宏的预处理命令是:B. #includeC. #pragmaD. #import答案:A9. 下列关于函数的描述中,错误的是:A. 函数可以有返回值B. 函数可以没有参数C. 函数可以没有返回值D. 函数可以没有定义答案:D10. 在C语言中,用于定义一个枚举类型的关键字是:A. enumB. structC. unionD. typedef答案:A二、填空题(每题2分,共10分)1. C语言中,用于定义一个整型变量的关键字是____。
答案:int2. 在C语言中,表示逻辑与运算的运算符是____。
答案:&&3. 当需要在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期末考试题及答案一、选择题(每题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语言中,用于定义指针的关键字是____。
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中的值为( )。
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学年第二学期期末考试试卷(答案已上传)
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(有答案)一、填空题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语言期末考试题及答案一、选择题(每题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)
南昌大学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语言程序设计期终试卷答案及评分细则一、单项选择题(每空 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语言05~06第二学期试卷A及答案
。
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>表示换行符,用_表示空格符) B)x=10,y=20<CR> A)10_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=32768 C)a=32767,b=1 D)运行出错 11. 在 C 语言中,以下错误的描述是 。 A)break 语句不能用于循环语句和 switch 语句外的任何其它语句 B)在 switch 语句中使用 break 语句或 continue 语句的作用相同 C)在循环语句中使用 continue 语句是为了结束本次循环,而不是终止整个循环 D)在循环语句中使用 break 语句是为了使流程跳出循环体,提前结束循环 12. 在 C 语言中,数组作为函数的形参,函数调用时,若用数组名作为函数的实参,则 实际上传递给形参的是 A)数组首地址 C)数组中全部元素的值 。 B)数组的第一个元素值 D)数组元素的个数
南昌大学C语言双语期末试卷2
南昌大学C语言双语期末试卷2一(40 Points)1.(3 points) 2 1 7.52.(4 points) Bingo3(6’) 1 0 1 或true false true4.(4 Points) for (i=0;i<15;i++)5.(8 Points)************************************6.(6 Points)(a) double minimum(float a, float b)(b) float average(int x,int y)7. (4 Points)main(){ int n;int mult=1;for(n=1;n<5;n++)mult=mult*n;printf(“Answer is %d\n”,mult);}The output is 24.8(2’) 8 109(3’) d二.Application(40 Points)1. (8 Points)0 11 02. (3 Points) Hello!Hello!Hello!3.(8 Points) top<=bottom top=mid+1 bottom=mid-1 -14.(6 Points)ABCDFGHKL5.(4 Points)1 31 2 6.(8 Points) i<n< p="">array[i];sum/n;aver=average(score,10);7.(3’) Art Art and Science Art and Science of C三.Programming in C(20 Points)1.(6 points)double findmax(double array[],int num){ int i,max;max=array[0];for(i=1;i<num;i++)< p="">{ if(max<array[i])< p="">max=array[i];}return max;}2.(6 Points)main(){ int n;for(n=2;n<1000;n++)if(prime(n))printf(“%d”,n);}int prime(int n){ int k;for(k=2;k<=sqrt(n);k++)if(n%k==0)return 0;return 1;}3. (8’)void SortIntegerArray (int a[],int n) { int i,j,temp; for(i=1;i<n;i++)< p="">{temp=a[i];for(j=i-1;j>=0&&temp<a[j];j--)< p="">a[j+1]=a[j];a[j]=temp;}}第 9 页共 9页</a[j];j--)<></n;i++)<></array[i])<></num;i++)<></n<>。
南昌大学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语言期末考试试题
南昌大学 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并按回车键,则输出结果是。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第 3 页 共 8页
23.下面函数的功能是______。 fun(char *a,char *b){ while((*a!='\0')&&(*b!='\0')&&(*a= =*b)) { a++; b++; } return(*a-*b); } A) 计算 a 和 b 所指字符串的长度之差 B) 将 b 所指字符串连接到 a 所指字符串中 C) 将 b 所指字符串连接到 a 所指字符串后面 D) 比较 a 和 b 所指字符串的大小 24.以下程序的输出结果是______。 main(){ int m=12,n=34; printf("%d%d",m++,++n); printf("%d%d",n++,++m); } A) 12353514 B) 12353513 C) 12343514 D) 12343513 25.以下程序运行后的输出结果是____ #define S(x) 4*x*x+1 main(){ int i=6,j=8; printf("%d\n",S(i+j)); } A) 81 B) 785 C) 402 D) 401 26.有以下程序 main(){ char a[ ]={‘a’,‘b’,‘c’,‘d’, ‘e’, ‘f ’, ‘g’,‘h’,‘\0’}; int i,j; i=sizeof(a); j=strlen(a); printf(“%d,%d\b”i,j); } 程序运行后的输出结果是 _________。 A) 9,9 B) 8,9 C) 1,8 D) 9,8 27.若 x 和 y 代表整型数,以下表达式中不能正确表示数学关系|x-y|<10 的是 _____。 A) abs(x-y)<10 B) x-y>-10&& x-y<10 C) @(x-y)<-10||!(y-x)>10 D) (x-y)*(x-y)<100 28.若有说明语句: int c[4][5],(*p)[5];p=c; 能正确引用 c 数组元素的是 _________。 A) p+1 B) *(p+3) C) *(p+1)+3 D) *(p[0]+2)) 29.设有以下语句 typedef struct S { int g; char h;} T; 则下面叙述中正确的是 _________。 A) 可用 S 定义结构体变量 B) 可以用 T 定义结构体变量 C) S 是 struct 类型的变量 D) T 是 struct S 类型的变量 30. 有以下程序 main( ) { unsigned char a,b; a=4|3; b=4&3; printf(“%d %d\n”,a,b); } 执行后输出结果是 _________。 A) 7 0 B) 0 7 C) 1 1 D) 43 0
南昌大学 2005~2006 学年第二学期期末考试试卷
试卷编号: 课程编号: 适用班级: 学院:
题号 题分 得分 一 30 二 30 三 22
( B)卷 闭卷
H61050001 全校理工科
课程名称: 姓名: 专业:
四 18 五 六
C 程序设计 学号:
考试形式:
班级: 考试日期:
七
八
九
十
总分 100
累分人 签名
第 5 页 共 8页
5.源程序如下:
#include <string.h> move(char *str, int n){ char temp ; int i; temp=str[n-1]; for(i=n-1; i>0;i--) str[i]=str[i-1]; str[0]=temp; } main(){ char s[50]; int n, i, z; scanf("%d,%s",&n, s); z=strlen(s); for(i=1; i<=n; i++) move(s,z); printf("%s\n",s); } 若从键盘输入:3,abcde<回车>,则输出结果是:____________。
第 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); } 程序运算后的结果为:____________。
第 2 页 共 8页
16.以下程序的输出结果是______。 main(){ int a[3][3],*p,i; p=&a[0][0]; for(i=0;i<9;i++) p[i]=i; for(i=0;i<3;i++) printf("%d ",a[1][i]); } A) 0 1 2 B) 1 2 3 C) 2 3 4 D) 3 4 5 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=%d\n”,a,b); } A) a=2,b=1 B) a=1,b=1 C) a=1,b=0 D) a=2,b=2 18.以下程序执行后 sum 的值是______。 main(){ int i,sum=0; for(i=1;i<6;i++) sum+=i; printf(“%d\n”,sum); } A) 15 B) 14 C) 不确定 D) 0 19.以下程序的输出结果是______。 main(){ int a=1,b; for(b=1;b<=10;b++){ if(a>=8) break; if(a%2==1){a+=5;continue;} a-=3; } printf("%d\n",b); } A) 3 B) 4 C) 5 D) 6 20.以下程序的输出结果是______。 main(){ char s[]="159",*p; p=s; printf("%c",*p++); printf("%c",*p++); } A) 15 B) 16 C) 12 D) 59 21.若 fp 是指向某文件的指针,且已读到文件的末尾,则 C 语言函数,feof(fp)的返回 值不可能是______。 A) EOF B) -1 C) 1 D) NULL 22.以下能正确定义二维数组的是_______。 A) int a[][3]; B) int a[][3]=2{2*3}; C) int a[][3]={1}; D) int a[2][3]={{1},{2},{3,4}};
考生注意事项:1、本试卷共 8 页,请查看试卷中是否有缺页或破损。如有立即举手报告以便更 换。 2、考试结束后,考生不得将试卷、答题纸和草稿纸带出考场。
一、 单项选择题 (每空 1 分,共 30 分)
得分 评阅人
说明:请将各小题正确答案的字母 序号填到相应小题的下划线上。
1.一个 C 程序的执行是从 。 A)本程序的 main 函数开始,到 main 函数结束 B)本程序文件的第一个函数开始,到本程序文件的最后一个函数结束 C)本程序的 main 函数开始,到本程序文件的最后一个函数结束 D)本程序文件的第一个函数开始,到本程序 main 函数结束 。 2.一个 C 语言程序是由 A) 若干主程序和若干子程序组成 B) 函数组成 C) 若干过程组成 D) 若干子程序组成 3.以下不能定义为用户标识符是 。 A) Main B) _0 C) _int D) sizeof 4.合法的 C 语言赋值语句是 。 A) a=b=58 B) i++; C) a=58,b=58 D) k=int(a+b); 5.以下所列的 C 语言常量中,错误的是 。 A)0xFF B) 1.2e0.5 C) 2L D) ’\72’ 6.若已定义 x 和 y 为 double 类型,则表达式 x=1,y=x+3/2 的值是 。 A) 1 B) 2 C) 2.0 D) 2.5