信息与通信工程学院08-09-1c语言试卷标准答案
2008级C语言程序设计试卷_A带答案(2009.6)

天津工业大学200 8 ~200 9 学年第 2 学期C 程序设计试卷(A)学院班级学号姓名注意事项:1、本试卷共13 页,满分为100 分,考试时间为110 分钟。
2、标准答题卡使用2B铅笔涂写;文字题答题时请使用蓝、黑钢笔或圆珠笔,不得使用红颜色墨水笔。
二、阅读程序题答题处:(每空3分,共30分)四、完善程序填空题答题处:(每空2分,共18分)一、单项单选题:(每题 1 分,共40 分)(说明:请将正确答案按照题干上【】内的序号涂写“标准答题卡”)1.以下标识符中,能够作为变量名使用的是【1】。
A) n_1 B) charC) x(2) D) 2_a2.若有定义语句char ch='\072'; 则变量ch 【2】。
A) 定义错误B) 包含1个字符C) 包含3个字符D) 包含4个字符3.已知字母B的ASCII码值为66,则运行下面程序段后,输出结果是【3】。
char ch1; ch1='B'+'5'-'3'; printf("%d,%c",ch1,ch1);A) D,D B) 68,DC) D,68 D) 68,684.若有如下语句:int x; float y;scanf("k=%d,f=%f",&x,&y);则能够正确的为变量x输入5、为变量y输入3.2的方法是【4】。
说明:备选答案中的<CR>表示回车符A) 5 3.2 <CR> B) 5 <CR> 3.2 <CR>C) k=5,f=3.2 <CR> D) x=5,y=3.2 <CR>int k=10; printf("%d,%o,%x",k,k,k);A) 12,a,10 B) 12,10,aC) 10,12,a D) 10,a,126.判断char 型变量ch 是否为小写字母的正确表达式是【6】。
2008年9月计算机等级考试二级C语言模拟试卷及其答案

2008年9月计算机等级考试二级C语言模拟试卷及其答案
转贴于:计算机二级考试_考试大
全国计算机等级考试二级C语言模拟试卷答案
一、选择题
(1)D
评析:算法的控制结构给出了算法的基本框架,不仅决定了算法中各操作的执行顺序,也直接反映了算法的设计是否符合结构化原则。
一个算法一般都可以用顺序、选择、循环三种基本控制结构组合而成。
(2)B
评析:数据的逻辑结构在计算机存储空间中的存放形式称为数据的存储结构。
《电力拖动控制线路与技能训练》试卷(A)
.21。
信息与通信工程学院08-09-1 C语言试卷(C卷)

天津工业大学信息与通信工程学院08-09-1学期《C语言程序设计》期末试卷(C卷)学号班级姓名不正确的:A. 标识符不可以和关键字重名B. 标识符只能以英文字母或下划线开始C. 关键字可以用于定义函数的名称D. 关键字由系统确定,编程人员不可新创2. C语句的基本类型有5种,不属于这五种的是A. 复合语句B. 控制语句C. 输入语句D. 表达式语句3. C语言表达式(int)(2.52+2.49)+1%2的类型、值分别是:A. float型5.51B. double型5.51C. int型5D. int型64.已知a、b都是int型,则运行语句 scanf(”%d,%d”,&a,&b);时,如何键入能使a、b得到的值分别是2和3 ?A. 2 3<回车>B. 2 3<回车>C. 2<回车>3<回车>D. 2,3<回车>5. 已知x是int型且值为15,则C语言表达式0<x&&x<10的值是:A. 1B. 0C. 10D. 156. 语句 if(x>=’A’&&x<=’Z’)x+=32;的功能是:A. 若x是字符’A’或是字符’Z’,则将其转换为相应的小写字母B. 若x是大写英文字符,则将其转换为相应的小写字母C. 若x不是大写英文字符,则将其值自加32D. 若x不是大写英文字符,则将其值改为327. 已知i是char型,则关于语句 for(i=1;i;i++);的叙述中,错误的是:A. 不是死循环B. 循环256次C. 循环255次,语句结束后,i的值是0D. 循环体是一个空语句8. 语句“printf(“%+10.3f”,2.1);”的运行结果是:A. 输出“2.1”B. 输出“2.100”,占10位,右对齐C. 输出“+2.100”,占10位,右对齐D. 输出“2.100”,整数部分占10位,小数部分占3位,连同小数点一共占用14位,左对齐9. 已知a是一个char型一维数组名,且该数组内存有一个很长的字符串,p是一个char型指针变量,则语句“p=a+2;”的作用是:A. 将指针p指向a数组的a[2]元素B. 将指针p指向a数组的起始地址C.将指针p指向a数组的起始元素a[0],并使a[0]的值增加2D.将数组a内的所有字符的ASCII码都增加2并且都赋值给p10. 关于switch语句,下列叙述中,错误的是:A. 紧跟着switch这个关键词之后,必须有一对圆括号B. 圆括号内必须有一个表达式,且这个表达式内必须至少含有一个变量,且这个表达式必须是整型的C. 紧跟着上述一对圆括号,必须有一对花括号D. 花括号内必须有若干个“case 常量:”、一个“default:”、若干个执行语句、若干个break 语句11. 关于数组定义与引用的概念、方法,下列叙述中错误的是:A. int a[][3]={1,2,3,4,5,6}; ,如此定义二维数组且给予初始化时,数组第一维的长度可以省略B. void fun (int a[]) ,如此定义函数头且一维数组作为其形参时,数组长度可以省略C.int a[10]; ,如此定义数组的长度为10后,该数组可引用的最后一个元素是a[10] D.直接引用一维数组的名称时,它表示这个数组的起始地址12. 调用下列常用字符串处理库函数中,须给予一个实参的函数是:A. gets()B. strcmp()C. strcpy()D. strcat()13. 关于常量,下列叙述不正确的是:A. 常量“0x36”表示十六进制36,即十进制54B. 常量“1234”被默认为int型C. 常量“1e-5”表示浮点型数0.00005D. 常量“5.0”被默认为int型14. 关于变量、变量地址、变量访问、间接访问的概念,下列叙述错误的是:A. 已知a是int型变量,则C程序中“a”表示变量a中存储的值,“&a”表示变量a的存储地址B. 已知a是int型指针变量,则C程序中“a”表示指针变量a中存储的值,“&a”表示指针变量a的存储地址C. 已知a是int型指针变量,则C程序中“a”表示指针变量a中存储的地址,“&a”表示指针变量a自身的存储地址D. 已知a是int型指针变量,则C程序中“*a”表示指针变量a中存储的地址中所存储的值15. 假设有如下定义:struct a{int x;float y;}b,c[10],*d;则有关结构体的类型定义、变量定义、数组定义、访问的基本概念,下列叙述错误的是:A. “a”是结构体类型名B. “b”是结构体变量名C. 数组c内可以同时存放10个int型数值和10个float型数值D.执行语句“d=c;”后,“d->y”与“c[0].y”不等价1. 下一程序运行时将输出 ________________________ 。
大学《C语言》试题及参考答案

