华南农业大学2015上学期C语言A卷试卷及答案
华南农业大学《C语言程序设计》 2017(下)C语言试卷(A)及答案

华南农业大学期末考试试卷(A卷)2017学年第2学期考试科目:C语言程序设计考试类型:(闭卷)考试考试时间:120 分钟学号姓名年级专业考生注意1、本考卷包括试卷和答卷。
一、二大题为客观题,在“机读卡”上答题;三、四大题为主观题,在“答卷”上答题,写在试卷上不得分。
2、必须在机读卡和答卷上正确填写学号、姓名和班级等内容,否则会影响你的考试成绩。
3、机读卡的学生代号区如果只有10位,则只需填写学号后10位。
4、试卷的反面可以打草稿。
考试结束时,“机读卡”、“答卷”和试卷都要上交。
一、判断题(在机读卡上答题,本题共20小题,每小题1分,共20分)请用2B型铅笔涂答题卡,按题号顺序,正确的判断涂黑”A”、错误的判断涂黑”B”1. ASCII码就是汉字机内码。
2. 计算机内存的基本存储单位是比特(Bit)。
3. 程序是动态的,进程是静态的。
4. 使用高级语言编写程序时一般不需要考虑具体的计算机结构。
5. 数据578可能是十进制数,也可能是八进制数。
6. 函数的函数体包括数据说明部分和执行语句部分,两部分不可以交叉出现。
7. C语言程序总是从代码中的第一个函数开始,按顺序执行至最后一个函数。
8. 存放字符序列的字符数组中,最后一个元素必须是字符' \0 '。
9. 函数的实际参数和形式参数可以使用相同的变量名。
10. C语言通常都在main( ) 函数的函数体内对其他函数进行定义。
11. 语句for( i=0 ; i++<10 ; ) ; 执行结束后,变量i的值为10。
12. 所有逻辑运算符的优先级都低于关系运算符。
13. C语言的main( )函数可以任意调用其他函数,但是不能使用其它函数中定义的变量。
14. 带参数的宏无指定类型,其参数也无类型约束。
15. break语句不能单独使用,必须出现在循环语句的循环体内。
16. C语言的输入输出功能既能通过调用标准库函数实现,也能通过输入输出语句实现。
上学期C语言A卷试卷

华南农业大学期末考试试卷(A卷)2015学年第1学期考试科目:C语言程序设计考试类型:(闭卷)考试考试时间:120 分钟学号姓名年级专业1、答案必须分别写在“机读卡”和“答卷”上,写在本试卷上不得分。
2、必须在机读卡和答卷上正确填写班级、学号、姓名等内容,否则没有考试成绩。
3、机读卡的学生代号区只需填写学号后10位。
4、考试结束时,“机读卡”、“答卷”和本试卷都要上交。
一、选择题(在机读卡上答题,本题共20小题,每小题2分,共40分)1. 请选出其中不合法的常量。
( )A. '8'B. 903uC. 65D. D2. C语言程序中对函数描述正确的是( )。
A. 除了main函数,函数相互之间可以嵌套定义,嵌套调用B. 函数不能嵌套定义,除了main函数,其他函数可以相互调用C. 函数相互之间可以嵌套定义,嵌套调用,递归调用D. 函数相互之间可以嵌套调用,但是不能调用自身3. 以下程序段中表达式的运行结果是()。
int i=3,j=5; char a='a';a=a+i,a+j;A. 105B. 102C. 73D. 784. 字符串"\\\tabcd\r\12\n" 在内存中所占的字节数为()。
A. 14B. 9C. 10D. 115. 设有如下变量定义:int i=3,j=5; float x=3.5,y=5.0;请问表达式i-=j*=x+y 的值是多少。
()A. 72B. -17C. -39D. -196. 能够实现对字符串"Dog" 进行正确赋值的操作是()。
A. char a[3]={ 'D', 'o', 'g'};B. char a[]="Dog";C. char a[3]={ "Dog"};D. char a[3]; s="Dog";7. 在以下给出的表达式中,与while(exp)中的(exp)不等价的表达式是()。
华南农业大学c语言上机考试题目

