收藏 分销(赏)

电子科技大学本科C语言A3-试卷.doc

上传人:w****g 文档编号:4020659 上传时间:2024-07-25 格式:DOC 页数:3 大小:36.54KB
下载 相关 举报
电子科技大学本科C语言A3-试卷.doc_第1页
第1页 / 共3页
电子科技大学本科C语言A3-试卷.doc_第2页
第2页 / 共3页
点击查看更多>>
资源描述
姓名__________________ 专业名称__________________  班号________________学号__________________教学中心_________________ …………………… …… … … … … …密………………… …… … … … … ……封……………… …… … … …线… … … …… … … …………………… 电子科技大学网络教育考卷(B卷) (20 年至20 学年度第 学期) 考试时间 年 月 日(120分钟) 课程 C语言 教师签名_____ 大题号 一 二 三 四 五 六 七 八 九 十 合 计 得 分 一、单项选择题(每题2分,共30分) 1。 请问:下面这个程序段的输出是什么?( ) int a=7,b=8,c=9; if(a<b) { a=b; b=c; c=a; } printf("a=%d b=%d c=%d\n",a,b,c);   A 。 a=7 b=8 c=7 B. a=7 b=9 c=7 C. a=8 b=9 c=7 D. a=8 b=9 c=8 2.C语言对嵌套 if 语句的规定是:else总是与(   )配对。  A.其之前最近的 if B。第一个 if C。缩进位置相同的 if D。 其之前最近且不带 else 的 if 3.有以下程序段: int k=0; while(k=1) k++; while循环执行的次数是( )。 A.无限次 B。有语法错,不能执行 C. 一次也不执行 D。执行1次 4.若有语句: static char x[]="12345”; static char y[] = {’1',’2',’3',’4’,'5'}; 则下面那一个是正确的描述。( ) A.x数组和y数组的长度相同。 B.x数组长度大于y数组长度。 C。x数组长度小于y数组长度. D。x数组等价于y数组。 5.若有定义:int a[5][6]; 则下面关于数组a的叙述中正确的是( ). A.该数组共有20个元素 B.a[0][6]是该数组的一个元素 C。a[0][0]是该数组的一个元素 D.a[5][6]是该数组的一个元素 6.对局部变量不正确描述( ) A.在不同块内可以使用相同的变量名而不会混淆。 B.局部变量在任何一个函数内有效. C.局部变量的初值每调用一次赋一次 D.用auto说明的变量为局部变量。 7.凡是函数中未指定存储类别的局部变量,隐含的存储类别为( )。 A.auto B. register C。 static D. extern 8.在说明语句:int *f( );中,标识符f代表的是( ) A.一个返回值为指针型的函数名 B. 一个用于指向整型数据的指针变量 C.一个用于指向函数的指针变量 D.一个用于指向一维数组的行指针 9.typedef( ) A。 可以定义各种类型名和变量名. B。 可以创造新的数据类型. C。 和#define作用相同。 D.  只是对已存在的类型增加一个类型名,不能创造新类型. 10.若fp已正确定义为一个文件指针,d1。dat为二进制文件,为“读"而打开此文件的语句是( ). A.fp=fopen(”d1.dat",”r"); B。fp=fopen("d1。dat”,”rb”); C.fp=fopen(”d1.dat",”r+"); D.fp=fopen("d1.dat",”w"); 11.以下选项中,当x为大于1的奇数时,值为0的表达式是( )。 A.x%2==1 B.x/2 C.x%2!=0 D。x%2==0 12.若有定义:int w[3][5]; ,则以下不能正确表示该数组元素的表达式是( )。 A。*(*w+3) B.*(w+1)[4] C.*(*(w+1)) D.*(&w[0][0]+1) 13。 有以下程序段typedef struct node {int data;struct node *next;}* NODE; NODE p; 以下叙述中正确的是( )。 A.p是指向struct node结构体变量的指针的指针 B.NODE p;语句出错 C。p是指向struct node结构变量的指针 D。p是struct node结构变量 14。若有程序段:double x=—5。9;int y;y=(int)x; 执行该段程序后( )。 A。x=-5.9,y=—5 B。x=-5.9,y=-6 C.x=—5,y=-5 D.x=-6,y=—6 15.已知 int b; 则对指针变量正确的说明和初始化是: ( ). A。int *p=b; B。int p=b; C.int p=&b; D.int *p=&b; 二、判断题(每题1分,共10分) ( )1.执行char c[3]=”ab”, *p; p=c;程序段后,*(p+1)的值是 b , *(p+2)的值是 \0 . ( )2。C语言中,变量名用大小写是等价的。 ( )3。强制类型转换,如(double)x,只改变原变量的类型,而不改变其值。 ( )4.存储字符串所需的内存空间等于字符串的长度。 ( )5.C语言中,注释可以出现在源程序的任何位置。 ( )6。整型、字符型、指针型是C语言中最简单的数据类型。 ( )7.全局变量在整个源程序文件中都有效。 ( )8.switch选择结构中必须有default子句。 ( )9。如果x>y或者a<b为真,那么表达式( x〉y||a〈b)为真。 ( )10、结构成员名可以与程序中的变量同名,也可以与结构类型名相同,而不会混淆。. 三、分析程序给出运行结果(每题5分,共25分) 1.以下程序的运行结果是: #include ”stdio。h" #include ”stdlib.h” struct data { int x,y; }; void main() { struct data * p;p=(struct data *)malloc(sizeof(struct data)); (*p).x=3;(*p)。y=4; printf("%d %d\n",p->x,p-〉y); free(p); } 答案: 2.分析下面程序的运行结果. #include 〈stdio。h〉 int main() { int i,j, row=0, colum=0, max; int a[3][4] = {{1,2,3,4},{9,8,7,6},{—10,10,—5,2}}; max=a[0][0]; for (i=0;i<=2;i++) { for (j=0;j〈=3;j++) { if (a[i][j]>max) { max = a[i][j]; row = i; colum=j; } } } printf("max=%d,row=%d,colum=%d\n”, max, row, colum); return 0; } 答案: 3.分析下面程序的运行结果。 #include〈stdio.h〉 main() {char ss[]=”2345678”; ss[5]='\0’; printf(”%s\n",s); } 答案: 4.给出以下程序的运行结果。 #include<stdio.h〉 main( ) { printf(”%d %x %o\n”,88,88,88); printf("%d %x %o\n”,025,025,025); printf(”%d %x %o\n",0x31,0x31,0x31); return 0; } 5。 main()   { char a[]="This is a program.”,b[20]; int i=0; while(a[i]!='\0’) { b[i]=a[i]; i++; } b[i]='\0'; printf(”string a is: %s\n”,a); printf("string b is: ”); for(i=0;*(b+i)!=’\0’;i++) printf("%c",*(b+i)); printf("\n”);   } 四、完善程序填空题(每题5分,共15分) 1.将一个数组中的值按逆序重新存放, #include 〈stdio.h> void main() { int i,j,m,n=0,temp; int x[20]; printf(”输入需排序的个数%d\n”,n); scanf(”%d”,&n); for(i=0;i〈n;i++) { scanf(”%d,”, &x[i]); } m = ; for(i=0;i〈=m;i++) { j = ; temp = x[i]; x[i] = x[j]; x[j] = temp; } } 2.将原文件file1.c的内容读出并显示, 同时将其内容写入file2。c文件中. #include〈stdio。h〉 main() { FILE *fp1,*fp2; fp1=fopen("file1。c","r"); fp2=fopen(”file2.c”,"w”); while(!feof(fp1)) putchar(getc(fp1)); rewind( ); while(!feof(fp1)) putc( ); fclose(fp1);fclose(fp2); } 3. 统计字符串中小写字符的个数。 #include "stdio。h” main() { char str[20]; int i,n=0; gets( ); for(i=0;str[i]!= ‘ ‘ ; i++) if(str[i]>='a'&& ) n++; printf(”%d\n”,n); } 五、编程题 (每题10分,共20分) 1.编写一个C程序,输入a、b、c三个值,要求按其大小顺序输出. 2.编制程序实现:将输入的一个偶数写成两个素数之和的形式.例如,若输入数值8,则输出8=3+5。 3
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传
相似文档                                   自信AI助手自信AI助手

当前位置:首页 > 教育专区 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服