(2)编写程序输出1-1000之间能够被5整除的所有整数,并求出这些整数的和输出。
(3) 从键盘输入10个正的整数,找出其中的素数输出。
答: #include#includeint f(int x){int i;for(i=2;i<=sqrt(x);i++)if(x%i==0) return 0;return 1}void main(){int a[10],i,n=0,j,t;for(i=0;i<10;i++)scanf("%d",&a[i]);for(i=0;i<10;i++)if( f(a[i]) n++;else a[i]=0;for(i=0;i<9;i++)for(j=0;j<9-i;j++)if( a[j]<A[J+1] ) {t=a[j];a[j]=a[j+1];a[j+1]=t;}printf("共有%d个素数,它们是:",n);(4)编写程序打印下列图案答:#include "stdio.h"void main() {for (int i = 0;i <= 4;i++) {for (int j = 0;j <= i;j++) { printf("*");}printf("\n");}}(5)写一个函数计算一个字符串的长度,再写一个测试函数测试其功能。
不允许使用strlen函数答:#include "stdio.h"void convert(char *str){for (int i = 0; str[i] != '\0'; i++) {if (str[i] >= 'A' && str[i] <= 'Z') {str[i] = str[i] - 'A' + 'a';}}}int main(){char str[20] = "aZcdABxDEF123";convert(str);printf("%s\n", str);return 0;}(6)从键盘上任意输入50个整数存放在a数组中,找出a数组中所有偶数存放在数组b 中,并对b数组的值按降序排列。
全国计算机二级《C语言》考试题库与答案

全国计算机二级《C语言》考试题库与答案全国计算机二级《C语言》考试题库与答案在学习、工作中,我们都离不开试题,借助试题可以检验考试者是否已经具备获得某种资格的基本能力。
什么样的试题才能有效帮助到我们呢?以下是店铺为大家收集的全国计算机二级《C语言》考试题库与答案,欢迎大家分享。
全国计算机二级《C语言》考试题库与答案篇1(1)下列关于栈叙述正确的是( )。
A.栈顶元素最先能被删除B.栈顶元素最后才能被删除C.栈底元素永远不能被删除D.栈底元素最先被删除(2)下列叙述中正确的是( )。
A.在栈中,栈中元素随栈底指针与栈顶指针的变化而动态变化B.在栈中,栈顶指针不变,栈中元素随栈底指针的变化而动态变化C.在栈中,栈底指针不变,栈中元素随栈顶指针的变化而动态变化D.以上说法都不正确某二叉树共有7个结点,其中叶子结点只有l个,则该二叉树的深度为(假设根结点在第1层)( )。
A.3B.4C.6D.7软件按功能可以分为应用软件、系统软件和支撑软件(或工具软件)。
下面属于应用软件的是( ):A.学生成绩管理系统B.c语言编译程序C.UNIX操作系统D.数据库管理系统(5)结构化程序所要求的基本结构不包括( )。
A.顺序结构B.GOT0跳转C.选择(分支)结构D.重复(循环)结构(6)下面描述中错误的是( )。
A.系统总体结构图支持软件系统的详细设计B.软件设计是将软件需求转换为软件表示的过程C.数据结构与数据库设计是软件设计的任务之一D.PAD图是软件详细设计的表示工具(7)负责数据库中查询操作的数据库语言是( )。
A.数据定义语言B.数据管理语言C.数据操纵语言D.数据控制语言一个教师可讲授多门课程,一门课程可由多个教师讲授。
则实体教师和课程间的联系是( )。
A.1:1联系B.1:m联系C.m:1联系D.m:n联系(9)已知大写字母A的ASCIl码值是65,小写字母a的ASCIl码值是97。
以下不能将变量C中的大写字母转换为对应小写字母的语句是( )。
大学C语言考试题库(含答案)

