当前位置:首页 >> 哲学 >>

2009福建专升本C语言试题


2009 年福建专升本 C 语言
一、单项选择题
1.下列选项中,合法的 C 语言标识符是 A. my_name B. $234 C. my name D. .23b

2.已知:int x=5; 执行完 printf(“%d”, ++x);后。输出的结果是 A. 4 B. 5 C. 6 D. 不确定 3.已知:int x=5,y=3; 则逻辑表达式(x-y)&&(y-3)的值为 A. 7 B. 2 C. 1 D. 0 4.已知:int a=3,b=6,c=8; 则执行完语句:a=a>b?a: (b<c?b:c); 后,a 的值为 A. 3 B. 6 C. 8 D. 17 5.如下程序执行后的结果是() 。 main(){ int a=11, b=3;printf(“%d, %d”, a/b, a%b);} A. 3,2 B. 11,2 C. 3,3 D. 3.3,2 6.如下程序运行时输入“B 回车”,输出结果是 mian(){ char c; scanf (“%c”, &c); switch (c) { case ?A?: printf(“5”); case ?B?: printf(“4”); case ?C?: printf(“3”); case ?D?: printf(“2”); default: printf(“1”);}} A. 4 B. 43 C. 432 D. 4321

7.已知字符?a?的 ASCII 码为 97,?A? 的 ASCII 码为 65,则如下程序的运行结果是 main(){ char c=?d?;int i=c-32;printf(“%c, %d”, i, i);} d,68 B. D,68 C. d,100 D. D,100 8.如下程序段的执行结果是 main(){ int x=1, y=100; while (y>0){ x*=2; y/=3;} printf(“%d, %d”, x, y);} A. 8,0 B. 16,0

C. 32,0

D. 64,0

9.如下选项中正确的数组定义是 A. #define m 10;static int a[m]={3,4,5,6}; B. static int a[2]={3,4,5}; C. static int a[10]={3,4,5}; D. int m=4; static int a[m]={3,4,5,6};
1

执行程序段:char str[12]; scanf(“%s”, str);如果输入如下字符串 What?s□your□name? 则 str 的值是 A. What?s B. What?s□ C. What?s□your D. What?s□your□name? 11.如下程序段的运行结果是 main(){ int i=5, sum=100; do { sum = sum+ (--i); } while( i>=0); printf (“%d”, sum);} A. 100 B. 109 C. 105

D. 110

12.如下程序段的运行结果是 main(){ int i; for (i=0; i<=10; i++) { if (i%3==0)continue; printf (“%d”, i);}} A. 1,2,4,5,7,8,10, B. 1,2,3,4,5,6,7,8,9,10, C. 3,6,9, D. 1,2,4,5,6,7,8,9,10, 13.如有说明:int a[5][6]; 则数组的正确引用是 A. a[5][4] B. a[3,4] C. a(3)(4) D. a[3][4] 14.在 C 语言中,凡不加类型说明的函数,自动 A. 按无类型 void 处理 B. 按整型 int 处理 C. 按字符型 char 处理 D. 按浮点型 float 处理 15.如下程序段的运行结果是 void kk ( int a, int b){ a=a*b; printf(“%d, %d”, a, b);} main(){ int a=5, b=6;kk (a, ++b); printf (“%d,%d”, a,b);} A. 30,6,30,6 B. 35,6,35,6 C. 30,7,5,7 D. 35,7,5,7 16.如下程序段的运行结果是 main(){ static int a[6]={3, 6, 9, 12, 15, 18}; int *c=&a[2];printf (“%d,%d”, *(c+3), *c+3);} A. 18,12 B. 15,18 C. 18,15 D. 15,12 17.如下程序段语法正确的是 A. int *p; p=1000; B. int a, *p; p=&a; C. int a, *p; *p=&a; D. int a=1000;*p; p=a; 18.如下程序段的运行结果是 int mm(int *a, int b) { *a=*a+5; b*=3; return *a+b;} main(){ int a=3, b=6;int c=mm(&a,b);
2

printf (“%d,%d,%d”, a, b, c);} A. 3,6,9 B. 8,6,26

C. 8,18,26

D. 3,18,11