1打印数字空心菱形Time Limit:1000MS Memory Limit:65536K题型: 编程题语言: 无限制描述由键盘输入n(n为奇数),打印如下图空心菱形例n=712 23 34 43 32 21输入格式整数输出格式如题输入样例3输出样例12 21作者Admin答案:#include <stdio.h>#include <math.h>int main(){int n,i,j;scanf("%d",&n);n/=2;for(i=-n;i<=n;++i){for(j=0;j<2*n+1-abs(i);++j){if(j==abs(i)||j==2*n-abs(i)){printf("%d",n-abs(i)+1);}else{printf("\040");}}printf("\n");}return 0;}2两数和为1909Time Limit:1000MS Memory Limit:65536K题型: 编程题语言: 无限制描述由键盘输入10个整数,编程判断是否存在两个数的和为1909,存在输出Y,不存在输出N输入格式10个整数,由空格分隔输出格式Y或者N输入样例2 1900 42 3123 31 23 343 213 34 9输出样例Y提示作者Admin#include<stdio.h>#include<stdlib.h>main(){int a[10];int i,j;int flag = 0;printf("input ten numbers:\n");for(i=0;i<10;i++)scanf("%d",&a[i]);for(i=0;i<10;i++){for(j=0;j<10;j++)if(a[j] + a[i] == 1909 && i!=j){flag = 1;break;}}if(flag) printf("Y\n");else printf("N\n");system("pause");}3回文串的判断Time Limit:1000MS Memory Limit:65536K题型: 编程题语言: 无限制描述回文串是指一个字符串从左读到右与从右读到左是一样的,现由键盘输入一行字符(最多不超过80个字符,以回车结束),判断能否通过去掉0个或1个字符,使得字符串成为回文串,如果可以输出Y,否则输出N输入格式一行字符输出格式Y或N输入样例abca输出样例Y提示提示,去掉c字符,即可成为回文串作者Admin#include "stdio.h"#include "string.h"int main(){int n;char a[100]="abca";int i,j,flag;n=strlen(a);i=0;j=n-1;flag=0; // characters qty need insertedwhile ( (flag<2) // only need 0 or 1 character&& ((i+1)<=(j-1)) // have character to compare){if (a[i]==a[j]) {i++; j--;}else if (a[i]==a[j-1]) {flag++; i++; j-=2;}else if (a[i+1]==a[j]) {flag++; i+=2; j--;}else flag=2;}if (flag<2) printf("Y");else printf("N");return 0;}二:#include<stdio.h>#include<conio.h>#define SIZE 20int isPalindrome(char []); /* Prototype only send the number and type of arguments to the Compiler. */main(){ /*Local Declarations*/char str[SIZE];/*Statements*/printf("请输入字符串,以回车结束:\n");scanf("%s",str); /*Record the string.*/if(isPalindrome(str)==0) /*The string is not a palindrome.*/ { printf("The string is not a palindrome.\n"); }else /*The string is a palindrome.*/{ printf("The string is a palindrome.\n"); }system("pause");return 0;}三:#include<stdio.h>#include<string.h>void main(){char str[20],copy[20];char temp;char *head,*tail;printf("Please input a string:\n");gets(str);strcpy(copy,str);head=str;tail=str+strlen(str)-1;while(head<tail){temp=*head;*head++=*tail;*tail--=temp;}if(strcmp(copy,str)==0)printf("该字符串为回文。
C程序设计语言期末考试题A有答案)