单项选择==================================================题号:1482执行以下程序段后,输出结果和a的值是()。
int a=10; printf("%d",a++);A、11 和 10B、11 和 11C、10 和 11D、10 和 10答案:C题号:2100已知字符'A'的ASCⅡ代码值是65,字符变量c1的值是'A',c2的值是'D'.执行语句printf("%d,%d",c1,c2-2);后,输出结果是A、65,66B、A,BC、65,68D、A,68答案:A题号:5055相同结构体类型的变量之间,可以()。
A、比较大小B、地址相同C、赋值D、相加答案:C题号:3217int a[10];合法的数组元素的最小下标值为()。
A、1B、0C、10D、9答案:B题号:45能正确表示逻辑关系:" a≥10或a≤0 "的C语言表达式是A、a>=0 | a<=10B、a>=10 or a<=0C、a>=10 && a<=0D、a>=10 || a<=0答案:D题号:157main(){int x=1,a=0,b=0;switch (x){ case 0: b++;case 1: a++;case 2: a++;b++;} printf("a=%d,b=%d",a,b); }该程序的输出结果是( )A、2,2B、2,1C、1,1D、1,0答案:B题号:4784设变量a是整型,f是实型,i是双精度型,则表达式10+'a'+i*f值的数据类型为()。
A、不确定B、doubleC、intD、float答案:B题号:1647以下程序中,while循环的循环次数是______main(){int i=0;while(i<10){if(i<1) continue;if(i==5) break;i++;}}A、死循环,不能确定次数B、6C、4D、1答案:A题号:191若有说明语句:char c='\72';则变量c()。
广工C语言试卷及答案

{ a++; }while(x,x--);
}
则语句a++;执行的次数是C。
A) 0B)1 C) 2D)无限次
23.以下程序中,while循环的循环次数是D。
void main()
{ int i=0;
while(i<10)
{ if(i<1) continue;
if(i==5) break;
i++;
printf(“\n”);}
13.执行以下程序,输出结果是6 (18)。
void main()
{int x[8]={1,2,3,4,5,6,0,0}, *s;
s=x+3;
printf(“%d\n”, s[2]);
}
14.执行以下程序,输出结果是2,1 (19)。
void swap( int * int *pt2)
C) char *s =“Beijing”; D) char *s ; s=“Beijing”;
28.有如下程序,执行后输出的结果是C。
voidf(int x, int y)
{int t;
if(x<y) {t=x;x=y;y=t;}
}
void main()
{int a=1,b=3,c=2;
f(a,b); f(a,c); f(b,c);
B)文件由二进制数据序列组成,C语言只能读写二进制文件
C)文件由数据流形式组成,可按数据的存放形式分为二进制文件和文本文件
D)文件由记录序列组成,可按数据的存放形式分为二进制文件和文本文件
二、填空题(每空2分,共40分)
1.若输入字符串:abcde<回车>,则以下while循环体将执行(1)0次。
计算机二级c语言考试真题及答案详解