19.如下程序段的运行结果是 main(){ static int a[2][3]={3, 6, 9, 12, 15, 18};int *c=a[1]; printf (“%d,%d”, *(c+1), *c+1);} A. 15,13 B. 6,7 C. 9,10 D. 12,13 20.已有函数定义如下,void aa(int a, char b, float c){c=(float)(a+b);} 则如下程序段的能进行正确函数调用的是 A. main() {aa(5.0,?a?,5);} B. main() {int *a, scanf(“%d”,&a); aa(a,?a?,9);} C. main() {int a=1; char b=?b?; float c=1.0; aa(a,b,c);} D. main() {int *a; scanf(“%d”,a);aa(a,?a?,3.0);} 21.有定义如下,struct student{char name[10];float score;int age;}stu1,*p; 则如下程序段正确的是 A. stu1={“ddd”,66.0,55}; B. strcpy(stu1.name,”ddd”);stu1.score=66.0;stu1.age=15; C. p=&stu1;p->name=?ddd?;p->score=66.0; p->age=15; D. p=&stu1;p->name=”ddd”;p->score=66.0; p->age=15; 22.如下程序段语法正确的是 A. int mm(int x,int y){int x,y;return x+y;} B. char str[10];scanf(“%s”,&str); C. int i,a[10];for(i=0;i<=10;i++)scanf(“%d”,&a[i]); D. int i,a[10],*p;for(i=0, p=a; p<a+10;p++)scanf(“%d”,p); 23.已知 int a; 并且 a 已经被正确赋值,则下列逻辑表达式与(!a)等价的是 A.(a==0) B. (a>0) C. !(a==1) D. (a==1)

24.若变量已经定义,要求程序从 1 累加到 100,下列选项不能完成此功能的是
A. for(i=1,sum=0;i<=100;i++) sum=sum+i; B. i=1;sum=0;while(i++<=100) sum=sum+i; C. for(i=1,sum=0;i<=100;i++){sum=0; sum=sum+i;} D. i=1;sum=0;do{ sum=sum+i;} while(++i<=100); 25.已知 int k; 且 k 已经正确赋值,则下列表达式中存在错误的是 A. 2<k<6 B. (k<6)++ C. k<6&&k>2 D. k==1 26.如下程序段的运行结果是 main(){ int i, j, a=0; for(i=1;i<=5;i++) for(j=i;j<=5;j++) a=a+j;printf (“%d”, a);} A. 10 B. 25 C. 55 27.语句语句 printf(“%-8.4d”, -036);的运行结果是
3

D. 75

A. -036□□□□

B. -036□□□□□

C. □□□□-036

D. □□□□□-036

28.如下程序段的运行结果是 main(){ int a[10] = {34, 22, 12, 66, 8, 33, 22, 338, 56, 99}; int i, x=0; for(i=1; i<10; i++) if (a[i] < a[x]) x = i; printf (“%d”, a[x]);} A. 8 B. 34 C. 99 D. 338 29.如下程序段的运行结果是() 。 main(){ char str[] = {?s?,?t?, ?u?, ?d?, ?e?, ?n?, ?t?, ?\0?}; char *q=str;while(*q!=?\0?) q++; printf (“%d”, q-str);} A. 5 B. 6 C. 7 D. 8 30.如下程序段的运行结果是() 。 #define n 5 struct student{ int no;float score;}; main(){struct student str[n]={ {1,12.5}, {2,55.5}, {3,90.5}, {4,78.0}, {5,34.0}}; int i; float a=0, b;for(i=0; i<n; i++) a+=stu[i].score; b=a/n; printf(“%08.4f”, b); } A. 0054.1000 B. 054.1000 C. 0054.1 D. 54.10000

二、程序阅读题
31. #include <stdio.h> void main(){ char str1[]=”good morning”, str2[20]; char *p, *q; for (p=str1; *p!=?\0?; p++); for (q=str2; --p>=str1; q++)*q=*p; *q=?\0?;printf(“%s”, str2);} 32、 #include <stdio.h> #define n 10 void de(int a[], int x, int *m) { int i=x+1;for (; i<=*m; i++) a[i-1]=a[i]; *m=*m-1;} void main(){ static int a[n]= {32,12, 12, 56, 78, 12,78, 5, 32, 12}; int i, j, x, m=n-1; for (i=0; i<=m; i++); { x=a[i];for(j=i+1; j<=m; j++) if(a[j]==x)de(a,j,&m);} for (i=0; i<=m; i++);printf(“%d”, a[i]);} 33. #include <stdio.h> void ch(int *a, int *b) { int c;c=*a; *a=*b; *b=c;} void main(){
4

