安徽大学C语言期末试卷(含答案),DOC

合集下载

大学C语言期末考试试题(含答案)

大学C语言期末考试试题(含答案)

第一章C语言概述1.1 选择题*1.1一个C程序的执行是从 A 。

A)本程序的main函数开始,到main函数结束B)本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C)本程序的main函数开始,到本程序文件的最后一个函数结束D)本程序文件的第一个函数开始,到本程序main函数结束参考答案:A参考分析:C语言总是从main函数开始,main函数结束。

但是C 语言中存在一个exit(0)函数,它可以使得程序在任何时候、任何位置结束程序的运行。

如果不考虑exit(0)等函数的特殊作用,C则总是在main函数结束。

*1.2以下叙述正确的是 C 。

A)在C程序中,main函数必须位于程序的最前面B)在C程序的每一行只能写一条语句C)C语言本身没有输入输出语句D)在对一个C程序进行编译的过程中,可发现注释中的拼写错误参考答案:C参考分析:C程序对main函数的位置没有任何要求;其书写格式自由,一行可以写多条语句,一条语句(多关键字语句)可以写在多行;C语言忽略注释,把注释看作是一个空格,不会对注释中的内容进行语法检查。

因此,如果注释中存在错误,系统是不可能发现的。

另外,C语言的I/O操作均通过函数实现,系统本身未提供相应的语句。

1.3以下叙述不正确的是 D 。

A)一个C源程序可由一个或多个函数组成B)一个C源程序必须包含一个main函数C)C程序的基本组成单位是函数D)在C程序中,注释说明只能位于一条语句的后面参考答案:D参考分析:C语言中,注释语句的位置是任意的,当然,它不能破坏标识符的完整性。

C语言只是将一个注释看作是一个空格,因此对注释内的任何错误都不作检查。

1.4 C语言规定:在一个源程序中,main函数的位置 C 。

A)必须在最开始B)必须在系统调用的库函数的后面C)可以任意D)必须在最后参考答案:C*1.5一个C语言程序是由 B 。

A)一个主程序和若干个子程序组成B)若干函数组成C)若干过程组成D)若干子程序组成参考答案:B参考分析:通常许多语言程序由主程序和子程序构成,但是C语言是函数式语言,整个程序由众多函数组成。

C语言期末考试试卷附参考答案

C语言期末考试试卷附参考答案

C语言期末考试一试卷附参照答案序列中 10 个数的次序为:,若使用次序比较法,经过三轮排序后,这10 个数的次序为:。

3. 调用字符串办理函数时,应在程序的开头增添预编译命令:#include<>,puts( )函数将一个以结束的字符序列(字符串)输出到终端4.C 语言中,函数分为系统供给的和用户自定义函数两类,也可分为有参函数和两类。

5.函数的递归调用指在调用一个函数的过程中又。

6.函数值只好经过语句返回主调函数。

四、程序改错(求出两个非零正整数的最大条约数在右侧写出正确内容, 5× 2)#include<stdio.h>int fun(int a, b ){ int r,t;if(a<b) {t=a;b=a;a=t;}r=a%b;while(r!=0){a=b;b=r;r=a/b;}return a;}五、阅读程序写出运转结果(4×5)1.# include<stdio.h>int main( ){ void fun(int x);fun(8);printf("\n");}void fun(int x){if(x/2>0) fun(x/2);printf("%d",x);}运转结果为:3. #include <stdio.h># include<math.h>int main( ){ int i,j,n=0;for(i=― 5;i<=5;i++){ if(i%2!=0) n++;for(j=1;j<=abs(i);j++) printf( “ “);,并作为函数值返回。

在错误下边划横线,void main( ){ int n1,n2,a;printf( “please input n1,n2:\n ”);scanf( “%d%d”,&n1,&n2); a=fun(n1,n2);printf("最大条约数是: %d\n",a);}2.# include <stdio.h>void main ( ){ char s1[ ]=” This book ”;char s2[ ]= ” THIS hook ”;int i;for (i=0;s1[i]!= 0’ &&s2[i]!= 0’i++);if(s1[i]!=s2[i]) printf( “ %c” ,s1[i]);}运转结果为:4.#include <stdio.h>int main( ){int i,j,x;int a[10] ={12,3,14,5,26,97,38,9,0,―2}; for(i=0;i<=9;i++){x=a[i];j=i-1;while(j>=0&&x<a[j])六、程序填空题(结果按次号填在下方对应横线上, 10× 2 分)1、编程实现将十进制整数 n 变换成十六进制 2、编写判断能否为素数的函数,在主函数 数输出。

安徽大学c语言期末考试复习考点汇总

安徽大学c语言期末考试复习考点汇总

安徽大学C语言程序设计期末考试复习一、选择题能将高级语言编写的源程序转换成目标程序的是______。