计算机二级c语言考试真题及答案详解一、单项选择题(每题2分,共40分)1. 在C语言中,以下哪个选项是合法的整型常量?A. 0x12B. 0x12.3C. 0x12LD. 0x12.3L答案:A2. 若有定义int a=1, b=2;,则以下哪个表达式的值不为真?A. a<bB. a<=bC. a>bD. a!=b答案:C3. 在C语言中,以下哪个选项是合法的字符串字面量?A. "Hello, World"B. 'Hello, World'C. "Hello, World\n"D. "Hello, World\0"答案:A4. 下列哪个函数不能正确计算数组元素的总和?A. sum = 0; for(i=0; i<n; i++) sum += array[i];B. sum = 0; for(i=0; i<n; i++) sum = sum + array[i];C. sum = 0; for(i=0; i<n; i++) sum = array[i];D. sum = 0; for(i=0; i<n; i++) sum += array[i];答案:C5. 在C语言中,以下哪个选项是合法的函数声明?A. int add(int, int);B. int add();C. int add(int a, int b);D. int add(a, b);答案:C6. 若有定义int a[10];,则以下哪个表达式是合法的数组元素访问?A. a[10]B. a[-1]C. a[3.5]D. a[3]答案:D7. 在C语言中,以下哪个选项是合法的指针声明?A. int *ptr;B. int *ptr[];C. int ptr*;D. int ptr[];答案:A8. 若有定义int x=10;,则以下哪个表达式是合法的赋值语句?A. x = x + 1;B. x = 1 + x;C. x = x++;D. x = ++x;答案:A9. 在C语言中,以下哪个选项是合法的循环语句?A. for(;;)B. while(1)C. do {} while(0)D. for(;;) {}答案:D10. 若有定义int a[5] = {1, 2, 3, 4, 5};,则以下哪个表达式是合法的数组元素访问?A. a[5]B. a[-1]C. a[2.5]D. a[2]答案:D11. 在C语言中,以下哪个选项是合法的switch语句?A. switch(x) { case 1: break; }B. switch(x) { default: break; }C. switch(x) { case 1: case 2: break; }D. switch(x) { case 1: default: break; }答案:C12. 若有定义int x=5;,则以下哪个表达式是合法的自增运算?A. x++;B. ++x;C. x--;D. --x;答案:A13. 在C语言中,以下哪个选项是合法的函数原型声明?A. void func();B. int func(int);C. void func(int a);D. All of the above答案:D14. 若有定义int a=3;,则以下哪个表达式是合法的位运算?A. a & 2B. a | 2C. a ^ 2D. All of the above答案:D15. 在C语言中,以下哪个选项是合法的宏定义?A. #define PI 3.14159B. #define PI 3.14159fC. #define PI 3.14159LD. All of the above答案:A二、编程题(每题30分,共60分)1. 编写一个函数,计算并返回一个整数数组中所有元素的和。
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语言考试题及答案详解大一C语言考试题及答案详解一、选择题(每题2分,共20分)1. C语言中,以下哪个是正确的数据类型?A. IntegerB. intC. floatD. all of the above答案:D2. 下列哪个运算符不能用于整数和浮点数的运算?A. 加(+)B. 减(-)C. 乘(*)D. 模(%)答案:D3. 在C语言中,以下哪个关键字用于定义函数?A. ifB. forC. functionD. void答案:D4. C语言中,哪个函数用于计算并返回一个浮点数的平方根?A. sqrt()B. pow()C. abs()D. log()答案:A5. 在C语言中,以下哪个是正确的数组声明语句?A. int numbers[];B. int [10] numbers;C. Both A and BD. None of the above答案:C6. 以下哪个语句可以正确地交换两个变量的值?A. a = a + b;B. a = a - b;C. a = a / b;D. a = a + b; b = a - b; a = a - b;答案:D7. C语言中,哪个预处理指令用于包含头文件?A. #includeB. #importC. #include_onceD. #header答案:A8. 在C语言中,哪个关键字用于声明一个指针变量?A. varB. pointerC. ptrD. * (asterisk)答案:D9. 下列哪个不是C语言中的控制结构?A. if-elseB. switch-caseC. whileD. goto答案:D10. C语言中,以下哪个函数用于将整数转换为字符串?A. intToString()B. itoa()C. toStr()D. None of the above答案:B二、填空题(每空2分,共20分)1. 在C语言中,字符常量用________表示。
大学C语言考试题库(含答案)

单项选择================================================== 题号:1482执行以下程序段后,输出结果和a的值是()。
int a=10; printf("%d",a++);A、11 和10B、11 和11C、10 和11D、10 和10答案:C题号:2100已知字符'A'的ASCⅡ代码值是65,字符变量c1的值是'A',c2的值是'D'.执行语句printf("%d,%d",c1,c2-2);后,输出结果是A、65,66B、A,BC、65,68D、A,68答案:A题号:5055相同结构体类型的变量之间,可以()。
A、比较大小B、地址相同C、赋值D、相加答案:C题号:3217int a[10];合法的数组元素的最小下标值为()。
A、1B、0C、10D、9答案:B题号:45能正确表示逻辑关系:" a≥10或a≤0 "的C语言表达式是A、a>=0 | a<=10B、a>=10 or a<=0C、a>=10 && a<=0D、a>=10 || a<=0答案:D题号:157main(){int x=1,a=0,b=0;switch (x){ case 0: b++;case 1: a++;case 2: a++;b++;} printf("a=%d,b=%d",a,b); }该程序的输出结果是( )A、2,2B、2,1C、1,1D、1,0答案:B题号:4784设变量a是整型,f是实型,i是双精度型,则表达式10+'a'+i*f值的数据类型为()。
A、不确定B、doubleC、intD、float答案:B题号:1647以下程序中,while循环的循环次数是______ main(){int i=0;while(i<10){if(i<1) continue;if(i==5) break;i++;}}A、死循环,不能确定次数B、6C、4D、1答案:A题号:191若有说明语句:char c='\72';则变量c()。
国家二级c语言真题与答案200809

