C语言试卷第四套.
2024年6月青少年软件编程C语言等级考试试卷四级真题

2024年6月青少年软件编程C语言等级考试试卷四级真题分数:100 题数:41.人以群分(25分)。
社交网络中我们给每个人定义了一个“活跃度”,现希望根据这个指标把人群分为两大类,即外向型(outgoing,即活跃度高的)和内向型(introverted,即活跃度低的)。
要求两类人群的规模尽可能接近,而他们的总活跃度差距尽可能拉开。
输入:第一行给出一个正整数N(2≤N≤105)。
随后一行给出N个正整数,分别是每个人的活跃度,其间以空格分隔。
题目保证这些数字以及它们的和都不会超过231。
输出:按下列格式输出:,其中N1是外向型人的个数;N2是内向型人的个数;N3是两群人总活跃度之差的绝对值。
2.那就别担心了(25分)。
下图转自“英式没品笑话百科”的新浪微博——所以无论有没有遇到难题,其实都不用担心。
博主将这种逻辑推演称为“逻辑自洽”,即从某个命题出发的所有推理路径都会将结论引导到同一个最终命题(开玩笑的,千万别以为这是真正的逻辑自洽的定义……)。
现给定一个更为复杂的逻辑推理图,本题就请你检查从一个给定命题到另一个命题的推理是否是“逻辑自洽”的,以及存在多少种不同的推理路径。
例如上图,从“你遇到难题了吗?”到“那就别担心了”就是一种“逻辑自洽”的推理,一共有3条不同的推理路径。
输入:首先在一行中给出两个正整数N(1<N≤500)和M,分别为命题个数和推理个数。
这里我们假设命题从1到N编号。
接下来M行,每行给出一对命题之间的推理关系,即两个命题的编号S1 S2,表示可以从S1推出S2。
题目保证任意两命题之间只存在最多一种推理关系,且任一命题不能循环自证(即从该命题出发推出该命题自己)。
最后一行给出待检验的两个命题的编号A B。
输出:在一行中首先输出从A到B有多少种不同的推理路径,然后输出Yes如果推理是“逻辑自洽”的,或No如果不是。
题目保证输出数据不超过109。
3.凑零钱(25分)。
韩梅梅喜欢满宇宙到处逛街。
C语言程序设计试题4