A) 编辑程序B) 编译程序C) 解释程序D) 链接程序您的答案为:参考答案为:BB以下选项中合法的用户标识符是______。

A) long B) _2Test C) 3Dmax D) A.dat您的答案为:参考答案为:BB以下叙述正确的是A) 可以把define和if定义为用户标识符B) 可以把define定义为用户标识符,但不能把if定义为用户标识符C) 可以把if定义为用户标识符,但不能把define定义为用户标识符D) define和if都不能定义为用户标识符参考答案为:B您的答案为:B以下叙述正确的是A) C语言比其他语言高级B) C语言可以不用编译就能被计算机识别执行C) C语言以接近英语国家的自然语言和数学语言作为语言的表达形式D) C语言出现的最晚、具有其他语言的一切优点参考答案为:C您的答案为:C在一个C语言程序中A) main函数必须出现在所有函数之前B) main函数必须出现在所有函数之后C) main函数可以在任何地方出现D) main函数必须出现在固定位置参考答案为:C您的答案为:C一个C语言程序是由_______组成的。

A) 一个主程序和若干子程序 B) 若干子程序 C) 函数 D) 若干过程参考答案为:C您的答案为:C以下叙述中正确的是()A) C语言的源程序不必通过编译就可以直接运行B) C语言中的每条可执行语句最终都将被转换成二进制的机器指令C) C源程序经编译形成的二进制代码可以直接运行D) C语言中的函数不可以单独进行编译您的答案为:参考答案为:BB下列关于C语言用户标识符的叙述中正确的是A) 用户标识符中可以出现下划线和数字,它们都可以放在用户标识符的开头B) 用户标识符中可以出现下划线,但不可以放在用户标识符的开头C) 用户标识符中不可以出现中划线,但可以出现下划线D) 用户标识符中可以出现下划线和中划线(减号)参考答案为:C您的答案为:C以下说法中正确的是A)C语言程序总是从第一个定义的函数开始执行B)C语言程序中,要调用的函数必须在main()函数中定义C)C语言程序总是从main()函数开始执行D)C语言程序中的main()函数必须放在程序的开始部分参考答案为:C您的答案为:C默认情况下,一个C程序的执行是从A)本程序的main函数开始,到main函数结束B)本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C)本程序的main函数开始,到本程序文件的最后一个函数结束D)本程序文件的第一个函数开始,到本程序main函数结束参考答案为:A您的答案为:AC语言编程整个操作的过程是A)编辑、编译、链接、执行B)编译、编辑、链接、执行C)链接、编译、编辑、执行D)编辑、链接、编译、执行参考答案为:A您的答案为:A下列说法不正确的是A)链接操作将生成扩展名为.lnk的文件B)编辑过程将生成扩展名为.cpp或.c的文件C)编译过程将生成扩展名为.obj的文件C)C编程最终要生成扩展名为.exe的文件参考答案为:A您的答案为:AC语言提供了丰富的结构化语句,直接支持____、_____和_______三种基本程序结构。

大一c期末考试题及答案

大一c期末考试题及答案

大一c期末考试题及答案大一C语言期末考试题及答案一、选择题(每题2分,共20分)1. C语言中,以下哪个选项是合法的标识符?A. 2variableB. variable2C. variable-2D. variable$2答案:B2. 下列哪个选项不是C语言的基本数据类型?A. intB. floatC. stringD. double答案:C3. 在C语言中,以下哪个选项不是运算符?A. +B. -C. %D. :答案:D4. 若有定义:int a=5, b=3;,则表达式a%b的值是多少?A. 2B. 1C. 0D. 3答案:A5. 下列哪个选项不是C语言中的控制语句?A. ifB. switchC. forD. while答案:B6. 在C语言中,以下哪个选项是正确的字符串声明?A. char str[5] = "hello";B. char str[] = {'h', 'e', 'l', 'l', 'o'};C. char str[6] = "hello";D. char str[] = "hello";答案:D7. 在C语言中,以下哪个函数用于计算字符串的长度?A. strlen()B. strcpy()C. strcat()D. strcmp()答案:A8. 下列哪个选项不是C语言中的数组?A. int a[5];B. int a[5] = {1, 2, 3, 4, 5};C. int a[] = {1, 2, 3};D. int a = {1, 2, 3};答案:D9. 在C语言中,以下哪个选项是正确的函数声明?A. int add(int a, int b);B. int add(int, int);C. int add();D. int add(int a);答案:A10. 在C语言中,以下哪个选项是正确的文件操作函数?A. fopen()B. fclose()C. printf()D. scanf()答案:A二、填空题(每空2分,共20分)1. 在C语言中,用于定义一个整型变量的关键字是________。

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

大学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语言中表示一个常量时,可以使用关键字____。

完整word版,C语言程序设计期末考试试题(含答案)

完整word版,C语言程序设计期末考试试题(含答案)