(2)下列叙述中正确的是( )。 A)循环队列有队头和队尾两个指针,因此,循环队列是非线性结构 B)在循环队列中,只需要队头指针就能反映队列中元素的动态变化情况 C)在循环队列中,只需要队尾指针就能反映队列中元素的动态变化情况 D)循环队列中元素的个数是由队头指针和队尾指针共同决定 (3)在长度为n 的有序线性表中进行二分查找,最坏情况下需要比较的次数是( )。 A)O(n) B)O(n2 ) C)O(log2 n) D)O(nlog2 n) (4)下列叙述中正确的是( )。 A)顺序存储结构的存储一定是连续的,链式存储结构的存储空间不一定是连续的 B)顺序存储结构只针对线性结构,链式存储结构只针对非线性结构 C)顺序存储结构能存储有序表,链式存储结构不能存储有序表 D)链式存储结构比顺序存储结构节省存储空间 (5)数据流图中带有箭头的线段表示的是( )。 A)控制流 B)事件驱动 C)模块调用 D)数据流 (6)在软件开发中,需求分析阶段可以使用的工具是( )。 A)N-S 图 B)DFD 图 C)PAD 图 D)程序流程图 (7)在面向对象方法中,不属于“对象”基本特点的是( )。 A)一致性 B)分类性 C)多态性 D)标识唯一性 (8)一间宿舍可住多个学生,则实体宿舍和学生之间的联系是( )。 A)一对一 B)一对多 C)多对一 D)多对多 (9)在数据管理技术发展的三个阶段中,数据共享最好的是( )。 A)人工管理阶段 B)文件系统阶段 C)数据库系统阶段 D)三个阶段相同 (10)有三个关系R、S 和T 如下:
(19)若变量已正确定义为int 型,要通过语句scanf("%d, %d, %d", &a, &b, &c) ;给a 赋值 1、给b 赋值2、给c 赋值3,以下输入形式中错误的是( ò 代表一个空格符)( )。 A)ò òò 1,2,3<回车> B)1 ò 2 ò3<回车> C)1, òòò 2, òòò3<回车> (20)有以下程序段 int a, b, c; a=10; b=50; c=30; if (a>b) a=b, b=c; c=a; printf("a=%d b=%d c=%d\n”, a, b, c); 程序的输出结果是( )。 A)a=10 b=50 c=10 B)a=10 b=50 c=30 D)1,2,3<回车>
大一c语言考试题目及答案

大一c语言考试题目及答案一、选择题(每题2分,共20分)1. C语言中,用于定义变量的关键字是()。
A. varB. letC. intD. define答案:C2. 下列哪个选项不是C语言的标准输入输出函数?A. printf()B. scanf()C. coutD. getchar()答案:C3. 在C语言中,用于表示逻辑与的运算符是()。
A. &&B. ||C. !D. =答案:A4. 下列哪个选项是正确的C语言注释?A. // 这是注释B. /* 这是注释 */C. /* 这是注释D. //这是注释5. 在C语言中,用于声明一个整型数组的语法是()。
A. int array[];B. int [10] array;C. int array[10];D. int array=10;答案:C6. C语言中,用于计算两个整数的和的函数是()。
A. sum()B. add()C. int_add()D. none of the above答案:D7. 下列哪个选项是C语言中的合法标识符?A. 2variableB. variable2C. -variableD. _variable答案:B8. 在C语言中,用于定义一个函数的关键字是()。
A. functionB. defC. defineD. int答案:D9. C语言中,用于表示逻辑或的运算符是()。
B. ||C. !D. =答案:B10. 下列哪个选项是C语言中的合法字符串常量?A. "Hello, World!"B. 'Hello, World!'C. "HelloD. 'Hello'答案:A二、填空题(每题2分,共20分)1. 在C语言中,定义一个具有10个元素的整型数组的语法是______。
答案:int array[10];2. C语言中,用于输出一个整数的函数是______。
广工C语言考试题(含答案)

广工C语言考试题(含答案)广工C语言考试题(含答案)一、单选题(每空1分,共50分)1. 以下选项中不属于算法特性的是( -D )A)有穷性B) 确定性C)有效性D有一个或多个输出;E有零个或多个输入;2. 在C语言中,变量所分配的内存空间大小( C )C)由变量的类型决定3. 以下选项中可作为C语言合法常量的是( C)A) -8e3.0 B)-080 C) -80. D)-80.0e4. 以下不能定义为用户标识符是( D )A)Main B)_0 C)_int D)printf5. 数学关系式x≤y≤z可用C语言的表达式表示为(A )A)(x<=y)&&(y<=z)B)(x<=y)and(y<=z)C)(x<=y<=z)D)(x<=y)&(y<=z)6. 若定义float a;现要从键盘输入a数据,其整数位为3位,小数位为2位,则选用( C)A)scanf(“%6f”,&a);B)scanf(“%5.2f”,a);C)scanf(“%6.2f”,&a);D)scanf(“%f”,a);7. 执行int x=3,y=2;后表达式x=(y>=1)的值是( B )A)0 B)1C)2 D)38. 在C语言中,合法的字符常量是( D )A)‘程序设计’B)“c”C) c D)‘\\’9. 设有说明语句:char a=’\101’;则变量a ( A )A) 包含1个字符B) 包含2个字符C) 包含3个字符D) 说明不合法10. 数字字符0的ASCII值为48,若有以下程序{char a='1',b='2';printf("%c,",b++);printf("%d\n",b-a);}程序运行后的输出结果是( C )A) 3,2 B) 50,2 C)2,2 D)2,5011. 已有定义:char a[]="she",b[]={'s','h','e'};,以下叙述中正确的是( C )A)数组a和b的长度相同B)a数组长度小于b数组长度C)a数组长度大于b数组长度D)上述说法都不对12. 下列关于链表的叙述不正确的是( D )A)每条链表都有一个头指针,用于指向链表中的第一个结点B)链表的每一个结点中必须要有一个结构体类型的指针变量用来存放下一个结点的首地址C)如果不提供头指针,则整条链表都无法访问D)链表中的各个结点在内存中一定不是连续存放的13. 若int a[][3]={1,2,3,4,5,6,7};则a数组第一维的大小是( B )A) 2 B) 3 C) 4 D)无确定值14. 下面程序段的运行结果是( D)char s[]=“xyz”;int i;for(i=0;i<3;i++) printf(“%s”,&s[i]);A) xyz B) xyz xyz xyz C) xxy xyz D)xyz yz z15. C语言中运算对象必须是整型的运算符是( A )A) %=B) / C) =D) <=16. 有以下语句:int b;char c[10];,则正确的输入语句是( B )A)scanf("%d%s",&b,&c); B) scanf("%d%s",&b,c);C)scanf("%d%s",b,c); D)scanf("%d%s",b,&c);17. 有以下程序{int m,n;scanf("m=%dn=%d ",&m,&n);printf("%d%d \n",m,n);}若想从键盘上输入数据,使变量m中的值为123,n中的值为456,则正确的输入是( A )A)m=123n=456 B) m=123,n=456C) m=123 n=456 D)123 45618. 设x为int型变量,则执行以下语句后,x的值为( B )x=10; x+=x-=x-x;A) 10 B) 20 C) 40 D) 3019. 能将高级语言编写的源程序转换为目标程序的是( C )A)链接程序B)解释程序C)编译程序D)编辑程序20. 一个算法应该具有"确定性"等5个特性,下面对另外4个特性的描述中错误的是( B )A)有零个或多个输入B)有零个或多个输出C)有穷性D)可行性21. 若以下选项中的变量已正确定义,则正确的赋值语句是( C )A)x1=26.8%3;B)1+2=x2;C)x3=0x12;D)x4=1+2=3;22. 设有以下定义int a=0;double b=1.25;char c=’A’;int d[10];则下面语句中错误的是( D )A)a++; B)b++;C)c++; D)d++;23. 设有定义:float a=2,b=4,h=3;,以下C语言表达式与代数式计算结果不相符的是( B )A)(a+b)*h/2 B)(1/2)*(a+b)*hC)(a+b)*h*1/2 D)h/2*(a+b)24. 以下4个选项中,不能看作一条语句的是( D )A){;} B)a=0,b=0,c=0;C)for (;x= =0;); D)if(b= =0) m=1; n=2;25. while(!e);中表达式!e 等价于( A )A) e==0 B)e!=0 C)e==1 D)e!=126. 有以下程序main( ){ char *p[10]={"abc","aabdfg","dcdbe","abbd","cd"};printf("%d\n",strlen(p[4]));}执行后输出结果是( A )A)2 B)3 C)4 D)527. 以下程序段中,不能正确赋字符串(编译时系统会提示错误)的是( C )A) char s[10]="abcdefg"; B) char t[]="abcdefg",*s=t;C) char s[10];s="abcdefg"; D) char s[10];strcpy(s,"abcdefg");28. 下面程序段的运行结果是( B )。
信息与通信工程学院05-06-2C语言试卷(A卷)标准答案

天津工业大学信息与通信工程学院05-06-2学期《C语言程序设计》期末试卷(A卷)标准答案一、单选题(每题2分,共42分)1.下列字符串中不是正确的C语言标识符的是:A. longintB. AverageC. Day5D. π★2. 四个运算符>.,+优先级由高到低的顺序是:A. >.,+B. +>,.C. .+>, ★D. ,>+.3. 表达式((int)3.7+8.5)%3的值是:A. 0B. 1C. 2D. 这是一个错误的表达式,不会有值★4. 已知int i=1 , j ; 经过j=(i++,i++||i++);语句之后,j的值是:A. 1 ★B. 2C. 3D. 45. 已知int a=5; 经过语句a+=a*=a-=a;语句之后,a的值是:A. 0 ★B. 5C. 15D. 206. 程序段如下:char k=1; while (k>0) k=k+1;则以下说法正确的是:A. while循环执行32767次B. while循环执行255次C. while循环执行127次★D. while循环是死循环7.关于return语句,下列说法中不正确的是:A.函数的返回值是通过return语句获得的B.void函数的函数体内最后一条语句也可以是return语句C.return语句后面可以是常量、变量名或表达式,只要有确定的值即可D.函数的返回值也可以通过函数体内的一条给函数名赋值的语句得到★8.按照C语言的规定,下列说法不正确的是:A.实参可以是常量、变量或表达式,在传递给形参时,要求实参必须有确定的值B.形参不可以是常量C.实参的个数应该与形参一样多D.形参的值能传递给实参★9.关于C语言的控制语句,下列说法错误的是:A. 循环体可以是一个循环语句B. break能结束一个函数的调用★C. else必定与它上面最近的没有配对的if相配对,且这个if与else之间只可以有一条语句相隔D. continue语句不能使用在goto构成的循环中10. 下一函数的作用是:void fun(char a[],char b[]){ char *p=a,*q=b;for(;(*p=*q)!='\0';p++,q++);}A. 将字符串b复制到a ★B. 将字符串a复制到bC. 将字符串b连接到a中的字符串后面D. 将字符串a连接到b中的字符串后面11.#include "stdio.h"long f(int n){if(n==0||n==1) return 1;else return n*f(n-1);}main(){ printf("%ld\n",f(5)); getch( ); } 上一程序的输出结果是:A. 120 ★B. 15C. 5D. 2512.#define M(a,b) a*bmain(){printf("%d",M(1+2,3+4));getch();}上一程序的输出结果是:A. 3B. 7C. 11 ★D. 2113.int f(char *a){char *p=a;for(;;)if(*p++=='\0') break;return p-a-1;}这一函数的功能是:A. 求出指针a所指向的字符串的长度★B. 求出指针a所指向的字符串的长度-1C. 求出指针a所指向的字符串的第一个字符的ASCII码D. 求出指针a所指向的字符串的末尾一个字符的ASCII码14.main(){ char c[20]="ABCD";puts(c+2);}上一程序的输出结果是:A.CD ★B.6C.ABCDABD.ABCDCC15. (提示:'A'的ASCII码是65。
C语言期末考试卷及答案

二、判断题:(请在正确的叙述前打“√”,错误的打“×”,每题2分,共20分)()1.C语言中的变量必须先定义后使用。
()2.一个C程序的main函数,必须放在程序的所有函数的最前面,应为程序总是从它开始执行的。
()3.注释是多余的信息,会干扰计算机执行代码,因此程序里不要写注释。
()4.C语言中,大小写都是一样的,例如Main与main是一样的。
()5.C程序中的任何语句,包括空语句,都要用;结束。
()6.while语句和do-while语句都是实现循环的语句。
()7.在计算一个表达式的值的时候,要注意各个运算符的优先级和结合性。
()8.C程序的代码可以用word编辑并直接运行。
()9.表达式”a=b=c=5”的运算方向是从左向右。
()10.C语句也可以使用中文编写。
三、画程序流程图:(10分)根据下面的代码,画出相应的程序流程图。
#include <stdio.h>main(){int a,b,c,max;printf("Input a,b,c:");scanf("%d,%d,%d",&a,&b,&c);if(a>b)max=a;elsemax=b;if(max<c)max=c;printf("max=%d\n",max);}四、程序分析(共25分)1.写出下列程序运行结果。
(10分)#include <stdio.h>main(){int a=10,b=8,c=6;printf("a=%d,b=%d,c=%d\n",a,b,c); c=a>b?a++:++b;printf("a=%d,b=%d,c=%d\n",a,b,c); }运行结果:2.写出下列程序运行结果。
(15分)#include <stdio.h>main(){int a[5]={0},i;for(i=0;i<3;i++){a[i]=i*2;}for(i=0;i<3;i++){printf("a[%d]=%d\n",i,a[i]);}}运行结果:五、编写程序(25分)1.编写程序:从键盘输入一个矩形的长和宽,求其面积(结果要求保留2位小数)。
C语言程序设计试卷含答案