C语言程序设计试题试卷类别 B 适用专业、年级、班2014级理科1.下列叙述错误的是()A) C程序中的每条语句都用一个分号作为结束符B) C程序中的每条命令都用一个分号作为结束符C) C程序中的变量必须先定义,后使用D) C语言以小写字母作为基本书写形式,并且C语言要区分字母的大小写2.以下有4组用户标识符,其中合法的一组是()A) For B) 4d C) f2_G3 D) WORD-sub DO IF voidCase Size abc define3.若变量已正确定义并赋值,以下符合C语言语法的表达式是()A)a:=b+1B)a=b=c+2C)int 18.5%3D)a=a+7=c+b4.以下选项中不正确的实型常量是()A)1.607E-1 B)0.7204e C)-77.77 D)234e-25.设x,y和z是int 型变量,且x=3,y=4,z=5,则下面表达式中值为0的是()A)'x' &&'y' B)x<=y C)x || y+z&&y-z D)!((x<y)&&!z|| 1)6.逻辑运算符两侧运算对象的数据类型()A)只能是0或1 B)只能是0或非0正数C)只能是整型或字符型数据D)可以是任何类型的数据7.下列不正确的字符串赋值或赋初值方式为()A)char s[10] = "hello!"; B)char s[10] = {'h','e','l','l','o','!'};C)char s[10]; s = "hello!"; D)char s[] = "hello!";8.在下列叙述中,正确的一条是()A)语句"int *pt;"中的*pt是指针变量名B)语句"int *p=a;"等价于"int *p;p=&a[0];"(a是整型数组)C)运算符*和&都是取变量地址的运算符D)已知指针变量p指向变量a,则a和*p值相同,都是变量a的值9.为表示关系x >= y >= z, 应使用的C语言表达式为()A)(x >= y) && (y >= z) B)(x >= y) AND (y >= z)C)(x >= y >= z) D)(x >= y) & (y >= z)10. for(int x=0,y=0;!x&&y<=5;y++)语句执行循环的次数是()A)0 B)5 C)6 D)无次数11.以下程序的运行结果是()#include<stdio.h>void main(void){ int m = 5;if (m++ > 5){ printf("%d\n",m); }else{ printf("%d\n", m--);}}A)4 B)5 C)6 D)712.在C语言中,引用数组元素时,其数组下标的数据类型允许是()A)整型变量B)浮点数C)整型常量D)任何类型的表达式13.已有定义:int k = 2; int *p1, *p2;且p1和p2均已指向变量k,下面不能正确执行的赋值语句是( ) BA)k = *p1 + *p2; B)p2 = k; C)p1 = p2; D)k = *p1 * (*p2);14.以下程序中调用scanf函数给变量a输入数值的方法是错误的,其错误原因是()void main(void){ int *p, *q, a, b;p = &a;printf("input a :");scanf("%d", *p);…….. }A)*p表示的是指针变量p的地址;B)*p表示的是变量a的值,而不是变量a的地址C)*p表示的是指针变量p的值D)*p只能用来说明p是一个指针变量15.fopen()函数的mode取值r 和w 时,它们之间的差别是()A)r 可向文件输入,w 不可向文件输入B)r 不可向文件输入,w 可向文件输入C)r 不可由文件输出,w 可由文件输出D)文件不存在时,r 建立新文件,w 出错16.已有定义:char a[]="xyz",b[]={'x','y','z'};,以下叙述中正确的是()A)数组a和b的长度相同 B)a数组长度小于b数组长度C)a数组长度大于b数组长度D)上述说法都不对17.以下关于while()循环说法正确的是()A)while()中的括号里面只能填表达式B)while(1) {}会造成死循环C)while()括号里面只有填1才会造成死循环D)while(nA > 1)当满足条件nA > 1时跳出循环18.若有语句:CHAR *LINE[5];以下叙述中正确的是()A)定义LINE是一个数组,每个数组元素是一个基类型为CHAR的指针变量B)定义LINE是一个指针变量,该变量可以指向一个长度为5的字符型数组C)定义LINE是一个指针数组,语句中的*号称为间址运算符D)定义LINE是一个指向字符型函数的指针19.以下函数声明正确的是()A) void Test(int nA = 10,int nB);B) void Test(int,int);C) void Test(int nA,int nA);D)以上全错20.定义一个二维数组nArr[3][4],则对其元素正确引用的是()A)nArr[2][4] B)nArr[1,3] C)nArr[1+1][0] D)nArr(0)(4)二、填空(每小题2分,共2×10=20分)1.设(k=a=5,b=3,a*b),则表达式的值为()2.按内存排列顺序, 数组char a[2]中的所有元素是a[1]和()3. 求字符串长度的库函数是(),只写函数名即可4. 设a=3,b=4,c=5,则表达式!(a+b)+c-1&&b+c/2的值为()5. 已知i=5, 写出语句a=(i>5)?0:1; 执行后整型变量a 的值是()6. 若 char w,int x,float y,double z;则表达式w*x+z-y 的结果为( )类型.7. 执行语句char s[3]="ab",*p;p=3;*(p+2)的值是( )8. C 语言中一个函数由函数首部和( )两部分组成.9. 将函数funl 的入口地址赋给指针变量p 的语句是( ) 10. C 语言中,数组名是一个不可变的( )量,不能对它进行加减和赋值运算. 三、判断题(每小题1分,共1×10=10分)1.预处理命令的前面必须加一个“#”号( )2.标准格式输入函数scanf()可以从键盘上接收不同数据类型的数据项( )3.continue 不是结束本次循环,而是终止整个循环的执行( )4.在对数组全部元素赋初值时,不可以省略行数,但能省略列数( )5.函数的实参传递到形参有两种方式值传递和地址传递( )6共用体变量可以作结构体的成员,结构体变量也可以作共用体的成员( )7.浮点型常量的指数表示中,e 是可以省略的( )8.在switch 语句中,每一个的case 常量表达式的值可以相同( ) 9.do-while 循环的while 后的分号可以省略( ) 10.int (*p)[4]它表示p 是一个指针数组,它包含4个指针变量元素( )四、完善程序题(每空3分,共3×6=18分)1. 下面程序的功能是将一个字符串str 的内容颠倒过来,请填空。
c语言试卷第四套

若x,i,j,k 都是int型变量,则计算x=(i=4,j=16,k=i+32)后,x的值为:(D).A.52B.16C.4D.36整型变量x=1,y=3,经下列计算后,x的值不等于6的是(D)。
A.x=y*4/2B.x=9-(--y)-(--y)C.x=(x=1+2,x*2)D.x=y<2?6:5以下程序的输出结果为(A)。
main(){int i=010,j=10;printf("%d,%d\n",++i,j--);}A.9,10B.10,9C.010,9D.11,10如下说法不正确的是(D).A.若b为假a为真,则 a||b为真B.若b为真a为假,则 a||b为真C.若b为真a为真,则 b&&!a为假D.若b为假,则!b+1为假下列(C)表达式的值为真,其中a=5;b=8;c=10;d=0A.(a*2-c)||dB.a*2>8+2C.a-b<c*dD.a&&d以下能计算1×2×3×┈×10的程序段是(C).A.do{ i=1;s=1;s=s*i;i++;}while(i>=10) ;B.do{ i=1;s=1;s=s*i;i++;}while(i<=10) ;C.i=1;s=1;do {s=s*i; i++; }while(i<=10) ;D.i=1;s=1; do { s=s*i; i++;}while(i>=10) ;以下正确的描述是(A).A.continue语句用来终止本次循环,继续下一次循环。
B.switch语句中不能出现continue语句C.在循环中break语句不能独立出现D.goto语句只能用于退出多层循环下面各语句中,能正确进行赋字符串操作的语句是(B).A.char s1[5][ ]={"ABCDE"};B.char s2[6]={'A','B','C','D','E'};C.char st[ ][ ]={"ABCDE"};D.char s[5]={'A','B','C','D','E'};下述对C语言字符数组的描述中,错误的是(C).A.不可以用关系运算符对字符数组中的字符串进行比较.B.字符数组中的字符串可以整体输入、输出.C.可以通过赋值运算符"="对字符数组整体赋值.D.字符数组中可以存放字符串.若有说明 int a[3][4];则对a数组元素的正确引用是(C)。
第四套测试题

第四套测试题1.在c语言中,一维数组的定义方式为:类型说明符:数组名(d)。
a、 [constant expression]B.[integer expression]C.[integer constant]或[integer expression]D.[integer constant]2以下选项中正确的语句组是(D)。
a.chars[8];s={\b.char*s;s={\c.chars[8];s=\d.char*s;s=\3.以下能对一维数组a 进行正确初始化的语句是(c)a、 inta[10]=(0,0,0,0)b.inta[10]={};c.inta[]={0};d.inta[10]={10*1};4.若有说明:int*p,m=5,n;以下正确的程序段是(d)。
a.p=&n;scanf(\b.p=&n;scanf(\c.scanf(\d.p=&n;*p=m;5.在C语言中,当引用数组元素时,其数组下标的数据类型允许为(C)。
a.整型常量b.整型表达式c.整型常量或整型表达式d.任何类型的表达式6.经过下列的语句intj,a[10],*p;定义后,下列语句中合法的是(a)。
a.p=p+2;b.p=a[5];c.p=a[2]+2;d.p=&(j+2);7.对于基本类型相同的两个指针变量,不能执行的操作为(c)。
a、 <b.=c.+d-8.inta[10];给数组a的所有元素分别赋值为1、2、3、……的语句是(b)。
a.for(i=1;i<11;i++)a[i]=i;b.for(i=1;i<11;i++)a[i-1]=i;c.for(i=1;i<11;i++)a[i+1]=i;d.for(i=1;i<11;i++)a[0]=1;9.设有数组定义:chararray[]=\则数组array所占的空间为(c)。
a.4个字节b.5个字节c.6个字节d.7个字节10.若已定义x为int类型变量,下列语句中说明指针变量p的正确语句是(c)。
C语言第四套

判断题第1题-1.0分#include”stdio.h"是每个程序中必须写的。
N第2题-1.0分在C程序中,语句之间必须要用分号";"分隔Y第3题-1.0分在一个C程序中,main函数必须出现在所有函数之前.N第4题- 1.0分若x为float型变量,则以下语句x=213.82631;printf("%-4.2f\n",x);的输出为213.82.N第5题- 1.0分一个变量可以同时被定义为多种类型.N第6题- 1.0分#define和printf都不是C语句,Y第7题-1.0分[3,6,18,23]是合法的表达式N第8题-1.0分表达式(j=3, j++)的值是4.N第9题-1.0分执行表达式(int)i后,的类型一定变为整型.N第10题-1.0分若a是实型变量,在执行了a= 5;后,a将变为整型变量.N第11题-1.0分若a和b类型相同,,在执行了赋值语句a= b;后b中的值将放入a中b中的值不变,Y第12题- 1.0分若a是实型变量C程序中允许以下赋值a= 10;因此实型变量中允许存放整型数据,N第13题- 1.0分int i=3,j=5; f(>j);j+ +; else i++;是正确的。
N第14题- 1.0分若有int i =10, j=0;则执行完语句if(j=0) i ++;elsei--;i的值为11. N第15题-1.0分if语句后面的控制表达式只能使用关系表达式或逻辑表达式,N第16题-1.0分int a=1,b=2,c=3;if(a>c)b=a;a=c;c= b;则c的值为2. Y第17题-1.0分若有int i=10, j=0;则执行完语句if(j=0)i+ +; else i--; i的值为11. N第18题-1.0分循环较套中,内外层循环控制变最可以使用相同名,不会造成混乱。
N第19题-1.0分for(i=0,k=-1;k=1;k+ +,i++ )printf("*\n");循环结束的条件不合法. N第20题-1.0分数组定义int a[10];占内存10个字节. N第21题- 1.0分数组说明int a[3,3]={1,2.3.4.5 .6}.是正确的. N第22题- 1.0分在调用函数时,实参把值传送给对应位置上的形参形参的值也能传给实参,N第23题-1.0分C语言中函数调用的方式只有函数做表达式一种. N第24题-1.0分在程序中定义了一个结构体类型后,可以多次用它来定义具有该类型的变量. Y第25题- 1.0分在C语言中,此定义和语句是合法的:enum aa { a=5,b,g}bb;bb=(enum aa)5; Y选择题第1题- 1.0分(共25题,共25.0分)求平方根函数的函数名为(D).(B)abs(C)pow(D)sqrt第2题- 1.0分(共25题,共25.0分)有以下定义和语句:struct student{ int age; int num; };struct student stu[3]={{1001,20};{1002,19},{1003,21}};void main(){ struct student *p;p=stu;则不正确的引用是( D) 。
vc4

C语言上机考试题(第四套)
1.编写函数fun,它的功能是:求n以内(不包括n)同时能被3与7整除的所有自然数之和的平方根s,并作为函数值返回。
例如若n为1000时,函数值应为:s = 153.909064。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数 fun的
花括号中填入你编写的若干语句。
试题程序:
#include <conio.h>
#include <math.h>
#include <stdio.h>
double fun( int n)
{
}
main() /*主函数 */
{ clrscr();
printf(″s=%f\n″, fun (1000) );
}
2.编程求出两个非零正整数的最大公约数.
3.请编写程序:根据以下公式求π(要求满足精度0.0005)的近似值:
π/2=1+1/3+(1*2)/(3*5)+(1*2*3)/(3*5*7)+……+(1*2*3*4*……
*n)/(3*5*7*……*(2n+1))
注意:第1题程序文件名请命名为prog1.cpp,第2题程序文件名请命名为prog2.cpp,第3题程序文件名请命名为prog3.cpp,对工程文件命名无要求。
文件请保持在d:\自己学号目录下面,比如学号为0701010101的学生,那么他交卷的时候在D:\0701010101目录下面,应该有prog1.cpp、prog2.cpp、prog3.cpp以及试卷文件,如果考试的时候,你把文件保存在其他目录,请把他们复制到你的考试目录下面,否者不能正确上传考试内容,工程文件可以不用上传。
青岛科技大学c语言期末考试题(第四套)

第四套试题一、选择题(20个小题,每小题2分,共40分):1、以下不正确的C语言标识符是____。
A.ABC B.abc C.a_bc D.ab.c2、设a,b和c都是int型变量,且a=3,b=4,c=5,则下面的表达式中,值为0的表达式是____。
A.‘a’&&‘b’ B.a<=b C.a||b+c&&b-c D.!((a<b)&&!c||1) 3、若有以下定义和语句:char c1=‘b’,c2=‘e’;printf(“%d,%c\n”,c2-c1,c2-‘a’+‘A’);则输出结果是____。
A.2,M B.3,EC.2,e D.输入项与对应的格式控制不一致,输出结果不确定4、当运行以下程序时,在键盘上从第一列开始输入9876543210<CR>(此处<CR>代表Enter),则程序的输出结果是____。
main( ){ int a;float b,c;scanf(“%2d%3f%4f”,&a,&b,&c);printf(“\na=%d,b=%f,c=%f\n”,a,b,c);}A.a=98,b=765,c=4321 B.a=10,b=432,c=8765C.a=98,b=765.000000,c=4321.000000D.a=98,b=765.0,c=4321.05、设有如下函数定义:int f(char *s){ char *p=s;while(*p!=‘\0’) p++;return (p-s);}如果在主程序中用下面的语句调用上述函数,则输出结果为____。
printf(“%d\n”,f(“goodbye!”));A.3 B.6 C.8 D.06、以下程序的输出结果是____。
main( ){ int w=4,x=3,y=2,z=1;pr intf(“%d\n”,(w<x?w:z<y?z:x));}A.1 B.2 C.3 D.47、以下程序段的输出结果是____。
C语言》课程期末考试第四套

C语⾔》课程期末考试第四套第四套期末考试题第⼀部分选择题单项选择题(本⼤题共20⼩题,每⼩题1分,共20分)在每⼩题列出地四个选项中只有⼀个选项是符合题⽬要求地,请将正确选项前地字母填在题后地括内1. 在计算机上可以直接运⾏地程序是_____________.A. ⾼级语⾔程序B.汇编语⾔程序C.机器语⾔程序D. C语⾔程序2. 不属于C语⾔地是__________.A. forB. gotoC. ifD. loop3. 正确地C语⾔⾃定义标识符是__________.A. num(10)B. file_bakC. continueD. class+24. 字符串”m\x43\\\np\102q”地长度是__________.A. 7B. 9C. 15D. 165. 设 int x=8, y, z; 执⾏y=z=x++; x=y==z后,变量x地值是__________.A. 0B. 1C. 8D. 96. 对于输⼊语句scanf(“%f,%f”, &a, &b); 要使变量a、b地值分别为1.78和2.48,则正确地输⼊是__________.A. 1.78, 2.48 后跟回车B. 1.78 2.48 后跟回车C. 1.782.48 后跟回车D. 1.78;2.48 后跟回车7. 设int a=8, b=7, c=6, x=1; 执⾏语句if(a>6) if(b>7) if(c>8) x=2; else x=3;后x地值是__________.A. 0B. 1C. 2D. 38. 执⾏下列程序段x=9;while(x>7) { printf(“*”); x--; }后输出地结果是__________.A. ****B. ***C. **D. *9. 定义⼀个具有10个元素地整数型数组,应当使⽤语句__________.A. int a[10];B. int a[2,5];C. int a[];D. int *a[10];10. 设char str1[10]=”ABCDE”, str2[10]=”xyz”;则执⾏语句printf(“%d”, strlen(strcpy(str1, str2)));后地输出结果是__________.A. 9B. 8C. 5D. 311. 设int x[]={1,3,5,7,9,11,13}, *p=x;则不能正确引⽤数组元素地表达式是__________.A. *(p--)B. *(--p)C. *(p++)D. *(++p)12. 设int x[]={1,2,3,4}, y, *p=&x[1];则执⾏语句 y=(*--p)++; 后变量y地值为__________.B. 2C. 3D.413. 函数调⽤时,下列说法中不正确地是__________.A. 若⽤值传递⽅式,则形式参数不予分配内存B. 实际参数和形式参数可以同名C. 主调函数和被调⽤函数可以不在同⼀个⽂件中D. 函数间传递数据可以使⽤全局变量14. 执⾏下列程序int fun(int x1, int x2){ int x; x1>x2 ? (x=3) : (x=4); return (x+x1); }main(){ printf(“%d\n”, fun(7,8)); }后输出地结果.A. 9B. 10C. 11D. 1215. 设typedef union {long x[2]; short y[4][5]; char z[10];} TYPE1;TYPE1 u1;则printf(“%d\n”, sizeof(u1)); 地输出是__________.A. 8B. 10C. 40D. 5816. 下列数据类型中不属于构造类型地是__________.A. 数组型B. 结构型C. 共⽤型D. 枚举型17. 存储整型数据-7856时,在⼆进制⽂件和⽂本⽂件中占⽤地字节数分别是__________.A. 2,2B. 2,5C. 5,518. 以只写⽅式打开⼀个⼆进制⽂件,应该选择地使⽤⽅式是__________.A. “a+”B. “w+”C. “rb”D. “wb”19. 计算平⽅数时不可能引起⼆义性地宏定义是A. #define SQR(x) x*xB. #define SQR(x) (x)*(x)C. #define SQR(x) (x*x)D. #define SQR(x) ((x)*(x))20. 执⾏下列程序#define M(a,b) (a)>(b) ? (a):(b)main(){ int i=10, j=15; printf(“%d\n”, 10*m(i,j)); }后输出地结果是__________.A. 10B. 15C. 100D. 150第⼆部分⾮选择题⼆、填空题(本⼤题共10⼩题,每⼩题2分,共20分)21. 以下分别是算术、位、关系和逻辑运算符+ & < !其优先级最低地是__________.22. 设int x=4; 表达式x+=x*=x+1地值是__________.23. 设int a, b=10;执⾏a=b<<2+1; 后a 地值是__________.24. 设short k=-1; 执⾏printf(“%o”,k); 输出为__________.25. 设int j,k; 执⾏for(j=k=0; j-11; k+=j++);后k 地值是__________.26. 函数调⽤时,若形、实参数均为数组,则其传递⽅式是__________.27. 在C 语⾔中,__________类型变量地所有成员以覆盖⽅式共享存储单元.28. 设FILE *fp; 关闭fp ⽂件地操作语句是__________.29. 设float *p, m=2.718; 根据下列图⽰,建⽴指针变量p 和变量m 之间地关系地赋值语句是__________.30. 设 int a[3][4], *p=a[1]; 该指针变量p 指向地元素是__________.三、程序分析题(本⼤题共5⼩题,每⼩题5分,共25分)阅读下列程序,将输出结果写到各题右侧地空⽩处31. int a=200;main(){ int i;for(i=1; i<=5; i++) {a++; printf(“%d,”, a); s();}}void s(){ static int a=20;a++; printf(“%d \n”, a);}32. #include “stdio.h”main(){ char c;c=getchar();if(c>=’a’ && c<=’w’ || c>=’A’ && c<=’W’) c=c+3;else if(c>=’x’ && c<=’z’ || c>=’X’ && c<=’Z’) c=c -23; printf(“%c \n”, c);}设从键盘上输⼊Next33. #define N 7main(){ int i, j, temp, a[N]={1, 2, 3, 4, 5, 6, 7};for(i=0; imj=N-1-i;temp=a[i]; a[i]=a[j]; a[j]=temp;}for(i=0; i}34. struct porb{ char *name; int count;} x[]={“Li ning”, 19, “Lang ping”, 21, “Zhu jian hua”, 20}; main(){ int i;for(i=0; i<3; i++)printf(“%s: %d \n”, x[i].name, x[i].count);}35. main(){ union {short a; char ch;} M;M.a=100; M.ch=’A’;printf(“%d,%d,%c \n”, sizeof(M), M.a, M.ch);}四、程序填充题(本⼤题共3⼩题,每⼩题6分,共18分)阅读下列程序,将横线处缺少地部分补上,使其能正确运⾏.36. 下⾯数pi()地功能是根据下列公式求π值(直到最后⼀上于10-6为⽌).(9)473523173523152313112++??+?++=π double pi(){ double s=0.0, t=1.0; int n;for(__________; t>=__________; n++) {s+=t; t=n*t/(2*n+1);}return(2.0*__________);}37. 将⼀字符串中地⼩写英⽂字母改成⼤写.main(){ int i=0; char str[80];scanf(“%s”, str);while(__________) {if(__________) str[i]-=’a’-‘A’;__________;}printf(“%s \n”, str);}38. 使⽤结构型计算复数x 和y 地和.main(){ struct comp {float re, im;};__________ x,y,z;scanf(“%f%f%f%f”, &x.re, &x.im, &y.re, &y.im);z.re=__________; z.im=__________;printf(“%6.2f, %6.2f\n”, z.re, z.im);}五、程序设计题(本⼤题共3⼩题,第39⼩题5分,第40、41⼩题各6分,共17分)39. 编写⼀程序,输出如下图形.* * * * ** * * * ** * * * ** * * * *40. 编写⼀程序,从键盘输⼊10个实数,计算输出算术平均值.41. 编写⼀个模拟简单计算器地程序,计算表达式:a1 op a2地值,要求a1、op、a2从键盘输⼊.其中a1、a2(作除数时不能为0)为数值,op为运算符+、-、*、/.版权申明本⽂部分内容,包括⽂字、图⽚、以及设计等在⽹上搜集整理.版权为个⼈所有This article includes some parts, including text, pictures, and design. Copyright is personal ownership.⽂档来源⽹络及个⼈整理,勿⽤作商业⽤途⽤户可将本⽂地内容或服务⽤于个⼈学习、研究或欣赏,以及其他⾮商业性或⾮盈利性⽤途,但同时应遵守著作权法及其他相关法律地规定,不得侵犯本⽹站及相关权利⼈地合法权利.除此以外,将本⽂任何内容或服务⽤于其他⽤途时,须征得本⼈及相关权利⼈地书⾯许可,并⽀付报酬.⽂档来源⽹络及个⼈整理,勿⽤作商业⽤途Users may use the contents or services of this article for personal study, research or appreciation, and othernon-commercial or non-profit purposes, but at the same time, they shall abide by the provisions of copyright law and other relevant laws, and shall not infringe upon the legitimate rights of this website and its relevant obligees. In addition, when any content or service of this article is used for other purposes, written permission and remuneration shall be obtained from the person concerned and the relevant obligee.⽂档来源⽹络及个⼈整理,勿⽤作商业⽤途转载或引⽤本⽂内容必须是以新闻性或资料性公共免费信息为使⽤⽬地地合理、善意引⽤,不得对本⽂内容原意进⾏曲解、修改,并⾃负版权等法律责任.⽂档来源⽹络及个⼈整理,勿⽤作商业⽤途Reproduction or quotation of the content of this article must be reasonable and good-faith citation for the use of news or informative public free information. It shall not misinterpret or modify the original intention of the content of this article, and shall bear legal liability such as copyright.⽂档来源⽹络及个⼈整理,勿⽤作商业⽤途本⽂部分内容,包括⽂字、图⽚、以及设计等在⽹上搜集整理.版权为个⼈所有This article includes some parts, including text, pictures, and design. Copyright is personal ownership.⽂档来源⽹络及个⼈整理,勿⽤作商业⽤途⽤户可将本⽂地内容或服务⽤于个⼈学习、研究或欣赏,以及其他⾮商业性或⾮盈利性⽤途,但同时应遵守著作权法及其他相关法律地规定,不得侵犯本⽹站及相关权利⼈地合法权利.除此以外,将本⽂任何内容或服务⽤于其他⽤途时,须征得本⼈及相关权利⼈地书⾯许可,并⽀付报酬.⽂档来源⽹络及个⼈整理,勿⽤作商业⽤途Users may use the contents or services of this article for personal study, research or appreciation, and othernon-commercial or non-profit purposes, but at the same time, they shall abide by the provisions of copyright law and other relevant laws, and shall not infringe upon the legitimate rights of this website and its relevant obligees. In addition, when any content or service of this article is used for other purposes, written permission and remuneration shall be obtained from the person concerned and the relevant obligee.⽂档来源⽹络及个⼈整理,勿⽤作商业⽤途转载或引⽤本⽂内容必须是以新闻性或资料性公共免费信息为使⽤⽬地地合理、善意引⽤,不得对本⽂内容原意进⾏曲解、修改,并⾃负版权等法律责任.⽂档来源⽹络及个⼈整理,勿⽤作商业⽤途Reproduction or quotation of the content of this article must be reasonable and good-faith citation for the use of news or informative public free information. It shall not misinterpret or modify the original intention of the content of this article, and shall bear legal liability such as copyright.⽂档来源⽹络及个⼈整理。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
B.3*a*e/b/c
C.3*a*e/b*c
D.a*e/c/b*e
5.已知字母A的ASCII码为+进制数65,且c2为字符型,则执行语句c2='A'+'6'-'3';后,c2中的值为()。
A. D
B.68
C.不确定的值
D.C
6.c语言中的标识符只能由字母、数字和下划线三种字符组成,且第一个字符()。
2.函数都是由__和____两部分组成
3.一个C语言程序,总是从____函数开始执行
4.___是由大括号括起来的一组(也可以是1条)语句。
5.在c语言中的实型变量分为两种类型,它们是____和____。
6.c语言中的标识符只能由三种字符组成,它们是__、___、____。
7.若a是int型变量,且a的初值为6,则执行表达式a+=a-=a*a后a的值为___。
10.若有定义int m=5,y=2;,则执行表达式y+=y-m*=y后的y值是_____。
11.若有定义:int b=7;float a=2.5,c=4.7;则表达式a+(int)(b/3*(int)(a+c)/2)%4的值为__。
12.当a=5,b=4,c=2时,表达式a>b!=c的值是__。
C.赋值运算符<迟辑与运算符<关系运算符<算术运算符
D.算术运算符<关系运算符<赋值运算符<逻辑与运算符
11.下列运算符中优先级最高的是()。
A.<
B.+
C.&&
D.!=
12.已知x=43,ch='A',y=0;则表达式(x>=y&&ch<'B'&&!y)的值是()。
A.0
B.语法错
C.1
D."假"
A、|12345.67800|B、|12345.6780|C、|12345.67800|D、|12345.678|
17.若a为int类型,且a=125,执行下列语句后的输出是()。
printf(“%d,%o,%x\n”,a,a+1,a+2);
A、25, 175, 7DB、125, 176, 7FC、125, 176, 7DD、125, 175, 2F
20.若执行以下程序时从键盘上输入3□4,则输出结果是()(□表示空格)。
main()
{int a,b,s;
scanf(“%d%d”,&a,&b);
s=a;
if (a<b) s=b;
s*=s;
printf(“%d\n”,s);
}
A、14B、16C、18D、20
二、填空题(15×2)
1.一个c源程序中至少应包括一个___。
A.7
B.8
C.9
D.10
9.设有说明:char w;int x,float y;double z;则表达式w*x+z-y值的数据类型为()。
A.float
B.char
C.int
D.double
10.以下关于运算符优先顺序的描述中正确的是()。
A.关系运算符<算术运算符<赋值运算符<逻辑与运算符
B.逻辑与运算符<关系运算符<算术运算符<赋值运算符
C语言试题(8)
一、选择题(20×2)
1.以下叙述正确的是()。
A.在c程序中,main函数必须位于程序的最前面
B.c程序的每行中只能写一条语句
C.c语言本身没有输入输出语句
D.在对一个c程序进行编译的过程中,可发现注释中的拼写错误
2.c语言规定:在一个源程序中,main函数的位置()。
A.必须在最开始
18.if语句的控制条件()。
A、只能用关系表达式B、只能用关系表达式或逻辑表达式
C、只能用逻辑表达式D、可以用任何表达式
19.执行下列程序段后,x、y和z的值分别是()。
int x=10,y=20,z=30;
if (x<y) z=x,x=y,y=z;
A、10,20,30B、20,30,30C、20,30,10D、20,30,20
A.必须为字母
B.必须为下划线
C.必须为字母或下划线
D.可以是字母、数字和下划线中任-种字符
7.若有说明语句:char c='72';则变量c()。
A.包含1个字符
B.2个字符
C.包含3个字符
D.说明不合法,cቤተ መጻሕፍቲ ባይዱ值不确定
8.若以下变量均是整型,且num=sum=7;则执行表达式sum=num++, sum++,++num后sum的值为()。
13.以下不正确的if语句形式是()。
A.if(x>y&&x!=y)
B.if(x==y)x+=y;
C.if(x!=y)
scanf("%d",&x)
else
scanf("%d",&y);
D.if(x<y){x++;y++;}
14.以下程序的输出结果是()。
main()
{
printf("\n*s1=%15s*","chinabeijing");
B.必须在系统调用的库函数的后面
C.可以任意
D.必须在最后
3.以下正确的叙述是()。
A.在c程序中,每行中只能写一条语句
B.若a是实型变量,c程序中允许赋值a=b,因此实型变量中允许存放整型数
C.在c程序中,无论是整数还是实数,都能被准确无误地表示
D.在c程序中,%是只能用于整数运算的运算符
4.若有代数式3ae/bc,则不正确的c语言表达式是()。
A.scanf("%d%lx,%le",&x,&y,&z);
B.scanf("%2d*%d%lf",&x,&y,&z);
C.scanf("%x%*d%o",&x,&y);
D.scanf("%x%o%6.2f",&x,&y,&z);
16.执行语句:printf(“|%10.5f| \n”,12345.678);的输出是()。
8.若有定义int a=2,b=3,float x=3.5,y=2.5;则表达式(float)(a+b)/2+(int)x%(int)y的值为_ _。
9.若有定义:int e=1,f=4,g=2;float m=10.5,n=4.0,k;
则执行赋值表达式k=(e+f)/8+sqrt((double)n)*1.2/g+m后k的值是____。
printf("\n*s2=%-5s*","chi");
}
A.
*s1=chinabeijing*
s2= * * chi *
B.
*s1=chinabeijing *
*s2=chi *
C.
s1=chinabeijing *
*s2=chi *
D.
*s1=chinabeijing *
*s2=chi *
15.若x,y均定义为int型,z定义为double型,以下是非法的scanf函数调用语句是()。