C语言程序设计期末考试试题及其答案一、单项选择题(本大题共20题,每题2 分,共40分)1、以下不是C语言的特点的是( )A、C语言简洁、紧凑B、能够编制出功能复杂的程序C、C语言可以直接对硬件进行操作D、C语言移植性好2、以下不正确的C语言标识符是( )A、ABCB、abcC、a_bcD、ab.c3、一个C语言程序是由( )A、一个主程序和若干子程序组成B、函数组成C、若干过程组成D、若干子程序组成4、一个算法应该具有“确定性”等5个特性,对另外4个特性的描述中错误的是( )A、有零个或多个输入B、有零个或多个输出C、有穷性D、可行性5、设变量a是整型,f是实型,i是双精度型,则表达式10+‘a’+i*f值的数据类型为( )A、intB、floatC、doubleD、不确定6、在C语言中,char型数据在内存中的存储形式是( )A、补码B、反码C、源码D、ASCII码7、有如下程序,输入数据:12345M678<cR>后(<CR>表示回车),x的值是( ) 。

#include<stdio.h>main(){int x;float y;scanf("%3d%f",&x,&y);}A、12345B、123C、45D、3458、若有以下定义int a,b; float x,则正确的赋值语句是( )A、a=1,b=2B、b++;C、a=b=5D、b=int(x);9、以下程序的执行结果是( )#include<stdio.h>{int i=10,j=10;printf("%d,%d\n",++i,j--);}A、11,10B、9,10C、11,9D、10,910、巳知字母A的ASCII码是65,以下程序的执行结果是( )#include<stdio.h>main(){char c1='A',c2='Y';printf("%d,%d\n",c1,c2);A、A,YB、65,65C、65,90D、65,8911、下列运算符中优先级最高的是( )A、<B、十C、%D、!=12、设x、y和z是int型变量,且x=3,y=4,z=5,则下面表达式中值为0是( ) 。

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

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

C语言程序设计期末考试试题含答案一、选择题(每题 3 分,共 30 分)1、以下选项中,不是 C 语言关键字的是()A intB floatC charD string答案:D解释:string 不是 C 语言的关键字,C 语言中表示字符串通常使用字符数组。

2、以下能正确表示八进制整数的是()A 018B 0x18C 0o18D 18答案:C解释:在 C 语言中,八进制整数以 0 开头,数字取值范围 0 7,所以 0o18 能正确表示八进制整数。

3、若有定义:int a = 5, b = 2; 则表达式 a / b 的值是()A 25B 2C 20D 3答案:B解释:在 C 语言中,两个整数相除,结果为整数,舍去小数部分,所以 5 / 2 的结果是 2 。

4、以下程序段的输出结果是()int x = 10;printf("%d\n",++x);A 10B 11C 9D 12答案:B解释:++x 是先将 x 的值增加 1,然后再使用 x 的值,所以输出11 。

5、若有定义:int a5 ={1, 2, 3, 4, 5};则 a2的值是()A 2B 3C 4D 5答案:B解释:数组下标从 0 开始,所以 a2的值是 3 。

6、以下函数声明中,正确的是()A void fun(int a, b);B void fun(int a, int b);C void fun(int a; int b);D void fun(int, int);答案:B解释:函数参数列表中,每个参数都需要明确指定其类型,所以 B 选项正确。

7、若有定义:char str ="hello";则 sizeof(str)的值是()A 5B 6C 20D 不确定答案:B解释:str 数组不仅包含字符'h','e','l','l','o',还包含一个字符串结束符'\0',所以 sizeof(str)的值是 6 。

安徽大学c语言试卷

安徽大学c语言试卷

安徽大学20 -20 学年第 学期《C 语言程序设计》期末考试试卷(A 卷120分钟)年级 院系专业 姓名 学号 座位号一. 单项选择题:(每题2分,共40分)下列各题A)、B)、C)、D)四个选项中只有一个是正确的,请将正确选项填在答题卡相应题目的横线上。

答在试卷上不得分。

1.下面程序段执行后,a 的值是______。

int a;printf("%d \n", (a=3*5, a*4, a+5) ); A)60 B)20 C)15 D)102.下列程序段的输出是______。

int x=023;printf("%d \n", --x );A)19 B)18 C)23 D)223.执行下列语句后,a的值是______。

int a=8; a+=a-=a*a;A)-240 B)64 C)112 D)-1124.执行下列语句后,输出的值是______。

int x=6;printf("%d,%d,%d\n",x,x++,--x);A)5,5,5 B)6,5,5 C)7,6,5 D)5,6,55.指出下列程序段所表示的逻辑关系是______。

if(a<b) {if(c==d) x=1; } else x=2;A)若a<b 且c=d ,则x=1;若a>=b 且c!=d ,则x=2。

B)若a<b 且c=d ,则x=1;若a>=b ,则x=2。

