《语言程序设计试卷A.doc》由会员分享,可在线阅读,更多相关《语言程序设计试卷A.doc(4页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、6.以下程序的输出结果为( )。#define ADD(x) x*x main( ) int a=4,b=6,c=7,d=ADD(a+b)*c; printf(d=%d,d); A d=70 B d=238 C d=140 D d=7007.设有以下定义,值为5的枚举常量是( )。enum weeksun,mon=4,tue,wed,thu,fri,sat w;A tue B sat C fri D thu8.设有说明“char s110,*s2=s1;”,下列语句中正确的语句是_。A*s2=”computer”; Bs2=”computer”;Cs1=”computer”; Ds110=”c
2、omputer”;9要打开一个已存在的非空文件“file”用于修改,选择正确的语句( )。A fpfopen(file,r); B fp=fopen(file,w);C fp=fopen(file,r+); D fp=fopen(file,w+);10具有相同类型的指针类型变量p与数组a,不能进行的操作是( )。A p=a; B *p=a0; C p=&a0; D p=&a;二 、判断对错,对的划“”,错的划“”(10分,每小题1分)1在程序中定义了一个结构体类型后,可以多次用它来定义具有该类型的变量。( )2若有定义:char *p(char a10);则p是函数名。( )3char *p=
3、girl;的含义是定义字符型指针变量p,p的值是字符串girl。( )4函数strlen(ASDFGn)的值是7。( )5在int *p;和语句printf(“%d”, *p);中的*p含义相同。( )6C语言规定,调用一个函数时,实参变量和形参变量之间的数据传递是值传递。( ) 学年度第二学期期末考试 软件技术专业 级 C语言程序设计 课程试题 (A)卷 考 题 号 一 二 三 四 五 六 总分 场 : 分 数 考 密 装 得分 评卷人 思想道德修养 生 一、 选择题(20分,每小题2分)1C语言源程序的基本单位是( )。 A 过程 B 函数 C 子程序 D 标识符 2. 定义int *sw
4、ap()指的是( )A指一个返回整型值的函数swapB指一个返回指向整型值指针的函数swapC一个指向函数swap()的指针,函数返回一个整型值D以上说法均错3假设变量a,b均为整型,表达式(a=5,b=2,ab?a+:b+,a+b)的值是( )。A 7 B 8 C 9 D 24. C语言中函数返回值的类型是由( )决定的。Areturn语句中的表达式类型 B调用该函数的主函数类型C定义函数时所指定的函数类型 D传递给函数的实参类型5. 设有如下程序段,下面描述中正确的是( )。int k=10; while(k=0) k=k-1;A 循环执行一次 B循环是无限循环C循环体语句一次也不执行 D
5、循环体语句执行一次思想道德修养思想道德修养 姓 名 答 : 卷 不 封 订 得 学 超 生 证 过 号 : 此 线 线 线 7一个变量的类型被强制转换后,它将保持被强制转换的类型,直到下一次再被强制转换时为止。( )8参加位运算的数据可以是任何类型的数据。( )9C语言把文件看作是一个字符(字节)的序列。( ) 10C语言中未加显式类型说明的函数意味着是int型函数,对于不返回值的函数最好用void而不是省略。( )三、 填空题(16分,每小题2分)1C语言表达式 5278 的值是()。2break语句不能用于( )语句和( )语句之外的任何其他语句中。3在C语言中,任一语句必定以( )结束。
6、4设有以下宏定义,则执行赋值语句 a=PP+20;(a为int型变量)后,a的值是( ) )。 #define PR 8 #define PP PR*405若有int a3=10,12,30;则a+1是( )的地址,*(a+2)=( )。6定义结构体类型时,应使用关键字( ),定义枚举类型时,应使用关键字( ) )。7C文件可以分为两种类型,它们是( )文件和( )文件。8设i,j,k均为int型变量,则执行完下面的for循环后,k的值为( )。 for(i=0,j=10 ; i=j ; i+, j-) k=i+j;四、写出下列程序的运行结果(20分,每小题5分)1.#includemain(
7、) char str =“The C program”,c;int i;for(i=2;(c=stri)!=0;i+) switch(c) case g: +i; break;case o: continue;default: printf(“%c”,c); continue;printf(“*”);printf(“n”);2f(int a) b=0;static c=3;b=b+1;c=c+1;return(a+b+c);main() int a=2,i;for(i=0;i3;i+)printf(%d ,f(a);3.main( ) int a,b,s=0; for(a=1,b=1;a=20
8、) break;if(b%3=1) b+=3; continue; b-=5;printf(“a=%dtb=%dn”,a,b); 考 场: 考 密 装 生 姓 名 答 : 卷 不 封 订 得 学 超 生 证 过 号 : 此 线 线 线 4. f1(int a) int b=0; static int c=3; b+=1; c+; return(a+b+c); main() int a=1,i; char s110=“java”,s210=“basic”,s10; for(i=0;i3;i+) printf(%d ,f1(a); printf(“n”); if(strcmp(s1,s2) str
9、cpy(s,s1); puts(s);printf(“%d,%sn”,strlen(s2),strcat(s2,s1);五、阅读下列程序,填空(20分, 每小题5分) 1程序填空(程序功能:求100200间的全部素数) (1) main() int m,k,i,n=0; for(m=101;m=200;m+=2) if(n%10=0) printf(n); k=sqrt(m); for(i= (2) ;i=k;i+) if(m%i=0) (3) ; if(i= (4) ) printf(%d ,m);n+; 2程序填空(程序功能:用选择法对数组中的10个字符按由大到小排序)void sort(
10、 (1) ) int i,j,k;char t; for (i=0;in-1;i+) (2) ; for(j=i+1;jn;j+) if ( (3) ) k=j; t=ak;ak=ai;ai=t; main( ) char s10;int i; for(i=0;i10;i+) scanf(“%c”,&si); (4) ; printf(“the sorted array:n”); for(i=0;i10;i+) printf(“%c”, (5) ); printf(“n”); 考 场: 考 密 装 生 姓 名 答 : 卷 不 封 订 得 学 超 生 证 过 号 : 此 线 线 线 if(in=
11、fopen(infile,r)=NULL) printf(Cannot open input file.n); exit(0); if(out=fopen(outfile,w)=NULL) printf(Cannot open output file.n); exit(0); while(!feof(in) fputc( _(2)_ ,out);_(3) _ ;_ (4) _ ;六、根据要求编程(共14分,每小题7分)1 编写一个函数,将字符串s中所有的小写字母转换为大写字母,其他不变,生成新的字符串r。void fun(char *s,char *r) 2 已知 6a30,15b36,求出满
12、足不定方程2a+5b=126的全部整数组解。如(13,20)就是其中一组解,并按此格式输出每个解。3 程序结果填空#include void fun(int *a,int b,int *c) *a=+b;b=*c;*c=*a; main() int a=10,b=20,c=30; int a=4; c=a+b; printf(%dn,a+b+c); int c=b; fun(&a,b,&c); printf(%dn,a+b+c); printf(%dn,a+b+c); 程序输出的第一行是_,第二行是_,第三行是_。4. 程序填空(程序功能:将一个磁盘文件中的信息复制到另一个磁盘文件中) #include stdio.h main() _ (1) _ *in,*out; char ch,infile10,outfile10; printf(Enter the infile name:n); scanf(%s,infile); printf(Enter the outfile name:n); scanf(%s,outfile); 考 场: 考 密 装 生 姓 名 答 : 卷 不 封 订 得 学 超 生 证 过 号 : 此 线 线 线 C程序设计 第7页 (共8页) C程序设计 第8页 (共8页)