C语言期中考试试题及答案-1
- 格式:doc
- 大小:39.50 KB
- 文档页数:10
高级语言程序设计试题答案在最后一、单项选择题(本大题共20小题,每小题2分,共20分)在每小题列出得四个选项中只有一个选项就是符合题目要求得,请将正确选项前得字母填在题后得括号内。
1、C语言程序编译时,程序中得注释部分就是( )A、参加编译,并会出现在目标程序中B、参加编译,但不会出现在目标程序中C、不参加编译,但会出现在目标程序中D、不参加编译,也不会出现在目标程序中2、设int a=3;则表达式a<1&&--a>1得运算结果与a得值分别就是( )A、0与2B、0与3C、1与2D、1与33、与语句if(a>b)if(c>d)x=1;else x=2;等价得就是( )A、if(a>b){if(c>d)x=1;else x=2;}B、if(a>b){if(c>d)x=1;}else x=2;C、if((a>b)&&(c>d))x=1;else x=2;D、if(a<=b)x=2;else if(c>d) x=1;4、设char x='a';则printf("x=%c,y=%c\n",x,97);得输出就是( )A、x=a,y=97B、x=97,y=aC、x=97,y=97D、x=a,y=a5、执行下列程序int a[3][3]={{1},{2},{3}};int b[3][3]={1,2,3};main(){printf("%d\n”,a[1][0]+b[0][0]);}后输出得结果就是( )A、0B、1C、2D、36、结构化程序设计所规定得三种基本控制结构就是( )A) 输入、处理、输出B) 树形、网形、环形C) 顺序、选择、循环D) 主程序、子程序、函数7、完成C源文件编辑后、到生成执行文件,C语言处理系统必须执行得步骤依次为( )A、连接、编译B、编译、连接C、连接、运行D、运行8、下列各语句中,能够且仅输出整型变量a、b中最大值得就是( )A、if(a>b) printf(″%d\n″,a);printf(″%d\n″,b);B、printf(″%d\n″,b);if(a>b) printf(″%d\n″,a);C、if(a>b) printf(″%d\n″,a);else printf(″%d\n″,b);D、if(a<b) printf(″%d\n″,a);printf(″%d\n″,b);9、执行语句“for(s=0,i=1;i<=10;i=i+3) s+=i;”后,变量s、i得当前值就是( )A、22,13B、12,10C、22,10D、12,1310、下列各语句定义了数组,其中一个不正确得就是( )A、static int a[5],b[2][3];B、char no[30],rec[30,6];C、int x[]={2,4,6,8,10};D、int x[10]={1,2,3,4,5};二、填空题(本大题共10小题,每小题2分,共20分)11、初始化值就是0、618得双精度变量a得定义形式为____________。
c程序设计期中考试题及答案一、选择题(每题2分,共20分)1. C语言中,用于定义整型变量的关键字是()。
A. intB. floatC. doubleD. char答案:A2. 下列哪个选项是C语言中的合法标识符?()A. 2variableB. variable2C. variable-2D. variable$2答案:B3. 在C语言中,以下哪个选项是正确的字符串字面量?()A. "Hello, World!"B. 'Hello, World!'C. "Hello, World!'"D. 'Hello, World!'答案:A4. 若有以下代码段:```cint a = 10, b = 20;a =b = a + b;```则变量a的值是()。
A. 10B. 30C. 20D. 无法确定答案:B5. C语言中,哪个函数用于计算并返回字符串的长度?()A. strlen()B. strcpy()C. strcat()D. strcmp()答案:A6. 在C语言中,以下哪个是正确的二维数组声明?()A. int array[3][4];B. int array[][];C. int array[3][];D. int array[4,3];答案:A7. C语言中,以下哪个是正确的函数声明?()A. int add(int a, int b);B. int add(int, int);C. int add();D. int add(a, b);答案:A8. 下列哪个选项是C语言中的逻辑运算符?()A. &&B. ||C. !D. 以上都是答案:D9. 在C语言中,以下哪个选项是正确的条件语句?()A. if (condition) { statement1; } else { statement2; }B. if (condition) statement1; else statement2;C. if (condition) statement1; if (condition) statement2;D. if (condition) { statement1; statement2; }答案:A10. C语言中,以下哪个选项是正确的循环语句?()A. for (int i = 0; i < 10; i++) { /* code */ }B. while (condition) { /* code */ }C. do { /* code */ } while (condition);D. 以上都是答案:D二、填空题(每题2分,共20分)1. C语言中,用于定义字符型变量的关键字是()。
大一c语言期中考试试题及答案一、选择题(每题2分,共20分)1. C语言中,用于定义一个结构体类型的关键字是()。
A. structB. unionC. enumD. typedef答案:A2. 下列哪个选项不是C语言中的运算符?()A. %B. &&C. ::D. ==答案:C3. 在C语言中,用于定义一个函数的关键字是()。
A. intB. voidC. returnD. function答案:B4. 下列哪个选项不是C语言中合法的变量名?()A. _nameB. name_2C. 2nameD. name答案:C5. 在C语言中,用于表示逻辑“与”的运算符是()。
A. &&B. ||C. !D. ^答案:A6. 下列哪个选项是C语言中的控制语句?()A. ifB. switchC. caseD. all of the above答案:D7. C语言中,用于定义一个字符常量的是()。
A. 'a'B. "a"C. aD. a答案:A8. 在C语言中,用于表示“不等于”的运算符是()。
A. ==B. !=C. =D. ==答案:B9. 下列哪个选项是C语言中的文件操作函数?()A. printfB. scanfC. fopenD. fclose答案:C10. 在C语言中,用于定义一个整型数组的语法是()。
A. int arr[10];B. int arr=10;C. int arr[];D. int [10] arr;答案:A二、填空题(每题2分,共20分)1. C语言中,用____关键字定义一个全局变量。
答案:extern2. 一个C语言程序的执行从____函数开始。
答案:main3. C语言中,用于声明一个指针变量的语法是____。
答案:int *p;4. C语言中,____运算符用于取地址。
答案:&5. C语言中,____运算符用于解引用指针。
《 C语言》课程期中考试试卷一. 在A B C D四个选项中,选择一个正确的答案填入括号内( )1、用char定义的变量在IBM PC机中能表示的数的范围是:A) 0 ~+255 B) 0 ~+65535C) -128 ~+127 D) 只能存字符,不能存数( )2、设有int k=2; 则执行printf(“%d”,k++);的输出为:A) 0 B) 1 C) 2 D) 3()3、在while(!x)中,!x与______等价。
A) x==0 B) x!=0 C) x==1 D) x!=1()4、设有声明int value=‟5‟;,则执行下列选项的赋值语句后,value的值不等于5的是_____。
A.) value=value - ‟0‟; B) value=value - 0x30;C) value=value - 49; D) value=value - ‟\060‟;()5、如int k=7;float x=2.5,y=4.7; 则表达式 x+k%3*(int)(x+y)%2/4 运算后的值是:A) 0 B) 2 C) 2.5 D) 2.75( ) 6、若有int a,b;则语句:printf("%d",(a=2)&&(b=-2);的输出结果是:A)无输出 B)结果不确定 C)-1 D)1( ) 7、设有int a=2; 则执行printf("%d",5>a>1);的输出为:A)0 B)1 C)2 D)3( ) 8、执行语句c=(a=2,a+1,b=a++);后, a,b,c的值依次为:A)2,3,4 B)3,3,3 C)4,5,4 D)3,2,2( )9、以下程序的输出结果是A)2 0 B)3 1 C)3 2 1 D)2 1 0main( ){ int n=4;while(n--)printf("%d ",--n);}( )10、给出以下定义:char x[ ]="abcdef";char y[ ]={'a','b','c','d','e','f'};则正确的叙述为A) 数组x和数组y等价 B) 数组x和数组y的长度相同C) 数组x的长度大于数组y的长度 D) 数组x的长度小于数组y的长度( )11、若对一个函数调用在前, 定义在后,C语言将视其返回值为__________类型。
一、选择题:【1】在C语言中,用户能使用的正确标识符是。
A) 5f B) _for C) struct D) _f.5答案: B 分析:标识符只能由字母、数字、下划线组成,且第一个字母必须是字母或下划线;大小写敏感;不能使用关键字;最长32 个字符。
【2】以下那个是正确的C语言常量。
A) 0678 B) '\0101' C) 1.2E3.5 D) 123L答案:D【3】以下对C语言源程序有关常识正确的描述是。
A) main 函数必须位于文件的开头B) 每个语句必须单独一行C) 标识符中大小写字母没有区别D) 宏定义#define 部分不一定要放在程序的最开头位置答案:D【4】以下for 循环的执行次数是。
for(x=0,y=0;(y=123)&&(x<4);x++)A)是无限循环B)循环次数不定C)执行4次D)执行3次答案:C分析:若要判断(y=123)&&(x<4)假,因为y=123永远为真,所以只需要判断x<4为假即可。
【5】对for( 表达式1;; 表达式3) 可理解为。
A)for( 表达式1;0; 表达式3)B)for( 表达式1;1; 表达式3)C)for( 表达式1; 表达式1; 表达式3)D)for( 表达式1; 表达式3; 表达式3)答案: B【6】设有程序段int k=10;while(k=0) k=k-1;则下面描述中正确的是。
A)while循环执行10次 B )循环是无限循环C)循环体语句一次也不执行D)循环体语句执行一次答案:C分析:因为k=0 为假,所以程序不执行其后的语句。
【7】C语言中while和do-while 循环的主要区别是。
A) do-while 的循环体至少无条件执行一次B) while 的循环控制条件比do-while 的循环控制条件严格C) do-while 允许从外部转到循环体内D) do-while 的循环体不能是复合语句答案:A【8】设有:int a=1,b=2,c=3,d=4,m=2,n=2; 执行(m=a>b)&&(n=c>d) 后n 的值为。
大一c语言期中考试题及答案一、选择题(每题2分,共20分)1. 下列哪个选项是C语言中的合法标识符?A. 2variableB. intC. _intD. int1答案:C2. C语言中,用于定义一个字符常量的是?A. 'a'B. "a"C. aD. 1答案:A3. 下列哪个选项不是C语言中的关键字?A. intB. autoC. floatD. var答案:D4. 以下哪个选项是正确的C语言变量声明?A. int a, b;B. int a; int b;C. int a, b;D. All of the above答案:D5. C语言中,下列哪个函数用于将浮点数转换为字符串?A. sprintfB. printfC. scanfD. strcat答案:A6. 下列哪个选项是C语言中的逻辑运算符?A. &&B. ||C. ==D. All of the above答案:D7. 在C语言中,哪个运算符用于求余?A. %B. /C. *D. -答案:A8. C语言中,哪个关键字用于定义一个函数?A. functionB. defC. voidD. int答案:C9. 下列哪个选项是C语言中的合法字符串字面量?A. "Hello, World!"B. 'Hello, World!'C. "Hello\nWorld"D. "Hello\0World"答案:A10. 在C语言中,下列哪个选项是正确的数组声明?A. int array[5] = {0, 1, 2, 3, 4};B. int array[] = {0, 1, 2, 3, 4};C. int array[5] = {0, 1, 2};D. All of the above答案:D二、填空题(每题3分,共30分)1. 在C语言中,声明一个整型变量的关键字是________。
c语言大一期中考试试题及答案一、选择题(每题2分,共20分)1. C语言中,用于定义变量的关键字是()。
A. varB. defineC. intD. let答案:C2. 下列选项中,不属于C语言基本数据类型的是()。
A. intB. floatC. stringD. char答案:C3. 在C语言中,以下哪个符号用于表示逻辑与操作()。
A. &&B. ||C. !D. =答案:A4. 下列哪个选项是正确的C语言函数声明()。
A. int function_name(int a, int b);B. int function_name(int a; int b);C. int function_name(int a, int b)D. int function_name(int a, int b)答案:A5. C语言中,用于输入输出的库函数是()。
A. math.hB. stdio.hC. string.hD. time.h答案:B6. 下列哪个选项是C语言中正确的注释方式()。
A. // 这是注释B. /* 这是注释 */C. //这是注释D. /*这是注释答案:B7. C语言中,用于定义数组的关键字是()。
A. listB. arrayC. tableD. int答案:B8. 下列哪个选项是C语言中正确的字符串定义方式()。
A. char str[] = "Hello";B. char str[] = 'Hello';C. char str = "Hello";D. char str[] = {"Hello"};答案:A9. C语言中,用于定义指针的关键字是()。
A. pointerB. refC. ptrD. *答案:D10. C语言中,用于定义结构体的关键字是()。
A. structB. classC. unionD. typedef答案:A二、填空题(每题2分,共20分)1. 在C语言中,使用____关键字可以定义一个全局变量。
大一c语言期中考试题和答案大一C语言期中考试题和答案一、选择题(每题2分,共20分)1. C语言中,以下哪个选项是合法的整型常量?A. 0x12B. 0x12.0C. 0x12.5D. 0x12L答案:A2. 以下哪个是C语言中的关键字?A. mainB. includeC. intD. input答案:C3. 在C语言中,以下哪个选项不能用作变量名?A. _nameB. 2namesC. name$D. name答案:C4. 以下哪个选项是C语言中的合法字符串常量?A. "Hello, World!"B. 'Hello, World!'C. "Hello, World!", "Another String"D. "Hello, World!"答案:D5. 在C语言中,以下哪个选项是正确的函数声明?A. int function();B. int function int x;C. int function(int x);D. int function x;答案:C6. C语言中,以下哪个选项是正确的数组声明?A. int array[10];B. int array[];C. int array[10] = {1, 2, 3};D. All of the above答案:D7. 在C语言中,以下哪个选项是正确的指针声明?A. int *ptr;B. int *ptr = 0;C. int ptr = 0;D. Both A and B答案:D8. C语言中,以下哪个选项是正确的条件语句?A. if (x > 0)printf("Positive");B. if x > 0printf("Positive");C. if (x > 0)printf("Positive")elseprintf("Non-positive");D. Both A and C答案:D9. 在C语言中,以下哪个选项是正确的循环语句?A. for (int i = 0; i < 10; i++)printf("%d ", i);B. for (int i = 0; i <= 10; i++)printf("%d ", i);C. for (i = 0; i < 10; i++)printf("%d ", i);D. All of the above答案:D10. C语言中,以下哪个选项是正确的函数调用?A. void function();B. function();C. function(10);D. Both B and C答案:D二、填空题(每题2分,共20分)1. C语言中,用于定义一个整型变量的关键字是______。
c程序设计期中试题及答案一、选择题1. C语言中,下列哪个关键字可以声明常量?A. constB. staticC. externD. volatile答案:A. const2. 下列关于指针的说法中,错误的是?A. 指针保存的是变量的地址B. 指针变量必须在使用之前初始化C. 指针可以指向一个函数D. 指针占用的内存空间和指针指向的数据类型有关答案:B. 指针变量必须在使用之前初始化3. 下列循环结构中,哪个语句是用于结束当前循环,进入下一轮循环的?A. breakB. continueD. goto答案:B. continue4. 下列C语言中的标准库函数中,不属于输入输出函数的是?A. printf()B. scanf()C. gets()D. malloc()答案:D. malloc()5. C语言中,以下哪个运算符的优先级最高?A. =B. &&C. *D. ?:答案:D. ?:二、填空题1. 编写一个函数,判断一个数是否为质数。
函数原型为:int isPrime(int num);```cint isPrime(int num) {int i;if (num <= 1) {return 0;}for (i = 2; i < num; i++) {if (num % i == 0) {return 0;}}return 1;}```2. 填写以下代码的输出结果:```c#include <stdio.h>int main() {char str[] = "Hello";printf("%d\n", sizeof(str));printf("%d\n", strlen(str));return 0;}```答案:85三、编程题1. 编写一个C程序,实现将一个字符串中的小写字母转换为大写字母的功能。
大一c语言期中考试题及答案解析一、选择题(每题2分,共20分)1. C语言中,以下哪个关键字用于声明函数?A. intB. returnC. voidD. function答案:C2. 若有定义 `int a[5] = {1, 2, 3, 4, 5};`,则`a[0]`的值是多少?A. 0B. 1C. 2D. 5答案:B3. 下列哪个选项是C语言中的合法标识符?A. 2variableB. variable2C. -variableD. variable!答案:B4. C语言中,以下哪个运算符用于逻辑“与”操作?A. &&B. ||C. !D. ~答案:A5. 以下哪个选项不是C语言中的控制语句?A. ifB. whileC. switchD. loop答案:D6. C语言中,以下哪个函数用于计算并返回字符串的长度?A. strlen()B. strlength()C. length()D. strlenth()答案:A7. 若有定义 `int x = 10;`,则执行`x += 5;`后,`x`的值是多少?A. 10B. 15C. 5D. 25答案:B8. C语言中,以下哪个选项是正确的二维数组声明?A. int array[3][2];B. int array[][];C. int array[3][];D. int array[2,3];答案:A9. 在C语言中,以下哪个选项是正确的字符串字面量?A. "Hello, World!"B. 'Hello, World!'C. "Hello, World!'"D. 'Hello, World!'答案:A10. C语言中,以下哪个函数用于将字符串复制到另一个字符串?A. strcpy()B. strncpy()C. strcat()D. strcmp()答案:A二、填空题(每题2分,共20分)1. C语言中,`printf()`函数用于__输出__。
大一c语言期中考试题和答案豆丁网C语言期中考试试卷一、选择题(每题2分,共40分)1. 以下哪个选项是C语言的关键字?A. intB. integerC. INTD. Integer答案:A2. C语言中,哪个函数用于计算并返回两个整数相加的结果?A. add()B. sum()C. plus()D. addint()答案:B3. 在C语言中,以下哪个是正确的字符串定义?A. char str[5] = "Hello";B. char str[5] = {'H', 'e', 'l', 'l', 'o'};C. char str[5] = "Hello"; // 错误,字符串长度超过数组大小D. char str[] = "Hello";答案:D4. C语言中,以下哪个是正确的二维数组定义?A. int array[2][3] = {{1, 2, 3}, {4, 5, 6}};B. int array[2][3] = {1, 2, 3, 4, 5, 6};C. int array[2][3] = {{1, 2, 3}, {4, 5, 6, 7}}; // 错误,数组元素不匹配D. int array[2][3] = {1, 2, 3, 4, 5, 6, 7}; // 错误,数组元素不匹配答案:A5. C语言中,以下哪个是正确的函数定义?A. int func(int a, int b) { return a + b; }B. int func(int a; int b) { return a + b; } // 错误,分号使用不当C. int func(int a, int b) { return a - b; }D. int func(int a, b) { return a + b; } // 错误,b未指定类型答案:A6. C语言中,以下哪个是正确的条件语句?A. if (a > b) then { /* code */ }B. if (a > b) { /* code */ }C. if a > b { /* code */ } // 错误,缺少括号D. if (a > b) then { /* code */ } // 错误,then关键字不正确答案:B7. C语言中,以下哪个是正确的循环语句?A. for (int i = 0; i < 10; i++) { /* code */ }B. for i = 0 to 10 { /* code */ } // 错误,C语言中没有to关键字C. for (int i = 0; i < 10; i++) { /* code */ }D. for i = 0; i < 10; i++ { /* code */ } // 错误,缺少括号答案:C8. C语言中,以下哪个是正确的函数调用?A. func(5, 3);B. func(5; 3); // 错误,分号使用不当C. func(5, 3);D. func(5, 3);答案:A9. C语言中,以下哪个是正确的宏定义?A. #define PI 3.14159B. #define PI = 3.14159; // 错误,宏定义中不应包含等号和分号C. #define PI 3.14159D. #define PI 3.14159答案:A10. C语言中,以下哪个是正确的结构体定义?A. struct Point { int x, y; };B. struct Point { int x; int y; };C. struct Point { int x, y; };D. struct Point { int x; int y; };答案:B11. C语言中,以下哪个是正确的指针定义?A. int *p;B. int *p;C. int *p;D. int *p;答案:A12. C语言中,以下哪个是正确的文件操作函数?A. fopen()B. open()C. create()D. file()答案:A13. C语言中,以下哪个是正确的递归函数定义?A. int factorial(int n) { if (n == 0) return 1; else return n * factorial(n - 1); }B. int factorial(int n) { if (n == 0) return 1; else return n * factorial(n - 1); }C. int factorial(int n) { if (n == 0) return 1; else return n * factorial(n - 1); }D. int factorial(int n) { if (n == 0) return 1; else return n * factorial(n - 1); }答案:A14. C语言中,以下哪个是正确的枚举定义?A. enum Color { Red, Green, Blue };B. enum Color { Red, Green, Blue };C. enum Color { Red, Green, Blue };D. enum Color { Red, Green, Blue };答案:A15. C语言中,以下哪个是正确的联合体定义?A. union Data { int i; float f; char ch; };B. union Data { int i; float f; char ch; };C. union Data { int i; float f; char ch; };D. union Data { int i; float f; char ch; };答案:A16. C语言中,以下哪个是正确的位运算符?A. &B. |C. ^D. ~答案:D17. C语言中,以下哪个是正确的位段定义?A. struct BitFlags { unsigned int : 1; unsigned int flag2 : 1; };B. struct BitFlags { unsigned int flag1 : 1; unsigned int flag2 : 1; };C. struct BitFlags { unsigned int flag1 : 1; unsigned int flag2 : 1; };D. struct BitFlags { unsigned int flag1 : 1; unsigned int flag2 : 1; };答案:B18. C语言中,以下哪个是正确的动态内存分配函数?A. malloc()B. alloc()C. new()D. mem()答案:A19. C语言中,以下哪个是正确的动态内存释放函数?A. free()B. dealloc()C. delete()D. mem()答案:A20. C语言中,以下哪个是正确的预处理指令?A. #includeB. includeC. #importD. import答案:A二、填空题(每题2分,共20分)1. C语言中,用于定义整型变量的关键字是 ________。
C语言期中测试(开卷测试,答案写在白纸上)一.选择题(1)C语言源程序名的后缀是A).exe B).C C).obj D).cpp(2)以下选项中,合法的一组C语言数值常量是A)028 B)12. C).177 D)0x8A5e-3 0Xa23 4c1.5 10,000-0xf 4.5e0 0abc 3.e5(3)以下正确的字符串常量是A)"\\" B)’abc’C)OlympicGames D)"" (4) 表达式3.6-5/2+1.2+5%2的值是A)4.3 B)4.8 C)3.3 D)3.8(5)以下关于long、int和short类型数据占用内存大小的叙述中正确的是A)均占4个字节B)根据数据的大小来决定所占内存的字节数C)由用户自己定义D)由C语言编译系统决定(6)以下叙述中错误的是A)对于double类型数组,不可以直接用数组名对数组进行整体输入或输出B)数组名代表的是数组所占存储区的首地址,其值不可改变C)当程序执行中,数组元素的下标超出所定义的下标范围时,系统将给出“下标越界”的出错信息D)可以通过赋初值的方式确定数组元素的个数(7)以下叙述中错误的是A)C语言源程序经编译后生成后缀为.obj的目标程序B)C程序经过编译、连接步骤之后才能形成一个真正可执行的二进制机器指令文件C)用C语言编写的程序称为源程序,它以ASCII代码形式存放在一个文本文件中D)C语言中的每条可执行语句和非执行语句最终都将被转换成二进制的机器指令(8)以下数组定义中错误的是A)int x[][3]={0};B)int x[2][3]={1,2,3,4,5,6};C)int x[][3]={{1,2,3},{4,5,6}};D)int x[2][]={1,2,3,4,5,6};(9)若函数调用时的实参为变量时,以下关于函数形参和实参的叙述中正确的是A)函数的实参和其对应的形参共占同一存储单元B)形参只是形式上的存在,不占用具体存储单元C)同名的实参和形参占同一存储单元D)函数的形参和实参分别占用不同的存储单元(10)有以下程序段int j;float y;char name[50];scanf("%2d%f%s",&j,&y,name);当执行上述程序段,从键盘上输入55566 7777abc后,y的值为A)55566.0 B)566.0 C)7777.0 D)566777.0(11)有以下程序#include<stdio.h>main(){int y=9;for( ; y>0;y--)if(y%3= =0)printf("%d",--y);}程序的运行结果是A)741 B)963 C)852 D)875421 (12) 有以下程序#include<stdio.h>int a=4;int f(int n){int t=0;static int a=5;if(n%2){a=6;t+=a++;}{ a=7;t+=a++;}return t+a++;}void main(){int s=a,i=0;for(;i<2;i++)s+=f(i);printf ("%d\n",s);}程序运行后的输出结果是A)24 B)28 C)32 D)36(13) 要求通过while循环不断读入字符,当读入字母N时结束循环。
c语言期中上机考试题及答案一、选择题(每题2分,共10分)1. 下列哪个选项是C语言中的关键字?A. intB. INTC. IntegerD. integer答案:A2. C语言中,下列哪个符号用于表示逻辑与?A. &&B. ||C. !D. &答案:A3. 在C语言中,以下哪个函数用于将字符串转换成浮点数?A. atoiB. atofC. itoaD. sprintf答案:B4. 下列哪个选项是正确的C语言数组声明?A. int array[5] = {1, 2, 3};B. int array[] = {1, 2, 3};C. int array[3] = {1, 2, 3, 4, 5};D. int array[5] = {1, 2};答案:D5. 在C语言中,以下哪个函数用于获取当前系统时间?A. timeB. localtimeC. mktimeD. strftime答案:A二、填空题(每题2分,共10分)1. C语言中,用于定义一个整型变量的关键字是______。
答案:int2. C语言中,用于定义一个字符型变量的关键字是______。
答案:char3. C语言中,用于定义一个浮点型变量的关键字是______。
答案:float4. C语言中,用于定义一个双精度浮点型变量的关键字是______。
答案:double5. C语言中,用于定义一个字符串常量的关键字是______。
答案:char[]三、编程题(每题10分,共20分)1. 编写一个C语言程序,计算并输出1到100之间所有整数的和。
```c#include <stdio.h>int main() {int sum = 0;for (int i = 1; i <= 100; i++) {sum += i;}printf("Sum of numbers from 1 to 100 is: %d\n", sum);return 0;}```2. 编写一个C语言程序,实现输入一个整数,判断并输出该整数是奇数还是偶数。
C语⾔期中试卷(含答案)《 C语⾔》课程期中考试试卷⼀. 在A B C D四个选项中,选择⼀个正确的答案填⼊括号内( )1、⽤char定义的变量在IBM PC机中能表⽰的数的范围是:A) 0 ~+255 B) 0 ~+65535C) -128 ~+127 D) 只能存字符,不能存数( )2、设有int k=2; 则执⾏printf(“%d”,k++);的输出为:A) 0 B) 1 C) 2 D) 3()3、在while(!x)中,!x与______等价。
A) x==0 B) x!=0 C) x==1 D) x!=1()4、设有声明int value=?5?;,则执⾏下列选项的赋值语句后,value的值不等于5的是_____。
A.) value=value - ?0?; B) value=value - 0x30;C) value=value - 49; D) value=value - ?\060?;()5、如int k=7;float x=2.5,y=4.7; 则表达式 x+k%3*(int)(x+y)%2/4 运算后的值是:A) 0 B) 2 C) 2.5 D) 2.75( ) 6、若有int a,b;则语句:printf("%d",(a=2)&&(b=-2);的输出结果是:A)⽆输出 B)结果不确定 C)-1 D)1( ) 7、设有int a=2; 则执⾏printf("%d",5>a>1);的输出为:A)0 B)1 C)2 D)3( ) 8、执⾏语句c=(a=2,a+1,b=a++);后, a,b,c的值依次为:A)2,3,4 B)3,3,3 C)4,5,4 D)3,2,2( )9、以下程序的输出结果是A)2 0 B)3 1 C)3 2 1 D)2 1 0main( ){ int n=4;while(n--)printf("%d ",--n);}( )10、给出以下定义:char x[ ]="abcdef";char y[ ]={'a','b','c','d','e','f'};则正确的叙述为A) 数组x和数组y等价 B) 数组x和数组y的长度相同C) 数组x的长度⼤于数组y的长度 D) 数组x的长度⼩于数组y的长度( )11、若对⼀个函数调⽤在前, 定义在后,C语⾔将视其返回值为__________类型。
一、选择题:【1】在 C 语言中,用户能使用的正确标识符是。
A) 5f B) _for C) struct D) _f.5答案: B分析:标识符只能由字母、数字、下划线组成,且第一个字母必须是字母或下划线;大小写敏感;不能使用关键字;最长 32 个字符。
【2】以下那个是正确的 C 语言常量。
A) 0678 B) '\0101' C) 1.2E3.5 D) 123L答案: D【3】以下对 C 语言源程序有关常识正确的描述是。
A) main 函数必须位于文件的开头B) 每个语句必须单独一行C) 标识符中大小写字母没有区别D) 宏定义#define 部分不一定要放在程序的最开头位置答案: D【4】以下 for 循环的执行次数是。
for(x=0,y=0;(y=123)&&(x<4);x++)A)是无限循环 B)循环次数不定 C) 执行 4 次 D)执行 3 次答案: C分析:若要判断(y=123)&&(x<4)假,因为 y=123 永远为真,所以只需要判断 x<4 为假即可。
【5】对 for(表达式 1;;表达式 3)可理解为。
A) for(表达式 1;0;表达式 3)B) for(表达式 1;1;表达式 3)C) for(表达式 1; 表达式 1;表达式 3)D) for(表达式 1; 表达式 3;表达式 3)答案: B【6】设有程序段int k=10;while(k=0) k=k-1;则下面描述中正确的是。
A) while 循环执行 10 次 B)循环是无限循环C)循环体语句一次也不执行 D)循环体语句执行一次答案: C分析:因为 k=0 为假,所以程序不执行其后的语句。
【7】C 语言中 while 和 do-while 循环的主要区别是。
A) do-while 的循环体至少无条件执行一次B) while 的循环控制条件比 do-while 的循环控制条件严格C) do-while 允许从外部转到循环体内D) do-while 的循环体不能是复合语句答案: A【8】设有: int a=1,b=2,c=3,d=4,m=2,n=2; 执行(m=a>b)&&(n=c>d) 后 n 的值为。
高级语言程序设计试题答案在最后一、单项选择题(本大题共20小题,每小题2分,共20分)在每小题列出的四个选项中只有一个选项是符合题目要求的,请将正确选项前的字母填在题后的括号内。
1.C语言程序编译时,程序中的注释部分是()A.参加编译,并会出现在目标程序中B.参加编译,但不会出现在目标程序中C.不参加编译,但会出现在目标程序中D.不参加编译,也不会出现在目标程序中2.设int a=3;则表达式a<1&&--a>1的运算结果和a的值分别是()A.0和2B.0和3C.1和2D.1和33.与语句if(a>b)if(c>d)x=1;else x=2;等价的是()A.if(a>b){if(c>d)x=1;else x=2;}B.if(a>b){if(c>d)x=1;}else x=2;C.if((a>b)&&(c>d))x=1;else x=2;D.if(a<=b)x=2;else if(c>d) x=1;4.设char x='a';则printf("x=%c,y=%c\n",x,97);的输出是()A.x=a,y=97B.x=97,y=aC.x=97,y=97D.x=a,y=a5.执行下列程序int a[3][3]={{1},{2},{3}};int b[3][3]={1,2,3};main(){printf("%d\n”,a[1][0]+b[0][0]);}后输出的结果是()A.0B.1C.2D.36.结构化程序设计所规定的三种基本控制结构是( )A) 输入、处理、输出B) 树形、网形、环形C) 顺序、选择、循环D) 主程序、子程序、函数7.完成C源文件编辑后、到生成执行文件,C语言处理系统必须执行的步骤依次为( )A.连接、编译B.编译、连接C.连接、运行D.运行8.下列各语句中,能够且仅输出整型变量a、b中最大值的是( )A. if(a>b) printf(″%d\n″,a);printf(″%d\n″,b);B. printf(″%d\n″,b);if(a>b) printf(″%d\n″,a);C. if(a>b) printf(″%d\n″,a);else printf(″%d\n″,b);D. if(a<b) printf(″%d\n″,a);printf(″%d\n″,b);9.执行语句“for(s=0,i=1;i<=10;i=i+3) s+=i;”后,变量s、i的当前值是( )A. 22,13B. 12,10C. 22,10D. 12,1310.下列各语句定义了数组,其中一个不正确的是( )A. static int a[5],b[2][3];B. char no[30],rec[30,6];C. int x[]={2,4,6,8,10};D. int x[10]={1,2,3,4,5};二、填空题(本大题共10小题,每小题2分,共20分)11.初始化值是0.618的双精度变量a的定义形式为____________。
C语言期中考试试题及答案-1
高级语言程序设计试题
答案在最后
一、单项选择题(本大题共20小题,每小题2分,共20分)在每小题列出的四个选项中只有一个选项是符合题目要求的,请将正确选项前的字母填在题后的括号内。
1.C语言程序编译时,程序中的注释部分是()
A.参加编译,并会出现在目标程序中
B.参加编译,但不会出现在目标程序中
C.不参加编译,但会出现在目标程序中
D.不参加编译,也不会出现在目标程序中
2.设int a=3;则表达式a<1&&--a>1的运算结果和a的值分别是()
A.0和2
B.0和3
C.1和
2 D.1和3
3.与语句if(a>b)if(c>d)x=1;else x=2;等价的是()
A.if(a>b){if(c>d)x=1;else x=2;}
B.if(a>b){if(c>d)x=1;}else x=2;
C.if((a>b)&&(c>d))x=1;else x=2;
D.if(a<=b)x=2;else if(c>d) x=1;
4.设char x='a';则printf("x=%c,y=%c\n",x,97);的输出是()
A.x=a,y=97
B.x=97,y=a
C.x=97,y=97
D.x=a,y=a
5.执行下列程序
int a[3][3]={{1},{2},{3}};
int b[3][3]={1,2,3};
main()
{printf("%d\n”,a[1][0]+b[0][0]);}
后输出的结果是()
A.0
B.1
C.2
D.3
6.结构化程序设计所规定的三种基本控制结构
是( )
A) 输入、处理、输出B) 树形、网形、环形
C) 顺序、选择、循环D) 主程序、子程序、函数
7.完成C源文件编辑后、到生成执行文件,C语言处理系统必须执行的步骤依次为( )
A.连接、编译
B.编译、连接
C.连接、运行
D.运行
8.下列各语句中,能够且仅输出整型变量a、b中最大值的是( )
A. if(a>b) printf(″%d\n″,a);printf(″%d \n″,b);
B. printf(″%d\n″,b);if(a>b) printf(″%d \n″,a);
C. if(a>b) printf(″%d\n″,a);else printf(″%d\n″,b);
D. if(a<b) printf(″%d\n″,a);printf(″%d \n″,b);
9.执行语句“for(s=0,i=1;i<=10;i=i+3) s+=i;”后,变量s、i的当前值是( )
A. 22,13
B. 12,10
C. 22,10
D. 12,13
10.下列各语句定义了数组,其中一个不正确的是( )
A. static int a[5],b[2][3];
B. char no[30],rec[30,6];
C. int x[]={2,4,6,8,10};
D. int x[10]={1,2,3,4,5};
二、填空题(本大题共10小题,每小题2分,共20分)
11.初始化值是0.618的双精度变量a的定义形式为____________。
12.表达式!10!=1的值是____________。
13.“20<x≤30”的C语言表达式是____________。
14.表达式a=1,a+=1,a+1,a++的值是____________。
15.设int i = 5;则循环语句while(i>=1)i--;执行后,i的值为____________。
16.设char string[]="This_is_a_book!";则数组的长度应是____________。
17.计算a、b中最小值的条件表达式为______。
18.判断变量a、b的值均不为0的C表达式为______。
19.执行语句“a=5+(c=6);”后,变量a、c的值依次为______。
20.整型变量x的值为23,语句“printf(″%o\\n″,x);”的输出结果为______。
三、程序分析题(本大题共3小题,每小题6分,共18分)阅读下列程序,将输出结果写到各题右侧的划线处
21.# define N 7
main()
{int i,j,temp,a[N]={1,2,3,4,5,6,7};
for(i=0;i<N/2;i++)
{j=N-1-i;
temp=a[i];a[i]=a[j];a[j]=temp;
}
for(i=0;i<N;i++)printf("%5d",a[i]);
}
输出结果:_____
_
22.#include <stdio.h>
void main() 输出结果:______
{ int i; ______ for (i=1;i<5;i++) printf(″%d\t%c\n″,i,'A'+i); ______
} ______ 23.#include <stdio.h>
void main()
{ int i,j,a[4][4];
for(i=0;i<4;i++)
for(j=0;j<4;j++) a[i][j]=1+i-j;
for(i=0;i<4;i++) {
for(j=0;j<4;j++) 输出结果:______
if(a[i][j]>0) printf(″%3d″,a[i][j]);
______
putchar('\n');
______
} ______ }
四、程序填充题(本大题共2小题,每小题6分,共12分)给出下列程序,将横线处缺少的部分补上,使其能正确运行。
24.输入一字符串(换行为结束标志)统计其中数字(0,1,2,…,9不单独统计)、空白和其它字
符出现的次数。
# include“stdio.h"
main()
{ char c;
Int _____________;
while((c=getchar())!='\n')
{
if(________________) digit++;
else if(c==''||c=='\t') ++blank;
else____________;
}
printf("digit=%d,blank=%d,other=%d\n",digit, blank,other);
}
25.先为数组a输满数据,再为x输入一个数据,在数组a中找出第一个与x相等的元素并将其下标输出,若不存在这样的元素,则输出“Not found!”标志。
main()
{ int i,x,a[10];
for(i=0;i<10;i++) scanf("%d",___);
scanf("%d",&x);
printf("%d",x);
for(i=0;i<10;i++) if(____________) break;
if(i___10) printf(“position:%d\n”,i);
else printf(" Not found! \n",x);
}
五、五、程序设计题(26小题14分,27\28小题10分,共34分)。
26编程,先输入n,再输入n个实数并分别统计正数的和、负数的和,然后输出统计结果。
27.求出10至1000之内能同时被2、3、7整除的数,并输出。
28.求1到100之间的奇数之和及偶数之和,并将二者输出。
1.
高级语言程序设计试题参考答案
一、单项选择题(本大题共20小题,每小题2分,共20分)
1.D
2.B
3.A
4.D
5.D
6.C
7.B
8.C
9.A 10.B
二、填空题(本大题共10小题,每小题2分,共20分)
11.double a=0.618
12.1
13.x>20&&x<=30或者(x>20)&&(x<=30)
14.2
15.0
16.16
17. a<b? a:b
18. a*b!=0 或a*b
19. 11,6
20. 27\n
三、程序分析题(本大题共5小题,每小题5分,共25分)
21.7 6 5 4 3 2 1
22.1 B
2 C
3 D
4 E
23.1
2 1
3 2 1
4 3 2 1
四、程序填充题(本大题共3小题,每小题6分,共18分)
24.(1)digit=0,blank=0,other=0
(2)c>='0'&&c<='9'
(3)++other或者other++
25.(1)&a[i]或者a+i
(2)x==a[i]
(3)<
五、程序设计题
略。