C)若a<b 且c=d ,则x=1;若a<b 且c!=d ,则x=2。

D)若a<b 且c=d ,则x=1;若c!=d ,则x=2。

6.下列程序段的执行结果是______。

int i,x;for(i=1,x=1;i<=20;i++){if(x>=10) break;if(x%2==1){x+=5;continue;}x-=3;}printf("%d,%d\n",x,i);A)6,4 B)7,5 C)10,6 D)14,77.下列程序的执行结果是______。

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

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

大一c语言期末考试题及答案一、选择题(每题2分,共20分)1. C语言中,以下哪个关键字用于定义函数?A. intB. floatC. voidD. function答案:A2. 在C语言中,以下哪个是正确的字符串声明?A. char str[10] = "Hello";B. string str = "Hello";C. str[10] = "Hello";D. char str = "Hello";答案:A3. 下列哪个选项不是C语言的基本数据类型?A. intB. floatC. doubleD. string答案:D4. 在C语言中,哪个运算符用于取模运算?A. %B. /C. *D. -答案:A5. 以下哪个选项是C语言中的逻辑运算符?A. &&B. ||C. !D. 以上都是答案:D6. 在C语言中,以下哪个函数用于计算字符串的长度?A. strlen()B. length()C. size()D. len()答案:A7. C语言中,以下哪个关键字用于定义全局变量?A. staticB. externC. autoD. register答案:B8. 在C语言中,以下哪个是正确的数组声明?A. int array[5] = {1, 2, 3, 4, 5};B. int array[] = {1, 2, 3, 4, 5};C. int array[5] = 1, 2, 3, 4, 5;D. int array = {1, 2, 3, 4, 5};答案:B9. 在C语言中,以下哪个关键字用于定义指针?A. pointerB. ptrC. *D. ref答案:C10. 在C语言中,以下哪个函数用于输出格式化的字符串?A. printf()B. scanf()C. sprintf()D. fprintf()答案:A二、填空题(每题2分,共20分)1. C语言中,用于定义一个整型变量的关键字是________。

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

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

c语言期末考试试题及答案一、选择题(每题2分,共20分)1. C语言中,用于定义一个结构体的关键字是:A. structB. unionC. enumD. typedef答案:A2. 下列哪个选项是C语言的合法整数常量?A. 0x12B. 0123C. 12.34D. 1.2e3答案:A3. 在C语言中,用于将字符串复制到另一个字符串的函数是:A. strcpyB. strcatC. strcmpD. strlen答案:A4. 下列关于C语言函数的描述,错误的是:A. 函数可以返回一个值B. 函数可以没有返回值C. 函数可以有多个返回值D. 函数可以没有参数答案:C5. 在C语言中,用于声明一个指针变量的语法是:A. int *p;B. int *p = 0;C. int p*;D. int p = *0;答案:A6. 下列关于C语言数组的描述,正确的是:A. 数组的大小在声明时确定B. 数组的大小在运行时确定C. 数组的大小可以动态改变D. 数组的大小可以是任意值答案:A7. 在C语言中,用于打开文件的函数是:A. fopenB. fcloseC. freopenD. fgetc答案:A8. 下列关于C语言中文件操作的描述,错误的是:A. 文件指针必须指向有效的文件B. 文件指针可以指向标准输入输出流C. 文件指针可以是任意值D. 文件指针可以用于读写操作答案:C9. 在C语言中,用于输出格式化字符串的函数是:A. printfB. scanfC. sprintfD. fprintf答案:A10. 下列关于C语言中指针的描述,正确的是:A. 指针可以存储变量的地址B. 指针可以存储变量的值C. 指针可以存储函数的地址D. 指针可以存储数组的地址答案:A二、填空题(每题2分,共20分)1. 在C语言中,使用________运算符可以获取变量的地址。

答案:&2. C语言中,使用________运算符可以对指针进行递增操作。

安徽大学C语言期末上机考试试卷及答案

安徽大学C语言期末上机考试试卷及答案

2013上机考试试题一、单项选择题1.下列运算符中优先级最高的是【C 】A.||B.*C.++D.&&2.下列数据中定义正确的是【D 】A. char str[3][]={“abc”,’1’};B. char str[][3]={“abc”,’1’};C. char str[3][]={‘a’,’1’};D. char str[][3]={‘a’,’1’};3.下列符号常量的定义中正确的是【D 】A. #define N 1 3B. define N 3C. #define N-1 3D. #define N 34. 下列标识符中不能作为函数名的是【A 】A. 3_fnB. fn_fnC. fn_0D. fn5. 定义float Num; *ptr=&Num; 下列表达式中错误的是【B 】A. *&ptrB. &*NumC. &*ptrD. *&Num6. strlen(“\\129\129abc\t”)的值是【C 】A. 9B. 12C. 10D. 77.整型变量做实参时,它和对应形参之间的数据传递方式是【D 】A. 由用户指定传递方式B. 双向值传递C. 地址传递D. 单向值传递8. 函数调用不可以出现在【A 】中A. 函数的形参B. 表达式C. 函数的实参D. 执行语句9. 下列程序的输出结果是【B 】Int a[]={1,2,3,4,5,6},*pa;pa=a;*(pa+2)+=2;Printf(“%d%d”,*pa,*(pa+2));A. 06B. 15C. 04D. 1410. 以下函数说明正确的是【A 】A. short max (int X, int Y);B. short max (int X; int Y);C. short max (int X; int Y)D. short max (int X, Y)11. char *str=”1234”;char *p;p=str;printf(“%s”,p+1);输出结果是【B 】A. 1234B. 234C. 134D. 12312. 下列条件表达式中,【C 】可以判断c是否为大写字母。

