《苏州科技学院-程序设计及C语言试卷A(共10页).doc》由会员分享,可在线阅读,更多相关《苏州科技学院-程序设计及C语言试卷A(共10页).doc(10页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精选优质文档-倾情为你奉上 系 专业 班 学号 姓名 密封线试卷类型: A 苏州科技学院 程序设计及C语言试卷使用专业年级计算机07级民办 考试方式:开卷( )闭卷( ) 共 10 页题号合计得分一、选择题(每题2分,共20分)1. 给出定义: char x =abcde; char y =a,b,c,d,e; 正确的叙述为: C 。A) 数组X和数组Y等价. B) 数组x和数组Y的长度相同.C) 数组X的长度大于数组Y的长度. D) 数组X的长度小于数组Y的长度.2. 以下说法中,正确的是: D 。A)函数可直接引用其它函数中的static类别的局部变量.B)在函数体中至少需要一个retur
2、n语句。C)在函数体中可以定义另一个函数。 D)在函数体中可以调用函数自身。3. 能正确表示逻辑关系:“a10或a0”的C语言表达式是_D_ A) a=10 or a=0 | a=10 & a=10a=04. 在C程序中,若对函数类型未加说明,则函数的隐含类型为: _int_。A) int B) double C) void D) char 5. 表达式 strlen(“hello”) 的值是 B 。A、 4 B、 5 C、 6 D、 76若有语句 int a9; 则下述对a的描述正确的是_A_。A)定义了一个名称为a的一维整型数组,共有9个元素B)定义了一个数组a,数组a共有10个元素C)说
3、明数组a的第9个元素为整型变量D)以上说法都不对7. 在 C 程序中,用来返回逻辑值“真”的是:_A_。A) 1 B) 非 0 的数 C) 非 1 的数 D) 大于 0 的数8. 设字符变量ch 的取值是小写的英文字母,将它转换为相应的大写英文字母的表达式是_ B 。A) ch+32 B) ch-32 C)ch+26 D)ch-269. 以下程序运行后的输出结果是_A_main()int i,n=0,0,0,0,0;for(i=1;i=4;i+)ni=ni-1*2+1; printf(%d,ni);A) 1 3 7 15 B) 1 3 5 7 C) 1 5 9 13 D) 不确定的值10. 已
4、知字符A的ASCII码为十进制的65,下面程序的输出是_C_main()char ch1,ch2;ch1=A+5-3;ch2=A+6-3;printf(%d,%cn,ch1,ch2);A)C,D B) B,CC) 67(C),D D) 不确定的值密封线二、阅读程序题。仔细阅读程序,写出程序的运行结果。(每小题4分,共32分)1#include int a=4,b=5 ;(全局变量)int fun(int x, int y) int a=2,b=3,c ; c=ab?a:b ; return c+x+ymain() printf(“%d”,fun(a,b) ;结果:122#includemain
5、() char a=”book”, t ; int i , k=0 ; for(i=1;i=3 ;i+) if(akai) k=i ;t=ak ;ak=a3 ; a3=t ;puts(a) ;结果:bkoo3#includemain() int w10=1,2,3,4,5,6,7,8,9,10,i,t; for(i=0;i10 ;i+) t=wi ; wi=wi*wi%10 ; if(wi= =t) break ; printf(%d,w5) ; 结果:64#includemain() int x8=37,43,56,28,90,13,55,79,i,j,t ; i=0, j=7 ; whil
6、e(ij) t=xi ; xi=xj ; xj=t; i+;j- ; for( i=0 ;i3;i+) printf(%5d,xi) ; 结果:79 55 13 5#includemain() char w5=a,b,c,d,e ; int i ; for(i=0;i2;i+) wi=wi+2-32 ; wi=wi-30 ; wi+1=wi+1-30 ; for(i=0;i5;i+) printf(%c,wi) ;结果:CDEFe密封线6#includemain()int i,j;for(i=0;i5;i+) j=i*10+6;if( j%3!=0) continue;printf(%dn,j
7、);结果:6 367#includevoid fun( int *a,int *b) int *t ; t=a ; a=b ; b=t ; (*a)+ ; (*b)+=2 ; main() int a=1 ,b=10 ; fun(&a,&b) ;printf(“%d,%dn”,a,b) ;结果:3 118#include void fun( int *p) int *a , i=0 ; for(a=p ;ap+4 ;a+) *a=2*pi+ ;main() int a=2,4,6,8,10 ; fun(a) ; printf(“%dn”, a3) ; 结果:16三、填空题(每空3分,共9分)1
8、下列程序输出数组中的最大值,由s指针指向该元素,请填空在if语句中的判断表达式.#include main()int a10=6,7,2,9,1,10,5,8,4,3,*p,*s;for(p=a,s=a;p-a10;p+)if( *s*p ) s=p;printf(The max number is %dn,*s);2以下定义链表的结点和输入函数,请填空.#include #include struct student int num;char name10;struct student * next;struct student * Adds(struct student * head)st
9、ruct student * p;p=(struct student * )malloc(sizeof(struct student);/申请空间scanf(%d%s,&(p-num),p-name);while(p-num!=0) p-next=head ;head=p;p=(struct student * )malloc(sizeof(struct student);scanf(%d%s,&(p-num),p-name);free(p); return head ;密封线四、编程题(共39分,第1题9分,其余每小题10分)1编程求多项式1+1/2+1/3+1/4+1/5+1/n的前50项
10、之和并输出。#include void main()float i,sum=0;for(i=1;i=50;i+)sum=1/i+sum;printf(多项式前50项和为:%fn,sum);2. 用穷举法解“韩信点兵”的问题:“今有物不知其数:三三数之余二,五五数之余三,七七数之余二,问物几何?”。试输出在10000-50000范围内所有符合条件的数。#include void main()int i;for(i=10000;i=50000;i+)if(i%3=2)&(i%5=3)&(i%7=2)printf(%dn,i);密封线3. 输入任意10个实数,编成按从小到大的顺序输出该10个数。#i
11、nclude void main()int xq10,i,j,n;printf(请输入任意十个整数:);for(i=0;i10;i+)scanf(%d,&xqi);for(i=0;i10;i+)for(j=0;jxqi)n=xqi;xqi=xqj;xqj=n;for(i=0;i10;i+)printf(%d ,xqi);printf(n);4. 键盘接收一串字符串,统计并输出该字符串中包含的大写英文字母的总个数。要求用函数调用的方式完成编程,其中自定义函数count()实现字符串中包含的大写英文字母的总个数并返回该值;主函数完成其余功能。#includeint count(char a)int i,b=0;for(i=0;ai;i+)if(ai=A&ai=Z)b+;return b;void main()char a20;gets(a);printf(%dn,count(a);专心-专注-专业