C程序设计语言期末考试题A有答案)………密………封………线………以………内………答………题………无………效……期末试题——C#程序设计语言(A卷)说明:本试卷共四大题,试卷满分100分,考试时间120分钟。
一.判断题(每题1分,共10分,正确的打√,错误的打×)( ) 4.派生类可以继承基类的成员,以及方法的实现;派生的接口继承了父接口的成员方法,并且也继承父接口方法的实现。
( ) 5.当创建派生类对象时,先执行基类的构造函数,后执行派生类的构造函数。
( ) 6.隐式类型转换就是不需要声明目标类型就可以进行的转换?………密………封………线………以………内………答………题………无………效……1.C#程序设计语言属于什么类型的编程语言:aA.高级语言 B.自然语言 C.机器语言 D.汇编语言2.如有int a=11;则表达式(a++*1/3)的值是:b………密………封………线………以………内………答………题………无………效……A.0 B.3 C.4 D.123.类的字段和方法的默认访问修饰符是:bA. public B. privateC. protected D. internal4.对于在代码中经常要用到的且不会改变的值,可以将其声明为常量。
如圆周率PI始终为3.14。
现在要声明一个名为PI的圆周率常量,下面哪段代码是正确的?bA.const float PI;PI = 3.14f;B.const float PI = 3.14f;C.float const PI;PI = 3.14f;D.float const PI = 3.14f;5.请问经过表达式a=3+3>5?0:1的运算,变量a的最终值是什么?。
cA.6 B.1 C.0 D.true 6.下列语句是MyClass的一部分,obj是MyClass的一个对象。
private class subclass{public int data;}void change(ref int x) { x=1;}public void test()………密………封………线………以………内………答………题………无………效……{subClass s=new subClass();s.data=100;change(ref s.data);Console.WriteLine(s.data);}则调用obj.test()后。
华农-2012年第一学期高级语言程序设计试卷(A)

华南农业大学期末考试试卷( A 卷)2012学年第1学期 考试科目: 高级语言程序设计 考试类型:(闭卷) 考试时间: 90 分钟考生须知:1. 必须在答卷上正确填写班级、学号、姓名等内容。
2. 答案写在答卷上,写在试卷等其它地方不得分。
3. 试卷上出现的int 类型变量均为4字节存贮。
4. 上机考试部分,考试时间与地点另行安排。
一、单项选择题(共10题,每题1分)1. 下面对C 语言运算符的优先级叙述正确的是( A )。
A . !(非) > 算术运算符 > 关系运算符 > &&(与) > ||(或) > 赋值运算符B . !(非) > 关系运算符 >算术运算符 > &&(与) > ||(或) > 赋值运算符C . 算术运算符 >!(非) >关系运算符 > &&(与) > ||(或) > 赋值运算符D . 算术运算符 > 关系运算符 > !(非) > &&(与) > ||(或) > 赋值运算符2. float x=3.5, y=4.3 ;int a=8, 表达式y+a%3*(int)((x+y)/4+0.05)/3 的值为( B )A .4.3;B .5.3;C .6.3;D .7.3;3. 若有代数式bc yx 322(x,y,b,c 是浮点数),则正确的C 语言表达式是( C )A .2/3*x^2*y/b*cB .2/3.0*x^2*y/b/cC .2*x*x*y/3*b*cD .x*x/b/c*2/3*y4. 在a=2,b=1,c=0;则执行c=b||a--;语句后,a 和c 的结果是( B )A .0,1B .2,1C .1,0D .2,05.下面程序段的输出结果是 D 。
int main( ){ int a[ ]={1,2,3},s,b,*p;s=1;p=a;for(b=0;b<3;b++)s*=*(p+b);printf(“s=%d\n ”,s);}A.s=1 B.s=2 C.s=3 D.s=66.设整型变量a为5,使b不为2的表达式是 ( C )A. b=a/2B. b=6-(--a)C. b=a%2D.b=a>3?2:17. 执行以下程序后,y的值是(A)int main (){ i nt y = 10;do { y --;} while(-- y);printf("%d\n",y --);}A. -1 B. 1 C. 8 D. 08.有如下程序#include <stdio.h>int main(){ int a[3][3]={{1,2},{3,4},{5,6}},i,j,s=0;for(i=1;i<3;i++)for(j=0;j<=i;j++) s+=a[i][j];printf(“%d”,s);}该程序的输出结果是AA.18 B.19 C.20 D.219. 有以下程序段int n,t= 0,s=0;scanf("%d",&n);do{ s=s+t; t=t-2; } while (t!=n);为使此程序段不陷入死循环,从键盘输入的数据以下最合适的选项是(A)A.任意负奇数B.任意偶数 C.任意整数D.任意负偶数10. 若变量已正确定义,要求程序段完成求5!的计算,不能..完成此操作的程序段是(C)A.i=1;p=1;do{p*=i; i++; } while(i<=5);B.for(i=1,p=1;i<=5;i++) p*=i;C.for(i=1;i<=5;i++) { p=1; p*=i;}D.i=1;p=1;while(i<=5) {p*=i; i++;}二、看程序写结果(共6题,每题4分)1.#include "stdio.h"#define M 4#define N 3int main(){ int a[M*N]={1, 2, 3, 4,5, 6, 7, 8,9,10,11,12};int b[N*M], i, j;for(i=0; i<M*N; i++)b[(i%M)*N+i/M]=a[i];for(i=0; i<M*N; i++)printf("%4d", b[i]);}请写出运行结果:2.#include "stdio.h"main(){ int k=5,n=0;while(k>0){ switch(k){ default : break;case 1 :case 2 : n+=k;case 3 : n+=k;}k- -;printf("%d\n",n);}}请写出运行结果:3.#include <stdio.h>int main(){ int i,j,k;for(i=1;i<4;i++){for(j=1;j<4-i;j++)printf(" ");for(k=1;k<=2*i-1;k++)printf("%c",'A'+i-1);printf("\n");}}请写出运行结果:4.#include<stdio.h>main( ){char arr[]=”ABCDE”;char *ptr;for(ptr=arr;ptr<arr+5;ptr++) printf(“%s\n”,ptr);}请写出运行结果:5. #include <stdio.h>int main( ){ int a[5][5],i, j ;for( i=0;i<5;i++){ a[i][0] =1; a[i][i] =1; }for( i=2; i<5; i++ )for(j=1; j<i ; j++ )a[i][j] =a[i-1][j-1] + a[i-1][j];for(i=0; i<5; i++){for( j=0; j<=i; j++)printf(“%5d”,a[i][j]);printf(“\n”);}}请写出运行结果:6. 有下面结构体类型定义,struct node{char info;struct node *link;};以head为实参调用如下函数,void func(struct node *head){ struct node *p = head, *p2=NULL;int i=0;while( p!= NULL){ putchar(p->info); p = p-> link; }putchar('\n');p = head;while( p!= NULL){ if (p-> link!= NULL) p->info=p-> link ->info; p = p-> link; }p = head;while( p!= NULL){ putchar(p->info); p = p-> link; }}请写出运行结果:三、看程序填空题(共8空,每空2分)1.下面程序判断某一年是否闰年,请填空。
华南农业大学2008年C语言试卷(A)

华南农业大学期末考试试卷( A卷)2007学年第二学期考试科目:高级语言程序设计考试类型:(闭卷)考试时间:120分钟考生须知:1.必须在答题卡及答卷上正确填写班级、学号、姓名等内容。
2.答案写在答卷上,写在试卷等其它地方不得分。
3.试卷上出现的int类型变量均为4字节存贮。
4.'A'字符的ASCII码为65,'a'字符的ASCII码为97,'0'字符的ASCII码为48。
一、选择题(15题,共30分)1. 以下选项中合法的字符常量是【】A."B" B.'\010'C.68 D.D2. C语言中,函数值类型的定义可以缺省,此时函数值的隐含类型是【】A. voidB. intC. floatD. double3. 下列程序段运行结果是【】int a=10, b=6, c=3, i=0;while(a>b>c){ i++;a=a-3;b=b-1;}printf("%d", i);A.0 B.2 C.3 D.编译错误4. 以下有4组用户标识符,其中合法的一组是【】A.For B. 4d C. f2_G3 D. WORD-sub DO IF voidCase Size abc define5. getchar函数功能是【】A.向终端输出一个字符串B.从终端输入一个字符串 C.从终端输入一个字符D.向终端输出一个字符6. 执行语句 for(i=1; i++<4; ); 后,变量i 的值是【 】A . 3B . 4C . 5D . 不定7. 在C 语言中,1个float 类型变量占4个字节,则设float x[2][4];假设数组x 开始于内存1000单元,则x[1][1]的存储始于【 】A.1004B.1016C.1020D.10248. 若有代数式bcy x 322,若x 、y 、b 、c 为float 类型,则正确的C 语言表达式是【 】 A . 2*x^2*y/3*b*c B .2*x^2*y/3/b/cC . 2*x*x*y/3*b*cD .x*x/b/c*y/3*29. 执行以下程序后,输出的结果是【 】main (){ int y = 10;do { y - -;} while(- - y);printf("%d\n",y --);}A . -1B . 1C . 8D . 010. 设有如下程序段unsigned int k = -1;while(k>=0)k++;则下面描述中正确的是【 】A .循环体一次也不执行B . 循环是无限循环C .循环体语句执行多次D . 循环体语句执行1次11. 设i 是int 型变量,f 是float 型变量,用下面的语句给这两个变量输入值:scanf ("i=%d,f=%f",&i,&f ); 为了把100和765.12分别赋给i 和f ,则正确的输入为【 】A .100,765.12B .i=100,f=765.12C .100 765.12D .i=100 f=765.1212. 以下数组定义中不正确的是【 】A) int a[2][3]; B) int b[][3]={0,1,2,3};C) int c[100][100]={0}; D) int d[3][]={{1,2},{1,2,3},{1,2,3,4}};13. 设有定义:int a=2,b=3,c=4;,则以下选项中值为0的表达式是【】A.(!a= =1)&&(!b= =0) B.(a<b)&& !c||1C.a && b D.a||(b+b)&&(c-a)<b14. 设有定义:char a[]="xyz",b[]={'x','y','z'};,以下叙述中正确的是【】A.数组a和b的长度相同B.a数组长度小于b数组长度C.a数组长度大于b数组长度D.上述说法都不对15. 在函数调用过程中,如果函数funA调用了函数funB,函数funB又调用了函数funA,则【】A.称为函数的直接递归调用B.称为函数的间接递归调用C.称为函数的循环调用D.C语言中不允许这样的递归调用二、看程序,按要求作答(5题,共20分)1. #include "stdio.h"main(){int a = 6.5;int b, c=25, d;b = a * 3;d = c/10.0;printf("%d,%d\n", b, d);}写出程序执行结果2. #include "stdio.h"main(){ int k=5,n=0;while(k>0){ switch(k){ default : break;case 1 : n+=k;case 2 :case 3 : n+=k;}k--;printf("%d ",n);}}写出程序执行结果3. #include "stdio.h"int func(int x){static int y=10;x=2*x;y=x+y;return(y);}main(){ int x=15,y,z;y=func(x);z=func(y);printf("y=%d,z=%d",y,z);}写出程序执行结果4. #include "stdio.h"main(){ int a=1024, b=384;while( a != b ){if ( a>b )a = a - b;elseb = b - a;}printf("%d\n", a);}写出程序执行结果,并说明程序的作用5. #include "stdio.h"void fun(int i){if (i>15)fun(i/16);printf("%d", i%16);}main(){fun(12345);}写出程序执行结果,并说明函数fun的作用三、看程序填空(5空,共10分)1.下面是求数列:……前n项和的程序,结果保留四位小数。
华农-2015学年第1学期C语言A卷参考答案