大学《C语言程序设计》期末考试试卷及参考答案

大学《C语言程序设计》期末考试试卷及参考答案

大学《C语言程序设计》期末考试试卷及参考答案《C语言程序设计》期末考试试卷参考答案一、判断题(10分)1、对2、对3、错4、错5、对6、错7、错8、错9、错10、错二、填空题(30分,,1到10题1分1空,10到18题2分1空)1.2.5 2. a!=0&&b!=0 3. m=1b 4. windows 95 5. x[i]>='A'&&x[i]<='Z' 6.234567 7.文件的首纪录前8、struct tree *Ltree,*Rtree 9. i<=10010. char a[10]="continue"; 11. p*pow(1+r,5) 12. 'D' 13. 10、514.#define utol(ch) ch=ch>='A'&& ch<='Z' ? ch+'a'-'A':ch15.首行第i+1个元素的地址,第i+1行的首地址,a[0][0]的值16.p=(int*)mallo(n);17. (-b+sqrt(b*b-4*a*c))/2/a 18. float(*fg)(float **,int,int);三、单项选择题(在每小题的四个备选答案中选出一个正确的,10分))1、A2、B3、C4、B5、D6、A7、A8、B9、C 10、A四、程序阅读题(20分,每题4分)1、 A C E G2、 x=3 y=23、the two string are same:fthe two string are same:r4、 K=85、1《C语言程序设计》期末考试试卷及参考答案一、判断题(10分)1、C语言是一种结构化程序设计语言。

()2、在标准C中,整型变量与字符变量是可以通用的。

()3、在标准C中,“=”是判断两个数是否相等。

c语言期末考试题及答案解析

c语言期末考试题及答案解析

c语言期末考试题及答案解析C语言期末考试题及答案解析一、选择题(每题2分,共20分)1. 下列哪个选项是C语言中的合法变量名?A. 2variableB. variable-nameC. variable#nameD. variable_name答案:D2. C语言中,以下哪个选项是正确的字符串定义?A. char str[10] = "Hello";B. char str[10] = {"Hello"};C. char str[] = "Hello";D. char str = "Hello";答案:C3. 在C语言中,以下哪个语句可以正确地交换两个整数变量a和b的值?A. a = b;B. b = a;C. a = a + b;D. a = a + b; b = a - b; a = a - b;答案:D4. 以下哪个函数不能用于数组元素的初始化?A. memsetB. memcpyC. strcpyD. memmove答案:C5. 在C语言中,以下哪个选项表示一个浮点型常量?A. 3.14B. 0.314e-2C. 314D. 0x3FF答案:B6. C语言中,以下哪个关键字用于定义函数?A. intB. floatC. voidD. return答案:A7. 在C语言中,以下哪个选项是正确的函数声明?A. int function();B. int function int a;C. int function(int a);D. int function(int);答案:C8. 以下哪个选项是C语言中的递归函数?A. void recursive(int n) {}B. void recursive() { recursive(); }C. void recursive(int n) { if (n > 0) recursive(n - 1); }D. void recursive(int n) { recursive(n + 1); }答案:C9. 在C语言中,以下哪个选项是正确的结构体定义?A. struct Person { int age; char name[50]; };B. struct { int age; char name[50]; } Person;C. Person struct { int age; char name[50]; };D. struct Person int age; char name[50];答案:A10. 在C语言中,以下哪个选项是正确的指针声明?A. int *ptr;B. *int ptr;C. int * ptr;D. ptr int *;答案:A二、填空题(每题2分,共10分)1. 在C语言中,使用________运算符可以获取变量的内存地址。

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

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

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

A、print_3ddb8aBcB、I\amone_halfstart$it3paiC、str_1CpppowwhileD、PxqMy->bookline#His.age选项B中的“”,”$”,选项D中“>”,”#,””.,””-”不满足(1);选项C中的while为关键字,不满足(3)9.C语言中的简单数据类型包括(D)。

安徽大学c语言考试题及答案

安徽大学c语言考试题及答案

