南昌大学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. structB. intC. voidD. return答案:C2. 在C语言中,以下哪个运算符用于求两个数的和?A. %B. +C. /D. -答案:B3. 下面哪个选项是C语言中的合法整型常量?A. 0x12B. 1.2e3C. 0123D. 0b101答案:A4. C语言中,以下哪个不是字符串的正确表示方式?A. "Hello, World!"B. 'Hello, World!'C. "Hello\" World!"D. "Hello\nWorld!"答案:B5. 在C语言中,以下哪个选项不是控制语句?A. ifB. forC. switchD. break答案:D6. C语言中,以下哪个函数用于计算两个数的最大值?A. max()B. min()C. sqrt()D. pow()答案:A7. 在C语言中,以下哪个关键字用于定义指针?A. intB. floatC. charD. *答案:D8. 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};D. int array = {1, 2, 3, 4, 5};答案:B9. C语言中,以下哪个函数用于输出格式化的字符串?A. printf()B. scanf()C. fgets()D. fputs()答案:A10. 在C语言中,以下哪个选项是正确的结构体声明?A. struct Student { int age; char name[20]; };B. struct { int age; char name[20]; };C. struct Student { int age; int name[20]; };D. struct { int age; char name; };答案:A二、填空题(每题3分,共15分)1. 在C语言中,用于定义一个空函数体的关键字是________。
大学期末c语言考试题库及答案
大学期末c语言考试题库及答案一、单项选择题(每题2分,共20分)1. C语言中,以下哪个是合法的标识符?A. 2variableB. variable2C. variable-2D. variable$2答案:B2. 下列哪个选项是C语言中的关键字?A. includeB. intC. mainD. sum答案:B3. 在C语言中,用于定义一个整型变量的关键字是?A. intB. floatC. doubleD. char答案:A4. C语言中,以下哪个函数用于计算两个数的和?A. max()B. min()C. sum()D. average()答案:C5. 下列哪个选项是C语言中正确的字符串定义方式?A. char str[10] = "Hello";B. char str[10] = 'Hello';C. char str = "Hello";D. char str[10] = "Hello", "World";答案:A6. C语言中,以下哪个是正确的二维数组定义?A. int array[3, 4];B. int array[3][4];C. int array[][] = {1, 2, 3, 4};D. int array[3][4] = {1, 2, 3};答案:B7. C语言中,以下哪个是正确的函数定义?A. void myFunction();B. int myFunction() {}C. void myFunction() {}D. int myFunction() {}答案:C8. 在C语言中,以下哪个选项用于输入一个整数?A. scanf("%d", &number);B. printf("%d", &number);C. gets(&number);D. puts(&number);答案:A9. C语言中,以下哪个选项用于输出一个浮点数?A. printf("%f", number);B. scanf("%f", number);C. gets(number);D. puts(number);答案:A10. 在C语言中,以下哪个选项是正确的循环结构?A. for (int i = 0; i < 10; i--)B. for (int i = 0; i <= 10; i++)C. for (int i = 0; i < 10; i++)D. for (int i = 10; i--; i < 0)答案:C二、填空题(每题2分,共20分)1. 在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期末考试试卷(标准答案全)
南昌大学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语言期末考试题库试题及答案在即将到来的大学C语言期末考试中,同学们可能会遇到各种类型的题目。
以下是一些典型的试题及其答案,供同学们复习参考。
1. 以下哪个选项是C语言中的关键字?A. intB. IntegerC. INTD. integer答案:A. int2. 若有定义:int a = 10; 则表达式 a++ 的值是多少?A. 9B. 10C. 11D. 无法确定答案:B. 103. 在C语言中,以下哪个函数用于计算字符串的长度?A. strlen()B. length()C. str_length()D. string_length()答案:A. strlen()4. 若有以下代码片段:```cint x = 5;printf("%d", x++);```执行后输出的结果是?A. 4B. 5C. 6D. 无法确定答案:B. 55. 在C语言中,以下哪个选项表示“逻辑与”操作?A. &&B. ||C. !D. &答案:A. &&6. 若有以下代码:```cint a = 3, b = 4, c;c = a + b;```则变量 c 的值是多少?A. 7B. 3C. 4D. 无法确定答案:A. 77. 在C语言中,以下哪个选项是正确的二维数组声明?A. int array[2,3];B. int array[2][3];C. int array[2][3][4];D. int array[][];答案:B. int array[2][3];8. 若有以下函数定义:```cint add(int x, int y) {return x + y;}```则调用 add(5, 3) 时,返回的值是多少?A. 2B. 5C. 8D. 无法确定答案:C. 89. 在C语言中,以下哪个选项表示“不等于”的比较运算符?A. ==B. !=C. =D. <=答案:B. !=10. 若有以下代码:```cchar str[] = "Hello";str[0] = 'h';```执行后,str 数组的内容是什么?A. "hello"B. "Hello"C. "helloworld"D. "hEllo"答案:A. "hello"这些题目覆盖了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语言中表示一个常量时,可以使用关键字____。
c语言大一期末考试题库及详解答案
c语言大一期末考试题库及详解答案C语言大一期末考试题库及详解答案一、选择题1. 下列哪个选项是C语言中的合法标识符?A. 3aB. intC. _aD. float答案:C2. C语言中,哪个关键字用于定义一个函数?A. ifB. whileC. functionD. void答案:D3. 在C语言中,以下哪个语句可以用于输入数据?A. scanf()B. printf()C. coutD. cin答案:A二、填空题1. 在C语言中,______关键字用于声明一个变量的存储类型。
答案:static2. 一个C语言程序的执行从______函数开始。
答案:main3. 在C语言中,______运算符用于计算两个数的乘积。
答案:*三、简答题1. 简述C语言中数组的定义和初始化方式。
答案:在C语言中,数组是一种基本的数据结构,用于存储相同数据类型的多个元素。
数组的定义格式为:类型名数组名[常量表达式];其中类型名是数组元素的数据类型,数组名是数组的标识符,常量表达式是数组的元素个数。
数组的初始化可以使用花括号{}将初始值包围起来,例如:int arr[5] = {1, 2, 3, 4, 5}。
2. 描述C语言中的指针和引用的区别。
答案:C语言中的指针是一个变量,它存储了另一个变量的内存地址。
指针可以被重新赋值为其他地址,并且可以进行算术运算。
引用在C语言中不存在,但在C++中,引用是别名,它为另一个已存在的变量提供了另一个名字。
引用一旦被初始化后,不能被重新赋值为其他变量的引用,也不能进行算术运算。
四、编程题1. 编写一个C语言程序,实现输入两个整数,输出它们的和。
答案:```c#include <stdio.h>int main() {int num1, num2, sum;printf("请输入两个整数:");scanf("%d %d", &num1, &num2);sum = num1 + num2;printf("它们的和是:%d\n", sum);return 0;}```2. 编写一个C语言程序,实现对一个字符串进行反转。
大一上c语言期末考试题库及详解答案
大一上c语言期末考试题库及详解答案在大一上学期的C语言课程中,期末考试通常涵盖了C语言的基础知识、数据类型、控制结构、函数、数组、指针以及结构体等核心概念。
以下是一份模拟的期末考试题库及详解答案,供同学们复习参考。
1. 以下哪个选项是C语言中的合法标识符?A. 2variableB. variable2C. _variableD. variable-2答案:B, C。
在C语言中,标识符可以由字母、数字和下划线组成,但不能以数字开头。
2. C语言中,int类型变量占用的字节数是多少?A. 1B. 2C. 4D. 8答案:C。
在大多数现代计算机系统中,int类型变量占用4个字节。
3. 以下哪个选项是正确的C语言语句?A. int a = 10;B. int a = '10';C. int a = "10";D. int a = 10.0;答案:A。
在C语言中,整型变量应该使用整数值进行初始化。
4. 以下哪个选项是C语言中的选择结构?A. if-elseB. switch-caseC. whileD. for答案:A, B。
if-else和switch-case是C语言中的选择结构,用于根据不同的条件执行不同的代码块。
5. 以下哪个选项是C语言中的循环结构?A. if-elseB. switch-caseC. whileD. for答案:C, D。
while和for是C语言中的循环结构,用于重复执行一段代码直到满足某个条件。
6. 以下哪个选项是C语言中的数组声明?A. int arr[5];B. int arr[];C. int arr = 5;D. int [5]arr;答案:A, B。
在C语言中,数组可以声明为固定大小(如A选项)或者声明为动态大小(如B选项)。
7. 以下哪个选项是C语言中的指针声明?A. int *ptr;B. int ptr[];C. int ptr = 0;D. int *ptr = nullptr;答案:A, D。
南昌大学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语言期末考试题库及答案一、选择题(每题2分,共20分)1. 在C语言中,以下哪个关键字用于定义一个函数?A. classB. functionC. voidD. int答案:D2. 下列哪个选项不是C语言中的基本数据类型?A. intB. floatC. charD. string答案:D3. 下列哪个选项是正确的C语言注释?A. // 这是一个注释B. /* 这是一个注释 */C. /* 这是一个注释D. // 这是一个注释答案:A4. 在C语言中,以下哪个运算符用于比较两个值是否相等?A. ==B. !=C. >D. <5. 下列哪个选项是正确的C语言数组声明?A. int array[5] = {1, 2, 3, 4, 5};B. int array[] = {1, 2, 3, 4, 5};C. int array[5] = {1, 2};D. int array = {1, 2, 3, 4, 5};答案:A6. 在C语言中,以下哪个关键字用于定义一个结构体?A. structB. classC. unionD. typedef答案:A7. 下列哪个选项是正确的C语言指针声明?A. int *ptr;B. int *ptr = 0;C. int ptr;D. int *ptr = 0, *ptr2;答案:A8. 在C语言中,以下哪个函数用于将字符串复制到另一个字符串?A. strcpy()B. strcat()C. strcmp()D. strlen()答案:A9. 下列哪个选项是正确的C语言文件打开方式?B. "w"C. "a"D. "b"答案:A10. 在C语言中,以下哪个关键字用于定义一个宏?A. defineB. macroC. constantD. const答案:A二、填空题(每题2分,共20分)1. 在C语言中,使用________关键字可以定义一个枚举类型。
c语言期末考试题及答案及解析
c语言期末考试题及答案及解析1. 请写出C语言中声明一个整型变量的语句。
答案:int a;解析:在C语言中,使用关键字`int`来声明一个整型变量,`a`是变量的名称。
2. 如何在C语言中使用循环结构打印出1到10的数字?答案:```c#include <stdio.h>int main() {for(int i = 1; i <= 10; i++) {printf("%d ", i);}return 0;}```解析:这里使用了`for`循环结构,初始化变量`i`为1,循环条件是`i`小于等于10,每次循环结束后`i`自增1,循环体中使用`printf`函数打印当前的`i`值。
3. 请解释C语言中的指针是什么?答案:指针是一种变量,它存储了另一个变量的内存地址。
解析:指针在C语言中用于直接访问内存地址,它允许程序直接操作内存,这在某些情况下可以提高程序的效率。
4. 写出一个C语言函数,该函数接受一个字符串作为参数,并返回该字符串的长度。
答案:```cint stringLength(char *str) {int length = 0;while(*str) {length++;str++;}return length;}```解析:这个函数通过遍历字符串,直到遇到字符串结束符`\0`,每遍历一个字符,长度计数器`length`就增加1,最后返回字符串的长度。
5. 在C语言中,如何交换两个变量的值?答案:```cvoid swap(int *a, int *b) {int temp = *a;*a = *b;*b = temp;}```解析:通过使用指针参数,我们可以在函数内部交换两个变量的值。
首先将第一个变量的值存储在临时变量`temp`中,然后将第二个变量的值赋给第一个变量,最后将`temp`中的值赋给第二个变量。
6. 请解释C语言中的结构体是什么?答案:结构体是一种用户自定义的数据类型,它允许将多个不同类型的数据项组合成一个单一的数据结构。
大学c语言期末考试题及答案
大学c语言期末考试题及答案一、选择题(每题2分,共20分)1. C语言中,以下哪个关键字用于声明一个函数?A. intB. returnC. voidD. function答案:C2. 在C语言中,以下哪个不是合法的变量名?A. _myVarB. 2ndVarC. my-variableD. myVar答案:B3. 下列哪个选项是C语言中的逻辑运算符?A. &&B. ||C. !D. 以上都是答案:D4. C语言中,以下哪个选项用于循环结构?A. ifB. whileC. switchD. for答案:D5. 在C语言中,以下哪个函数用于计算两个整数的和?A. max()B. min()C. sum()D. pow()答案:C6. C语言中,以下哪个选项用于数组的声明?A. int array[10];B. int *array;C. int array[];D. 以上都是答案:D7. 下列哪个选项是C语言中的字符串字面量?A. "Hello World"B. 'Hello World'C. "Hello" "World"D. 以上都是答案:A8. 在C语言中,以下哪个选项用于定义指针?A. int *p;B. int p[];C. int p;D. 以上都是答案:A9. C语言中,以下哪个函数用于输入?A. scanf()B. printf()C. getchar()D. 以上都是答案:A10. 在C语言中,以下哪个选项用于定义结构体?A. structB. unionC. enumD. typedef答案:A二、填空题(每题2分,共20分)1. C语言中,用于定义一个整型变量的关键字是________。
答案:int2. 在C语言中,________运算符用于比较两个值是否相等。
答案:==3. C语言中,________关键字用于声明一个全局变量。
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;从键盘输入数据的正确形式应当是()。
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语言期末考试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语言双语期末试卷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)。
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++)->num C) (*p++).num D) (*++p).num 23. 已有定义 int ( * p ) ( ) ; 则指针 p 可以 。 A) 代表函数的返回值 B) 指向函数的入口地址 C) 代表函数的类型 D) 代表函数返回值的类型
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"); } } 程序运行结果为:
}
}
第 4 页 共 9 页
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); } 程序运行结果为:
13. C 语言编译系统对宏命令是 。 A) 在程序运行时进行替换处理 B) 在程序连接时进行处理 C) 和源程序中其它 C 语句同时进行编译 D) 在对源程序中其它成份正式编译之前进行处理
第 2 页 共 9 页
14. 设 A) B) C) D)
x、y 为整型变量且已赋值,将其中较大的值输出的、正确的 if 语句是 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 );
则下述说法正确的是
A) 第 2 行有语法错误 C) 编译时第 4 行出现语法错误
。
B) 第 3 行有错误,程序得不到预期结果 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); 程序运行结果为:
}
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); } 程序运行结果为:
南昌大学 2005~2006 学年第二学ቤተ መጻሕፍቲ ባይዱ期末考试试卷 ~
试卷编号: 试卷编号: 课程编号: 课程编号: H61050001 适用班级: 适用班级: 全校理工 学院: 学院:
题号 题分 得分 一 50 二 18
( A )卷 卷 闭卷
课程名称: 课程名称: 姓名: 姓名: 专业: 专业:
三 20 四 12
第 5 页 共 9 页
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++); } 程序运行结果为:
C 程序设计 学号: 学号:
考试形式: 考试形式: 班级: 班级:
考试日期: 考试日期: 2006、06、23 、 、
总分 100
累分人 签名
考生注意事项:1、本试卷共 9 页,请查看试卷中是否有缺页或破损。如有立即举手报告以便更换。 2、考试结束后,考生不得将试卷、答题纸和草稿纸带出考场。
一、 单项选择题(每空 2 分,共 50 分)
5. 设变量 c 的数据类型是 char,i 的数据类型是 int,f 的数据类型是 float,则 C 语言
第 1 页 共 9 页
6. 在下列选项中,合法的 C 语言用户标识符的是 A) int B)sin C)if D)i+j
。
7. 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>表示换行符,用_表示空格符) 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) 数组元素的个数
。
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) 无法确定 。 。