C参考答案2015学年第1学期考试科目:C语言程序设计一、单项选择题(机读,每小题2分,共40分)二、判断题(机读,正确的判断涂黑“A”、错误的判断涂黑“B”每小题1分,共20分)三、阅读程序填空题(每空1分,共20分)四、编写程序题(每小题各10分,共20分)1.#include <stdio.h>#include <string.h>int main(){ char str1[80],str2[80],str3[80],temp[80];int i;printf("Input 3 Strings:\n");gets(str1); //输入3个字符串gets(str2);gets(str3);if(strcmp(str1, str2) > 0) //如果str[0]>str[1], 交换它们的值 { strcpy(temp, str1);strcpy(str1, str2);strcpy(str2, temp);}if(strcmp(str1, str3) > 0) //如果str[0]>str[2], 交换它们的值 { strcpy(temp, str1);strcpy(str1, str3);strcpy(str3, temp);}if(strcmp(str2, str3) > 0) //如果str[1]>str[2], 交换它们的值 { strcpy(temp, str2);strcpy(str2, str3);strcpy(str3, temp);}printf("After sorted: \n");puts(str1); //输出排序后的3个字符串puts(str2);puts(str3);return 0;}2.#include <stdio.h>#include <math.h>main(){ int i,temp,rmd,sum;for(i=100; i<=999; i++){ temp=i; sum=0;while(temp>0){ rmd=temp%10;sum+=pow(rmd,3); //此处若不会使用pow函数,可以用连乘替代。
华南农业大学期末考试答案(A卷).doc