安徽大学c语言考试题及答案一、选择题(每题2分,共20分)1. C语言中,用于定义结构体的关键字是()。

A. structB. unionC. enumD. typedef答案:A2. 下列哪个选项不是C语言中的基本数据类型?A. intB. floatC. charD. string答案:D3. 在C语言中,用于定义函数的关键字是()。

A. functionB. defC. voidD. int答案:A4. C语言中,用于表示逻辑“与”操作的运算符是()。

A. &&B. ||C. !D. =答案:A5. 下列哪个选项是正确的C语言数组声明?A. int a[10];B. int b[];C. int c = 10;D. int d[10] = {0};答案:A6. 在C语言中,用于定义指针的关键字是()。

A. ptrB. pointC. pointerD. *答案:D7. C语言中,用于文件操作的库函数是()。

A. printfB. scanfC. fopenD. fclose答案:C8. 下列哪个选项是C语言中的预处理命令?A. #defineB. typedefC. enumD. struct答案:A9. 在C语言中,用于声明函数的关键字是()。

A. functionB. defC. voidD. int答案:D10. C语言中,用于定义枚举类型的关键字是()。

A. enumB. structC. unionD. typedef答案:A二、填空题(每题2分,共20分)1. 在C语言中,使用________关键字可以定义一个常量。

答案:const2. C语言中,字符串字面量需要使用________符号括起来。

答案:""3. C语言中,使用________关键字可以定义一个全局变量。

答案:extern4. 在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 选项初始化方式错误,应该用花括号。

安徽大学C语言期末试卷(含答案)

安徽大学C语言期末试卷(含答案)

安徽⼤学C语⾔期末试卷(含答案)安徽⼤学C语⾔程序设计期末试题⼀. 单项选择题:(每题2分,共20分)1.执⾏程序: int a; printf("%d \n", (a=3*5, a*4, a+5) );后,a的值是______。

A)60 B)20 C)15 D)102.程序段:int x=023; printf("%d \n", --x );的输出是______。

A)19 B)18 C)23 D)223.程序段:static char s[10]={'C','h','i','n','a'}; printf("%d\n",strlen(s));的输出是______。

A)6 B)5 C)11 D)104.若fun( int x) { printf(“%d\n”,x);}, 则fun_______。

A)返回值为void 类型B)返回值类型⽆法确定C)返回值为int类型D)没有返回值5. 有宏定义:#define MULT1(a,b) a*b#define MULT2(a,b) (a)*(b)且引⽤宏:y=MULT1(3+2,5+8); z=MULT2(3+2,5+8); 则y和z的值是______。

A)y=65,z=65 B)y=21,z=65 C)y=65,z=21 D)y=21,z=216.程序段char s[]="Hello", *p; p=s;执⾏后,*(p+5)的值是______。

A)'o' B)'\0' C)'o'的地址D)不确定的值7. 程序段:char *s=”ABCD”, *p; for( p=s; *p ; p++) printf("%s\n", p);的输出是______。

安徽大学C语言考试试卷

安徽大学C语言考试试卷

安徽大学20 08 —20 09 学年第 二 学期《C 语言程序设计》考试试卷(B 卷)(闭卷 时间120分钟)一、单项选择题(每小题2分,共20分):下列各题A)、B)、C)、D)四个选项中只有一个是正确的,请将正确 选项填在答题卡相应题目的横线上。

答在试卷上不得分。

1. 设x 为整型变量,和表达式“!(!x)”值完全相同的表达式是【______】 A. x==0B. x==1C. x!=0D. x!=12. 下面程序段执行后,a 的值是【______】。

int a;printf("%d \n", (a=4*5, a*4, a+5) ); A. 60 B. 20 C. 15 D. 10 3. 判断字符串s1与字符串s2相等,应当使用【_______】。

A. if (s1 = s2)B. if (strcmp(s1, s2))C. if (!strcmp(s1, s2))D. if (strcmp(s1, s2) = 0)4. 若有定义int (*p)[4],则标识符p 是一个【_______】。

A. 指向整型变量的指针变量B. 指向函数的指针变量C. 指向有四个整型元素的一维数组的指针变量D. 指针数组名,有四个元素,每个元素均为一个指向整型变量的指针5. 下列程序的执行结果是【_______】。

#include "stdio.h" #include "string.h" void main( void ) {char s[10]={ 'H', 'e', 'l', 'l', 'o'}; printf("%d\n",strlen(s)); }院/系 年级 专业 姓名 学号答 题 勿 超 装 订 线 ------------------------------装---------------------------------------------订----------------------------------------线----------------------------------------A. 5B. 6C. 10D. 116.下列对字符串的定义中,错误的是【______】。

安徽大学期末试卷安徽大学C语言考试试卷1.doc

安徽大学期末试卷安徽大学C语言考试试卷1.doc