static int a[10]= {32,5, 18, 56, 98, 52,78, 15, 132,112}; int x=0, y=1, i; if (a[x]>a[y])ch(&x, &y); for(i=2;i<10; i++); if(a[i]<a[x]) x=i; else if(a[i]>a[y]) y=i; ch(&a[x], &a[y]); for(i=0; i<10; i++) printf(“%d,”, a[i]); } 34. #include <stdio.h>void main(){ char str[]=”0342201411”; static int a[10]; int i; char *p; for (i=0; i<10; i++) a[ i ] = 0; for (p=str; *p!=?\0?; p++) { i=*p-?0?;a[i]++;} for(i=0;i<10;i++) printf(“%d”, a[i]);}

三、程序填空题
35.下面程序求出二维数组的最大值 #include <stdio.h> #define m 3 #define n 4 int findmax(int a[][n]) { int i, j, max=a[0][0]; for(i=0; i<m; ________) for(j=0; j<n; j++) if ( a[i][j]>max) max=a[i][j]; _________________________;} void main(){ int i , j, max, ___________; for(i=0; i<m; i++) for(j=0; j<n; j++)scanf(“%d”, &a[i][j]); max=findmax(a);printf(“%d”, max);} 36.下面程序求出 100-200 之间的全部素数 #include <stdio.h> void main(){ int m, k, i;for(m=101; m<=200; m=m+2) { k=sqrt(m); for(i=2; i<=k; _________) if(m%i==0) ____________; if(i>k) printf(“%d”, m);}}

5


相关文章:
2006福建专升本真题C语言含答案
2009福建专升本真题C语言含... 2010福建专升本真题C语言含...1...福建专升本历年真题及答案C语言 计算机科学类 第一部分福建专升本历年真题及答案C...
2009年福建专升本计算机专业考卷
2009福建专升本计算机专业考卷_其它考试_资格考试/认证_教育专区。历年试卷 ...考试时间 分 共三部分) 第一部分C语言程序设计 第一部分 语言程序设计本大题...
福建专升本C语言模拟试题及参考答案
专升本C语言100题及答案 23页 2财富值如要投诉违规内容,请到百度文库投诉中心;如要提出功能问题或意见建议,请点击此处进行反馈。 福建专升本C语言模拟试题及参考答案...
2009年专升本C语言真题
2009专升本 C 语言真题一.填空题(将正确答案填写到答题卡相应的位置上,每小题 2 分,共 10 分) 1.一个 C 程序是由若干个函数构成,其中必须有一个( )...
2008福建专升本真题C语言含答案
2014教师资格中学教育知... 2006福建专升本真题C语言... 2007福建专升本真题C语言... 2009福建专升本真题C语言... 2010福建专升本真题C语言...1...
2007福建专升本真题C语言含答案
〈= 若变量已正确定义并赋值,下面符合 语言语法的表达式是___ ___。 10. ...2006福建专升本真题C语言... 2008福建专升本真题C语言... 2009福建专升本真题C语言...
2009年辽宁专升本考试真题-C语言部分
2009 年辽宁省专升本计算机(C 语言)试卷第二部分 计算机高级语言部分(C 语言) 四、填空题(每题 2 分,共 10 分) 41.一个 C 语言程序由若干个函数构成,其中...
2010福建专升本真题C语言含答案
2010福建专升本真题C语言含答案_理学_高等教育_教育专区 暂无评价|0人阅读|0次下载|举报文档 2010福建专升本真题C语言含答案_理学_高等教育_教育专区。福建专升本...
2009山东专升本《C语言程序设计》真题
2009 年普通高等教育专升本考试 语言程序设计 程序设计》 《C 语言程序设计》试题计算机科学与技术专业综合二试题( 满分: 计算机科学与技术专业综合二试题(科目 2,满...
专升本C语言历年考试题及答案9
计算机专升本考试大纲和历年试题专升本 C 语言历年考试题及答案 第一章与第三章...文档贡献者 qiaolin1989032 贡献于2011-09-21 专题推荐 专升本C语言考试大纲 ...
更多相关标签: