《c语言试题1有答案 .doc》由会员分享,可在线阅读,更多相关《c语言试题1有答案 .doc(8页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、一、单项选择题(每题2分,15小题,共30分)1C语言源程序是由 组成的。A) 过程B) 函数C) 子程序D) 主程序和子程序2一个算法应该具有“确定性”等5个特性,下面对另外4个特性的描述中错误的是 。A)有零个或多个输入B)有零个或多个输出C)有穷性D)可行性3以下选项中合法的C语言标识符是 。A)longB)_2TestC)3DmaxD)A.dat4下列转义字符中错误的是 。A)000B)14C)x111D)25对于语句:f=(3.0,4.0,5.0),(2.0,1.0,0.0);的判断中, 是正确的。A)语法错误B)f为5.0C)f为0.0D)f为2.06若变量a,b已经正确定义并赋值
2、,符合C语言语法的表达式是 。A)a2+bB)a*a+bC)aa+bD)aa+b7有输入语句:scanf(a=%d,b=%d,c=%d,&a,&b,&c);为使变量a的值为1,b的值为3,c的值为2,则正确的数据输入方式是 。A)132B)1,3,2C)a=1b=3c=2D)a=1,b=3,c=28若 w=1,x=2,y=3,z=4,则条件表达式wx ?w : yz ?y : z的值是 。A)4B)3C)2D)19设int a=0,b=0,m=0,n=0;则执行(m = a=b)|(n = b=a)后m和n的值分别是 。A)0,0B)0,1C)1,0D)1,110以下for循环的执行次数是 。
3、for (x=0,y=0; (y=123)&(xy) return y;else return x;void main() int a=9,b=8,c=7,d=6; printf(“%cn”,f(f(a,b),f(c,d);程序的执行结果是 。A) 9B) 8C) 7D) 613若有宏定义#define MOD(x,y) x%y ,则下面程序段执行后的输出结果是 。int z,a=15; float b=100;z=MOD(b,a);printf(%dn,z+);A)11B)10C)6D)有语法错误14sizeof(float)是 。A)一种函数调用B)一个整型表达式C)一个不合法的表达式D)
4、一个浮点表达式15以“只读”方式打开文本文件a:aa.dat,下列语句中 是正确的。A)fp=fopen(“a:aa.dat“,“ab“);B)fp=fopen(“a:aa.dat“,“a“);C)fp=fopen(“a:aa.dat“,“wb“);D)fp=fopen(“a:aa.dat“,“r“);二、填空题(每空1分,20小空,共20分)1函数体一般包括 和 两部分。2字符常量使用一对 界定单个字符,而字符串常量使用一对 来界定若干个字符的序列。3数学式子的C语言表达式为 。4已知x是一个四位十进制数,则它的百位数的表达式是 ,则它的十位数的表达式是 ,则它的个位数的表达式是 。5语句p
5、rintf(s%s,mall);的输出结果为 。6已知x、y分别为a、b、c中的最大、最小值,求a、b、c中中间值的表达式为 。7判断变量a、b、c的值是否是等差数列中连续三项的表达式为 。8若声明char a=windows , b=9x;则执行语句printf(%s,strcat(a,b);的输出结果为 。9被调用函数执行结束时,此函数中定义的 类型的变量不被释放。10设 int a10=1,2,3;则*(a+3)的值是 。11设struct student int no;char name12;char sex;float score4;stu1;在程序执行时,系统为stu1分配 个字节
6、的内存空间。12C语言函数返回类型的默认定义类型是 。13若x=0123,则表达式(5+(int)(x)&(2)的值是 。14表达式(4|1)&3)的值为 。15将文件指针移到文件开始的函数是 ,将文件指针移到文件结束的函数是 。三、综合题(每题6分,5小题,共30分)1写出下面程序执行后的运行结果。#include void main()int i,j,m,n;i=8; j=10; m=+i; n=j+;printf(%d,%d,%d,%d,i,j,m,n);2写出下面程序执行后的运行结果。#include void main()int a,b,c;a=10;b=20;c=30;a=(-b=
7、a)|(a+b!=c);printf(%d,%dn,a,b);3写出下面程序的运行结果。#include void main()int a=10,y=0 ;do a+=2 ; y+=a ;if (y50) break ; while (a=14);printf(a=%dy=%dn,a,y);4下面函数为:求出数组中的最大数和次最大数,并把最大数和数组中的第0个元素对调,把次最大数和数组中的第1个元素对调;判断程序中的正误,并改正错误。#define N 20void fun(int aN,int n)int k , m1 , m2 , max1, max2 ,t ;max1 = max2 =
8、a0 ;for (k=1 ; kmax1) max2=max1 ; m1=m2 ;max1=ak ; m2=k ;else if (akmax2) max2=ak ; m2=k ;t = a0 , am1=a0, am1=t ;t = a1 , am2=a1, am2=t ;5设a、b、c为三角形三条边长,以下程序用于判断a、b、c能否构成三角形,若能输出YES,否则输出NO,请填(2)空使程序完整。#include void main()float a,b,c;scanf(【1 】,&a,&b,&c);if(【2 】) printf(YESn);else printf(NOn);四、编程题(
9、每题10分,2小题,共20分)1常见的钟表一般都有时针和分针,在任意时刻时针和分针都形成一定夹角;现已知当前的时刻,编程求出该时刻时针和分针的夹角(该夹角大小180);输入:当前时刻值,格式为“小时:分”,例如:11:12。2计算500800区间内素数的个数cnt,并按所求素数的值从大到小的顺序, 再计算其间隔减、加之和,即第1个素数-第2个素数+第3个素数-第4个素数+第5个素数 . 的值sum。(素数为只能被1和自己整除的数,也称为质数)西北工业大学考试试题(B卷)答案一、单项选择题(每题2分,15小题,共30分)评分标准:题号答案题号答案题号答案1A6C11C2D7D12D3C8B13A
10、4A9B14B5D10C15D阅卷说明:错画叉(),对画钩(),合计本题得分并记录在得分栏上二、填空题(每空1分,20空,共20分)评分标准:题号答案备注1函数2字母或下划线仅有字母、下划线算错33241.0/2.0*(a*x+(a+x)/(4*a)可能还有其他写法(需判断)5 8 264.04算对7函数函数调用8x0&y0|x0&z0|y0&z0可能还有其他写法(需判断)9gets(S1);分号不写算对,S1小写算对1071154321654321120 a2113实参变量的值 或 值实参数组的起始地址 或 地址表示“值”的说法均算对表示“地址”的说法均算对14auto自动15016243*
11、sizeof(double)算对阅卷说明:错画叉(),对画钩(),合计本题得分并记录在得分栏上三、综合题(每题6分,5小题,共30分)评分标准:题号答案17 11 14 21 22 28评分标准在相应位置上答对1个数给1分,答错1个数减1分28,17评分标准仅答对8给3分,仅答对17给3分,少写或写错逗号减1分3AABD评分标准第1、4个字母答对给3分,第2、3个字母答对给3分4char s130,s2=world 错在s1的定义上s1i=0; 错在s1的下标上return ; 错在给了返回值上评分标准每个错误2分,答对给,答错减5k=0istuk.name, stuk.age 次序错减1分评
12、分标准每个空2分,答对给,答错减阅卷说明:每个细节小分错画叉(),全错画一个叉(),全对画一个钩(),且在每个小题旁边写上该小题得分,合计本题得分并记录在得分栏上四、编程题(每题10分,2小题,共20分)1参考程序#include void main() long i;double s=1.0,n=2; for(i=1;i=10000;i+) s=s*n*n/(n-1)*(n+1); n+=2; printf(PI=%11.9lfn,s*2); 评分标准:项目评分细节分值1main函数及#include1分2变量定义1分3循环语句1分4循环语句结束条件1分5S计算式2分6n值增量计算1分7PI
13、结果表达式s*21分8printf输出2分阅卷说明:每个细节错画叉(),对画钩(),半对画半钩(),叉和钩的总数应为8个,且在该题右上角写上该题得分。四、编程题 2.参考程序#include #define N 5void sort(int a);void main()int aN,i; for(i=0;iN;i+) scanf(%d,&ai); sort(a); for(i=0;iN;i+) printf(%d ,ai);void sort(int a) int i,j,p,t; for(i=0;iN-1;i+) p=i; for(j=i+1;jap)p=j; t=ai; ai=ap; ap=t; 评分标准:项目评分细节分值1main函数及变量定义1分2主函数输入2分(循环1分、scanf输入1分)3主函数调用1分4主函数输出2分(循环1分、printf输出1分)5sort函数及变量定义1分6排序2分7大到小1分阅卷说明:每个细节错画叉(),对画钩(),半对画半钩(),叉和钩的总数应为7个,且在该题右上角写上该题得分。
限制150内