安徽大学期末试卷安徽大学2008----2009学年第二学期C语言程序设计期末试题学院专业级学号姓名得分一、单项选择题(30分,每题2分)每小题的四个选项中只有一个符合题目要求,请将正确选项前字母填在括号中。

1.若int a[][3]={1,2,3,4,5,6};则a[1][0]的值是【______】。

A. 4B. 2C. 1D. 52.执行下列程序段后,变量k的值是【______】。

int k=3, s[2];s[0]=k;k = s[1]*10;A)不确定B)0C)10 D)303.执行下列程序段后,变量k的值是【______】。

int k=3, s[2]={1};s[0]=k;k = s[1]+10;A)不确定B)0C)10 D)304.下面程序的输出结果是【______】。

#include <stdio.h>void main(void){int i, a[10];for(i=9;i>=0; i--)a[i]=10-i;printf("%d%d%d\n",a[2],a[5],a[8]);安徽大学期末试卷}A)258 B)741C)852 D)3695.下面程序的输出结果是【______】。

#include <stdio.h>void main(void){int a[3][3]={1,2,3,4,5,6,7,8,9},i;for(i=0;i<3; i++)printf("%d ",a[i][2-i]);}A)1 5 9 B)3 5 7C)1 4 7 D)3 6 96.下面程序的输出结果是【______】。

#include "stdio.h"void fun(int a[]){int i;for(j=0;j<5; j++)a[j]=j;}void main(void){int num[]={5,6,7,8,9}, i;fun(num);for(i=0;i<5; i++)printf("%d ", num[i]);}A. 56789B. 98765C. 01234D. 43210安徽大学期末试卷7.下面程序的输出结果是【______】。

安徽省c语言题库及详解答案

安徽省c语言题库及详解答案

安徽省c语言题库及详解答案安徽省C语言题库及详解答案安徽省作为教育大省,在计算机编程语言的教学上也具有较高的水平。

C语言作为计算机编程的基础语言之一,其题库及答案详解对于学生来说具有很高的参考价值。

以下是安徽省C语言题库中的几道典型题目及其详解答案。

1. 题目一:编写一个程序,计算并输出1到100的累加和。

```c#include <stdio.h>int main() {int sum = 0, i;for (i = 1; i <= 100; i++) {sum += i;}printf("1到100的累加和为:%d\n", sum);return 0;}```2. 题目二:编写一个程序,实现输入两个整数,输出它们的平均值。

```c#include <stdio.h>int main() {int num1, num2;float average;printf("请输入两个整数:");scanf("%d %d", &num1, &num2);average = (num1 + num2) / 2.0;printf("两个整数的平均值为:%f\n", average); return 0;}```3. 题目三:编写一个程序,判断一个整数是否为素数。