考试科目:计算机科学技术导论考试类型:(闭卷)考试时间:120分钟2005学年第一学期华南农业大学期末考试答案(A 卷)班级 _______________ 学号 _____________ 姓名 _______________题号二三五总分得分评阅人•、单项选择题(每小题2分,共30分)1 D2 D 3A 4C5B 6C 7B 8C 9A10D 11C12A13B14C15D二、判断题(对的打“ 丁”,错的打“X”,每小题1分,共10分) 1 X 2 X 3 J4 V5 X 6V 7 X 8 V 9 7 10X三、专业术语翻译(请给出下列专业术语的中文名称,每个1分,共15 分) 1 随机存彳诸器(Random Access Memory) 2 屮央处理器(Central Processing Unit)3基木输入输出系统(Basic I 叩ut Output System) 4 操作系统(Operate System)5 结构化杳询语 ^(Structured Query Language)6 软件能力成熟度模型(Capability Maturity Model for software)7 统一建模语言(Unified Model Language)8 数据库管理系统(Database Management System)9 联合图像专家组(Joint Picture Experts Group) 10 虚拟现实(Virtual Reality)11传输控制协议/网络协议(Transmission Control Protocol/ Internet Protocol)12域名系统(Domain Name System)13远稈登陆服务14计算机辅助设计(Computer-Aided Design)15局域网(Local Area Network)评分细则:写对一个给1分,屮英文均可s简篆题C得题5分,*351答:1)计算机是由运算器、控制器、存储器、输入设备和输出设备5大部分组成。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
问卷共6页,第7页华南农业大学期末考试试卷(A 卷)2015学年第1学期 考试科目: C 语言程序设计 考试类型:(闭卷)考试 考试时间: 120 分钟学号 姓名 年级专业1、答案必须分别写在“机读卡”和“答卷”上,写在本试卷上不得分。
2、必须在机读卡和答卷上正确填写班级、学号、姓名等内容,否则没有考试成绩。
3、机读卡的学生代号区只需填写学号后10位。
4、考试结束时,“机读卡”、“答卷”和本试卷都要上交。
一、选择题(在机读卡上答题,本题共20小题,每小题2分,共40分)1. 请选出其中不合法的常量。
( )A. '8'B. 903uC. 65D. D2. C 语言程序中对函数描述正确的是( )。
A. 除了main 函数,函数相互之间可以嵌套定义,嵌套调用B. 函数不能嵌套定义,除了main 函数,其他函数可以相互调用C. 函数相互之间可以嵌套定义,嵌套调用,递归调用D. 函数相互之间可以嵌套调用,但是不能调用自身 3. 以下程序段中表达式的运行结果是( )。
int i=3,j=5; char a='a'; a=a+i,a+j; A. 105 B. 102C. 73D. 78 4. 字符串 "\\\tabcd\r\12\n" 在内存中所占的字节数为( )。
A. 14B. 9C. 10D. 115. 设有如下变量定义:int i=3,j=5; float x=3.5,y=5.0;请问表达式 i-=j*=x+y 的值是多少。
( ) A. 72B. -17C. -39D. -196. 能够实现对字符串 "Dog" 进行正确赋值的操作是( )。
A. char a[3]={ 'D', 'o', 'g'};B. char a[]="Dog";C. char a[3]={ "Dog"};D. char a[3]; s="Dog";7. 在以下给出的表达式中,与 while(exp)中的(exp)不等价的表达式是( )。
A .(!exp==0)B .(exp>0||exp<0)C .(exp= =0)D .(exp!=0)8. 执行语句scanf("%d%c%d",&a,&b,&c);时,使相关变量均能获得输入值的正确选项是()。
A. 3a4B. 3 a 4C. 3,a,4D. 3回车a回车4回车9. 设int a=28153;则语句 printf("%3d\n",a); 的输出结果是()。
A.281 B.153 C.28153 D.提示出错10. 下面程序段运行的结果是()。
int x=13, y=8, z=5;if (x>y>z)printf("right");elseprintf("wrong");A.提示出错B.right C.wrong D.rightwrong11. 运行完下面的C语言程序段后,k的值是()。
int k=5,m;m=k++;A. 4B. 5C. 6D. 712. 不能中断循环执行并立刻跳出循环体的语句是()。
A. breakB. continueC. returnD. goto13. C语言中,int类型的数据在内存中的存储形式是()。
A. ASCII码B. 原码C. 补码D. 反码14. 合法的数组定义是()。
A.int a[] = "hello!"; B.int a[5]={0,1,2,3,4,5};C. char s = "hello!";D.char a[] = {'h','e','l', 'l', 'o', '! '};15.下面程序段的运行结果是()int x[3],i,j,k;for(i=0;i<3;i++) x[i]=0;k=2;for(i=0;i<k;i++)for(j=0;j<k;j++) x[j]=x[j]+1;printf("%d\n",x[1]);A.2 B. 1 C. 0 D. 316. 假定每个int类型的数据在内存中占4字节,数组ay定义为:int ay[10];若ay在内存中的起始地址是2010(十进制),则ay[2]的起始地址(十进制)是()。
A. 2012B. 2014C. 2018D. 202017. 下列程序段中,有错误的是()A.int main(){ float a=2.6,b;b=max(2.1,3.6)=a++; printf("%f",a+b); return 0;} B.int f2(int x){return (x>1?puts("Y"):puts("N")); }C.int f(){ int x;scanf("%d",&x); return x++,x+5; }D.void xchange(int x,int y){ int t;t=x;x=y;y=t;}问卷共6页-第8页问卷共6页,第7页18. 对如下程序段执行流程描述正确的选项是( )。
int k=20; do{ k=k-1;} while(k<10);A . 循环体语句执行多次B . 循环体不执行C . 循环体执行一次D . 循环体语句执行10次19. 设有宏定义命令如下:#define RES 3+5则表达式RES*5+20的值为( )。
A. 60 B. 48C. 45D. 3520. 有如下程序段,请问执行后的输出结果是( )。
int i,j.k,sum; for (i=2;i<7;i++) { sum=1; for(j=i;j<7;j++)sum=sum+j;}printf("%d",sum);A .48B .49C .1D .7二、判断题(在机读卡上答题,本题共20小题,每小题1分,共20分)请用2B 型铅笔涂答题卡,按题号顺序,正确的判断涂黑”A ”、错误的判断涂黑”B ”1. 在 "while(循环条件) {循环体}" ,这个循环语句中,循环体的内容有可能一次都无法运行。
( )2. 在赋值表达式中,赋值号左边变量的数据类型和赋值号右边表达式之值的数据类型可以不相同。
( )3. 由于空语句和空函数都没有任何具体的操作,所以它们的存在是没有意义的。
( )4. 一个函数的函数体内包括数据说明定义部分和执行语句部分,两部分不可以交叉出现。
( )5. 存储字符数组中的最后一个字符必须是'\0'。
( )6. 字符常量是用一对双撇号括起来的一个字符。
( )7. 运算符“&”能被运用于变量和数组元素的运算。
( )8. 执行语句“ for(i=1;i++<10; ); ”后变量i 的值是10。
( )9. 由于C 程序执行的入口是main 函数,所以定义main 函数的位置必须在文件的开头。
( ) 10. 如果定义的函数没有参数,则函数名后的圆括号可以省略。
( ) 11. void play(int, int); 是一个合法的函数说明。
( ) 12. for 循环语句只能用于循环次数已经确定的情况。
( )13. 已有定义int x[5];,则该定义语句说明x 是具有5个元素的一维数组,且数组元素是x[1],x[2],x[3],x[4],x[5]。
( )14. 在C 程序中使用符号常量,能够增强程序的可读性,方便程序的修改。
( )15.所有逻辑运算符的优先级都高于关系运算符。
( )16.定义带参数的宏时,无需指定类型,其参数也无需指定类型。
( )17.在if语句中,if后面的表达式可以是关系表达式与逻辑表达式,而不能是算术表达式。
( )18.一个函数必须有且只能有一个return语句。
( )19.example和Example是两个完全相同的标识符。
( )20.C语言本身不提供输入输出语句,因此输入输出操作需要通过调用库函数实现。
( )三、阅读程序填空题(请在答卷上答题,本题共7小题20空,每空1分,共20分)1.以下程序运行后,如果从键盘上输入34567,则输出结果为:7 6 5 4 3#include <stdio.h>int main(){int i,n;(1) ;while(n !=0){i= n %10;(2) ;printf("%d ",i);}return 0;}2. 以下程序功能为:输入一个整数m,判断它是否为素数,请填空。
(判断整数m是否是素数的标准是:除了1与m以外,m不能被1~m中其他整数整除)#include <stdio.h>int main(){int m, i;printf("m:\n");scanf(“%d”, (3) );for(i=2;i<m;i++)if(m%i == 0)(4) ;if ( (5) )printf("%d is a prime number\n", (6) );return 0;}3. 以下程序判断某一年是否闰年,请填空。
(提示:闰年为该年能被400整除,或能被4整除且不能被100整除)问卷共6页-第8页问卷共6页,第7页#include <stdio.h> int main() {int year ,leap;scanf ("%d", (7) ); if ( (8) ) { if ( year%100==0){ if( year%400==0) leap=1; else leap=0; }else (9) ; } elseleap = 0; if (leap)printf("%d is ", year); elseprintf("%d is not ", year); printf("a leap year."); return 0; }4. 以下程序实现:求数组10个元素中的最小值并输出。
请填空完成。
#include <stdio.h> int main(){ int a[10] = {8,4,57,62,94,3,9,97,5,12}; int i, min;(10) ; for(i=1; (11) ;i++) if(min > a[i])(12) ; printf("min = %d\n", min); return 0; }5. 以下程序读入10个学生的成绩,统计及格学生的个数并计算所有学生的平均分。