C语言程序设计试卷含答案一、选择题(共20题,每题2分,共40分。
下面每题后面用小括号内标注了正确答案)1. 下列关键字中,用于定义变量的是(A)A. intB. ifC. whileD. for2. 变量的作用域是指变量的(C)A. 大小B. 类型C. 可访问范围D. 值3. 下列语句中,用于输出字符的是(B)A. scanfB. printfC. inputD. output4. 已知整型变量a和b,那么a += b; 等价于(D)A. a = a + b;B. a -= b;C. a = a - b;D. a = a + b;5. 在C语言中,用于表示“不等于”的运算符是(C)A. =B. ==C. !=D. >=6. 下面哪个for循环语句是正确的(A)A. for(int i=0; i<10; i++)B. for(int i<10; i++)C. for(int i=0; i<10)D. for(i=0; i<10; i++)7. 下列选项中,表示“或”运算符的是(D)A. &B. &&C. |D. ||8. 在C语言中,用于声明宏定义的关键字是(B)A. defineB. #defineC. constD. int9. 如果要判断一个整数是否为负数,正确的if条件语句是(C)A. if(n > 0)B. if(n => 0)C. if(n < 0)D. if(n <= 0)10. 下列哪个不是C语言的基本数据类型(D)A. intB. floatC. charD. string11. 下列关键字中,用于定义函数的是(C)A. mainB. includeC. voidD. for12. 在C语言中,表示“或者”的条件语句是(B)A. ifB. else ifC. switchD. while13. C语言中的“++”运算符表示(A)A. 自增B. 自减C. 相加D. 相减14. 下列哪个语句用于在C语言中声明字符类型的变量(C)A. String name;B. var name;C. char name;D. character name;15. 下列哪个不是C语言的关键字(D)A. enumB. longC. doubleD. true16. 在C语言中,用于跳出当前循环并继续执行下一次循环的关键字是(D)A. exitB. breakC. endD. continue17. 下列哪个函数用于从标准输入读取一个整数(A)A. scanfB. printfC. getsD. puts18. 在C语言中,用于声明一个指针变量的关键字是(A)A. int*B. pointC. newD. pointer19. 下列哪个运算符用于获取变量在内存中的地址(B)A. &B. *C. #D. %20. 下列哪个函数调用可以输出字符串(A)A. printf("Hello World!");B. scanf("Hello World!");C. gets("Hello World!");D. puts("Hello World!");二、填空题(共5题,每题4分,共20分。
[信息与通信]C语言往年试题
![[信息与通信]C语言往年试题](https://img.taocdn.com/s3/m/7e4c00de690203d8ce2f0066f5335a8103d26653.png)
main() {int m;char str1[20],str2[20]; printf(“input string”); gets(str1); printf(“which character that begin to copy?”); scanf(“%d”,&m); if(strlen(str1)<m||m<=0) printf(“input error”); else{copystr(str1,str2,m); printf(“result:%s”,str2);2}2 }
26
07~08学年第2学期 《C语言程序设计》
试卷
27
一、单项选择题(每题2分,共50分)
1.以下叙述不正确的是 C 。
A、一个C语言程序可以由一个或多个函数组成 B、C语言程序的基本组成单位是函数 C、在C语言程序中,注释只能位于一条语句的后面 D、一个C语言程序必须包含一个main函数
30、按顺序读入10名学生4门课程成绩,计算 出每位学生的平均分并输出。
main()
{int n,k,score,sum; float ave;
/***** found(4)****/
For(n=1;n<=10;n++) {sum=0;
For(n=1;n<=10;n++)改成 for(n=1;n<=10;n++)
成一个升序数组。
main() {int a[4]={15,34,48,98};
int b[5]={12,32,55,67,78}; int c[10]; int i,j,k; 【3】;
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、单选题(每题2分,共30分。
请将正确的答案标号画上○)
D. A. D. D. A.
B. A. B. B. D.
C. C. B. B.
D.
二、填空题(每空3分,共30分)
1. 2
2. 0
3. 1 2 3 4 5
4. ACEG
5. 9
6. 求x四舍五入至小数点后n位的值并返回此值
7. 求二维数组x的主对角线各元素的平均值并返回此值
8. sin(x) [0,π/2] 梯形法
三、改错题(每题5分,共15分。
)
1.将第三行的“year%4!=0”中的“!=”改为“==”
或将第一对Y、N对调
2. 将“if(a=0)return;”中的“=”改为“==”
3. 将(y+x)/(y-x)中的所有x、y都加上一对()
或只将最后一个x加上一对()
四、分析程序回答问题(5分)
100 实际所输入图书的本数
五、编程题(共20分)
1.参考答案
/* 冒泡法排序 */
void f(int a[],int n)
{
int *p,*q=a+n;
int i,t;
for(i=0;i<n-1;i++)
{
for(p=a+i+1;p<q;p++)
if(a[i]>*p) {t=a[i];a[i]=*p;*p=t;} }
}
2.参考答案:
/* 解方程对分法 */
#include ""
#include ""
#define JD 1e-6
double f(double x)
{ return 4*x*x*x-2*x*x+8*x-10;}
void p(double x)
{printf("x=%f",x);getch();exit(0);}
void main(void)
{
double x,x1,x2,y,y1,y2;
do{ printf("input x1 x2 ");
scanf("%lf%lf",&x1,&x2);
y1=f(x1); y2=f(x2);
if(fabs(y1)<JD) p(x1);
if(fabs(y2)<JD) p(x2);
} while(y1*y2>;
for(;fabs(x2-x1)>JD;)
{ x=(x1+x2)/;
y=f(x);
if(fabs(y)<JD) p(x);
if(f(x1)*y< x2=x; else x1=x;
printf("x1=%f x2=%f x=%f\n",x1,x2,x); }
getch(); }。