```c#include <stdio.h>#include <math.h>int isPrime(int n) {if (n <= 1) return 0;for (int i = 2; i <= sqrt(n); i++) {if (n % i == 0) return 0;}return 1;}int main() {int num;printf("请输入一个整数:");scanf("%d", &num);if (isPrime(num)) {printf("%d 是素数。

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

安徽大学 C语言程序设计期末试题一. 单项选择题:(每题2分,共20分)1.执行程序: int a; printf("%d \n", (a=3*5, a*4, a+5) );后,a的值是______。

A)60 B)20 C)15 D)102.程序段:int x=023; printf("%d \n", --x );的输出是______。

A)19 B)18 C)23 D)223.程序段:static char s[10]={'C','h','i','n','a'}; printf("%d\n",strlen(s));的输出是______。

A)6 B)5 C)11 D)104.若fun( int x) { printf(“%d\n”,x);}, 则fun_______。

A)返回值为void 类型B)返回值类型无法确定C)返回值为int 类型D)没有返回值5. 有宏定义:#define MULT1(a,b) a*b#define MULT2(a,b) (a)*(b)且引用宏:y=MULT1(3+2,5+8); z=MULT2(3+2,5+8); 则y和z的值是______。

A)y=65,z=65 B)y=21,z=65 C)y=65,z=21 D)y=21,z=216.程序段char s[]="Hello", *p; p=s;执行后,*(p+5)的值是______。

A)'o' B)'\0' C)'o'的地址D)不确定的值7. 程序段:char *s=”ABCD”, *p; for( p=s; *p ; p++) printf("%s\n", p);的输出是______。

A)ABCD B)A C)D D)ABCDBCD B C ABCCD C B ABD D A A8. 若定义:int (*p)[3]; 则标识符p______。

A)定义不合法。

B)是一个指针数组名,每个元素是一个指向整型变量的指针。

C)是一个指针,它指向一个具有三个元素的一维数组。

D)是一个指向整型变量的指针。

9. 定义: struct sk {int a; float b;} data,*p; 且p=&data; 则正确引用成员a的方式是______。

A) p.data.a B) (*p).a C) p->data.a D) (*p).data.a10. 以二进制只读方式打开一个已有的文本文件file1,正确调用fopen函数的方式是______。

A)FILE *fp; B)FILE *fp;fp=fopen("file1","rb"); fp=fopen("file1","r+");C)FILE *fp; D)FILE *fp;fp=fopen("file1","r"); fp=fopen("file1","rb+");请将正确答案填在答题卡相应题目的横线上。

答在试卷上不得分。

1.C程序一个函数的定义由__________和____________两部分组成。

2.C语言的整型变量可分为基本型、短整型、________和________。

{ if (*ps>='a'&&*ps<='z') a1++;else if (*ps>='0'&&*ps<='9') a2++;p++; }printf("%d,%d \n",a1, a2); }阅读程序,将其运行结果填在答题卡相应题目的横线上。

答在试卷上不得分。

1. #include "stdio.h"void main() {static int a[]={1,2,3,4,5,6},*p;p=a; *(p+3)+=2;printf("%d,%d\n",*p,*(p+3)); }2. #include "stdio.h"void main() { int x=1;{ int x=2;{ int x=3; printf("%2d",x); }printf("%2d",x); }printf("%2d",x); }3. #include <stdio.h>#include <string.h>void sort( char **str, int n){char *tmp; int i,j;for( i=0; i<n-1; i++ )for( j=0; j<n-i-1; j++ )if(strcmp(str[j],str[j+1])>0)tmp=str[j], str[j]=str[j+1], str[j+1]=tmp; }void main() {char **ps,*str[3]={ "BOOK","COMPUTER","CHINA"};int i;ps=str; sort(ps,3);for(i=0; i<3; i++) printf("%d %s ",i+1, str[i]); }4. #include <stdio.h>int leap_year(int year){return year%4==0 && year%100!=0 || year%400==0; }void main(){int month_day[]={31,28,31,30,31,30,31,31,30,31,30,31 }, days,i;struct date {int year;int month;int day;}mdate={2008,5,1};if(leap_year(mdate.year))month_day[1]++;for(i=1,days=mdate.day;i<mdate.month;i++)days+=month_day[i-1];printf("%d-%d is the %dth day in %d",mdate.month,mdate.day,days,mdate.year); }5. #include <stdio.h>main(){ int i,j; char leader_name[20];for(i=1;i<=10;i++){/***answer begin***/……/***answer end***/}for(i=0; i<3;i++)printf("%5s:%d\n",leader[i].name,leader[i].count);}4. 从键盘上输入一个字符串,将其中的小写字母转换成大写字母,然后输出到名为“test”的文本文件中保存。

输入字符串以“!”结束。

#include <stdio.h>void main(){int i; char str[80]; FILE *fp;if( (fp=fopen("test","w"))==NULL){ printf("cannot open file\n");exit(0); }printf("Input a string(end with !):");gets(str);/***answer begin***/……/***answer end***/}参考答案:一. 单项选择题:(每题2分,共20分)CBBCB BACBA二. 填空题:(每题2分,共20分)1函数说明2函数体3长整型4无符号型 5 06 非07 switch8 循环9 extern 10 static11 #include 12 #define 13 &x[2][3] 14 x[3][2] 15 616 2 17文本18二进制19字符(字节) 20流式三. 程序归纳题(每题2分,共10分)1求字符串长度 2 求3个double型数中的大数3 翻转整型数组4 复制字符串5 统计指定字符串中小写字母、数字的个数四. 程序分析题(每题2分,共10分)1 1,623 2 13 1 BOOK 2 CHINA 3 COMPUTER4 5-1 is the 122th day in 20085 2 3 0 1 2 注:标点符号错误不另扣分五. 程序设计题(每题10分,共40分)1.num[12]=new; 存储新值:2分while( i>=0 && data[i]< data[i+1] ) 循环至插入点:2分{ 复合语句:1分new=num[i+1]; 暂存新值:1分num[i+1]=num[i]; 更新旧值:2分num[i]=new; 更新新值:1分i--; 循环计数:1分}2.while(*p1&&*p2&&*p1==*p2) 依次比较两个字符串直至其结束:6分p1++,p2++; 更新位置指示:2分return *p1-*p2; 返回差值:2分3.scanf("%s",leader_name); 唱票:2分for(j=0;j<3;j++) 循环寻找得票人:2分if(strcmp(leader_name, leader[j].name)==0) 寻找得票人:4分leader[j].count++; 更新得票人票数:2分4.for(i=0; str[i]!='!'; i++) 依次比较各字符直至字符串结束:2分if(str[i]>='a' && str[i]<='z') 判断是否是小写字母:2分str[i]-=32; 转换为大写字母:2分printf("Writting %s into file test",str);fputs(str,fp); 将字符串存储到文件中:2分fclose(fp); 关闭文件:2分。

相关文档
最新文档