c语言试卷和答案4
C语言试卷4
C语言模拟考试学号:4 姓名:童蕊蕊得分:1 ..................................................................单项选择以下叙述正确的是()。
A.用do-while语句构成的循环,在while后的表达式为非零时结束循环.B.do-while语句构成的循环不能用其它语句构成的循环来代替.C.用do-while语句构成的循环,在while后的表达式为零时结束循环D.do-while语句构成的循环只能用break语句退出.【评分报告得分:1.0 之 1.0 】【参考答案】正确C【学生答案】C假设所有变量均为整型,则表达式(a=2,b=5,b++,a+b)的值是()。
A.2B.6C.8D.7【评分报告得分:0.0 之 1.0 】【参考答案】错误C【学生答案】[未答此题]以下选项中合法的实型常数是()。
A.E-3B..2E0C.1.3ED.5E2.0【评分报告得分:0.0 之 1.0 】【参考答案】错误B【学生答案】[未答此题]下面错误的说明语句是( ).A.int *a[10];B.int (*a)[10];C.int a['a'];D.int a[ ][ ];【评分报告得分:0.0 之 1.0 】【参考答案】错误D【学生答案】[未答此题]打开文件时,方式"w"决定了对文件进行的操作是()。
A.追加写盘B.只写盘C.可读可写盘D.只读盘【评分报告得分:0.0 之 1.0 】【参考答案】错误B【学生答案】[未答此题]能将高级语言编写的源程序转换为目标程序的是()。
A.编译程序B.链接程序C.解释程序D.编辑程序【评分报告得分:0.0 之 1.0 】【参考答案】错误A【学生答案】[未答此题]下面程序段运行的结果是( ).x=-1;do{x=x*x;}while (!x);A.循环执行一次B.有语法错误C.死循环D.循环执行两次【评分报告得分:0.0 之 1.0 】【参考答案】错误A【学生答案】[未答此题]若有以下的定义:int t[3][2];能正确表示t数组元素地址的表达式是()。
《C语言程序设计》试卷4
《C语言程序设计》试卷四一、单项选择题(每小题1分,共35分)1、一个C程序的执行是从()。
A)本程序的main函数开始,到main函数结束B)本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C)本程序的main函数开始,到本程序文件的最后一个函数结束D)本程序文件的第一个函数开始,到本程序main函数结束2、下面四个选项中,合法的用户标识符是()A)P_#$ B)2ha C)goto D)_ab3、要把整数67523赋与整型变量I,则应说明I的类型是()A)int B)long C)short D)unsigned4、已知int I; float f; 正确的表达式是()A) (int f)%I B) int(f)%I C) int (f%I) D) (int)f%I5、判断char型变量c1是否为小写字母的正确表达式是()A)'a'<=c1<='z'B)(c1>=a) && (c1<=z)C)98<=c1&&123>=c1 D)c1>='a'&& c1<='z'6、在C语言中,字符型数据在内存中以何种形式存放?()A)原码 B)BCD码 C)ASCII码D)补码7、执行以下语句后b的值为()。
int a = 5 , b = 6 , w = 1 , x =2 , y = 3 , z = 4 ;( a = w > x ) && ( b = y > z ) ;A)6 B)0 C)1 D)48、以下能正确地定义整型变量a,b和c并为其赋初值5的语句是()。
A)int a=b=c=5; B)int a,b,c=5; C)int a=5,b=5,c=5; D)a=b=c=5;9、已知:char a; int b; float c; double d; 执行语句c=a+b+c+d;后,变量c的数据类型是()A) int B) char C) float D) double10、已知字母A的ASCII码为65,以下程序段的输出结果是()char c1=‟A‟,c2=‟Y‟;printf(″%d,%d″,c1,c2);A)65,90 B)A,Y C)65,89 D)输出格式不合法11、阅读以下程序,当输入数据的形式为:25,13,10<CR>,正确的输出结果为()。
(完整版)C语言试卷及答案
(完整版)C语言试卷及答案一、选择题(每题2分,共40分)1、C语言源程序的基本单位是( )A.程序行B.语句C.函数D.字符2、C语言规定:在一个源程序中,main函数的位置()。
A.必须在最开始B.必须在系统调用的库函数的后面C.可以任意D.必须在最后3、在下列字符列中,合法的标识符是( )A.p12&.aB.stud_100C. water$12D.88sum4、在C语言中,要求运算的数必须是整数的运算符是()A./B.!C.%D.= =5、设有语句 int a =3;则执行了语句a + = a - = a*a;后,变量a 的值是()A、3B、0C、9D、-126、设a=5,b=6,c=7,d=8,m=2,n=2,执行(m=a > b)&&(n=c>d)后n的值为()A、1B、2C、3D、47、执行下列程序时输入:1234567,程序的运行结果是()main(){int x,y;scanf(“%2d%*2c%1d”,&x,&y);printf(“%d\n”,x+y);}A.17B.46C.15D.98、下述程序的输出结果是() #includevoid main(){int x=-1,y=4;int k;k=++x<=0&&!(y--<=0);printf("%d,%d,%d",k,x,y);}A.0,0,3B.0,1,2,C.1,0,3,D.1,1,29、为了避免嵌套的if-else语句的二义性,C语言规定else总是与()组成配对关系。
A.缩排位置相同的ifB.在其之前未配对的ifC.在其之前未配对的最近的ifD.同一行上的if10、两次运行下面的程序,如果从键盘上分别输入6和4,则输出结果是()main(){int x;scanf(“%d“,&x);if(x++>5)printf(“%d”,x);else printf(“%d\n”,x--);}A.7和5B.6和3C.7和4D.6和411、若变量c为char类型,能正确判断出c为小写字母的表达式是( )A. 'a'<=c<= 'z'B. (c>= 'a')||(c<= 'z')C. ('a'<=c)and ('z'>=c)D. (c>= 'a')&&(c<= 'z')12、已知int x=10,y=20,z=30;以下语句执行后x,y,z的值是。
国家二级C语言(数组)机试模拟试卷4(题后含答案及解析)
国家二级C语言(数组)机试模拟试卷4(题后含答案及解析)题型有:1. 选择题选择题1.若有定义:int x[10],*pt=x;,则对x数组元素的正确引用是( )。
A.pt+3B.*&x[10]C.*(pt+10)D.*(x+3)正确答案:D解析:没有A选项的引用形式。
*与&放在一起作用抵消,但x[10]下标10超出了数组下标范围,所以B选项错误。
最大只能引用到x[9],而*(pt+i)表示引用指针pt所指元素后的第i个元素,所以C选项错误,最大只能为*(pt+9)。
D 选项正确。
知识模块:数组2.有以下程序:#include<stdio.h>main( ){int i,s=0,t[]={1,2,3,4,5,6,7,8,9};for(i=0;i<9;i+=2)s+=*(t+i);printf(“%d\n”,s);}程序的运行结果是( )。
A.20B.25C.45D.36正确答案:B解析:统计1~9这9个数中的奇数和,此题考查指向数组的指针。
C语言规定数组名代表数组的首地址,也就是第一个元素的地址,因此*(t+i)代表数组的第i+1个元素。
程序的运行结果是1+3+5+7+9=25。
知识模块:数组3.有以下程序:#include<stdio.h>main( ){int s[12]={1,2,3,4,4,3,2,1,1,1,2,3},c[5]={0},i;for(i=0;i<12;i++)e[s[i]]++;for(i=1;i <5;i++)printf(“%d”,c[i]);printf(“\n”);}程序的运行结果是( )。
A.2 3 4 4B.4 3 3 2C.1 2 3 4D.1 1 2 3正确答案:B解析:在for(i=0;i<12;i++)c[s[i]]++中,数组元素s[i]的值作为数组c的下标,当退出循环时,数组c的4个元素的值分别为4、3、3、2,因此B选项正确。
知识模块:数组4.下列定义数组的语句中正确的是( )。
《C语言》试卷4
2017年下学期《C语言》期中试题(总分:100分时间:90分钟)一、单项选择题(每题4分,共80分)1、下列数据中,不属于字符型常量的是_________A. 'A'B. '\n'C. "B"D. '102'2、能将高级语言编写的源程序转换成目标程序的是_________A.编译程序B.编辑程序C. 链接程序D.解释程序3、若x和y为整型变量,对于scanf("a=%d,b=%d",&x,&y);语句,可使x和y的值分别为10和20的正确输入方法是_________。
A.10 20B.10, 20C.a=10 b=20D.a=10,b=204、下列标识符中,不合法的用户标识符为_________。
A.aBaB._11C.a_1D.a&b5、关于下面的程序,正确的说法是_________。
#include stdio.hvoid main(){ float a=b=2, result;result=a/b;printf("result=%f\n", result); }A. 程序可正常编译,结果为result=1.000000B. 共有1处语法错误C. 共有2处语法错误D. 共有3处语法错误6、若已定义char c='\010',则变量c所占的字节数为__________。
A.1B.2C.3D.47、下列整型常量,错误的是__________。
A.025B.285LC.-285uD.285lu8、以下程序运行后的输出结果是______。
#include <stdio.h>main(){ int m=12,n=34;printf("%d%d",m++,++n);printf("%d%d\n",n++,++m); }A.12353514B.12353513C.12343514D.123435139、以下程序运行后的输出结果是______。
C语言 程序设计基础试题四及答案
《程序设计基础》考试试卷四班级姓名学号一、选择题(每题1分,共20分)题号一二三四五总得分评卷人审核人得分1.以下叙述中正确的是( )A. C程序中注释部分可以出现在程序中任意合适的地方B. 花括号"{"和"}"只能作为函数体的定界符C. 构成C程序的基本单位是函数,所有函数名都可以由用户命名D. 分号是C语句之间的分隔符,不是语句的一部分2.判断下面标识符中哪个是C语言中合法的用户定义标识符()A. 2a1bB. a%bdC. _123D. char3.设有以下定义int a=0; double b=1.25; char c=’A’; #define M 2则下面语句中错误的是( )A. a--;B. b--;C. c--;D. M--;4.有两条语句:static char x[]=”abcde”;static char y[]={‘a’,’b’,’c’,’d’,’e’};则下列说法中正确的是( )A. 数组x和数组y长度相同B.数组x长度大于数组y长度C. 数组x长度小于数组y长度D. 以上三种说法均错误;5.设整型变量a=13,则经运算a+= a/=a%=5后,a的值为()A. 17.333B. 17C. 0D. 26. 已知:int n,i=1,j=2;执行语句n=i<j?i++:++j;后,i和j的值是( ).A. 1,2B. 1,3C. 2,2D. 2,37.有函数定义如下:当自变量x<0时y=-1;当x=0时y=0;当x>0时y=1;以下程序片段能实现该函数功能的是( ):A. if(x>=0)B. y=-1;C. if(x>=0)D. y=0;if(x>0) y=1; if(x!=0) if(x>0) y=1; if(x>=0) else y=-1; if(x>0) y=1 ; else y=0; if(x>0) y=1;else y= 0; else y=0; else y= -1; else y=-1;8.当a=2,b=1,c=3,d=4,m和n值为1时,(m=a>b)||(n=c>d)的值是( )A. TRUEB. FALSEC. 1D.09.在C语言程序中,以下说法正确的是( )A. main函数内部可嵌套定义子函数B. main函数必须出现在所有函数之前C. main函数必须出现在所有函数之后D. main函数是程序执行的入口10.关于局部变量和全局变量说法正确的是():A. 在main函数中定义的变量都为全局变量B. 当全局变量与局部变量同名时,全局变量起作用C. 当全局变量与局部变量同名时,局部变量起作用D. 以上说法都不正确11.下列关于switch和break语句的讨论中,只有()是正确的。
C语言程序设计考试试卷(附答案)
C语言程序设计考试试卷(附答案)C语言程序设计考试试卷(附答案)第一部分:选择题(共40题,每题2分,总分80分)1. 下列哪个关键字用于定义常量?A. constB. intC. staticD. volatile2. 在C语言中,以下哪个运算符用于将一个整数转换为浮点数?A. *B. /C. %D. +3. 下列代码的输出结果是什么?```c#include <stdio.h>void main() {int x = 2, y = 3;printf("%d", x++ * ++y);}```A. 7B. 8C. 9D. 104. C语言中,以下哪个运算符用于从一个整数中提取指定位数的值?A. <<B. >>C. |D. &5. 下列代码的输出结果是什么?```c#include <stdio.h>void main() {int arr[] = {1, 2, 3, 4, 5};int *ptr = arr + 2;printf("%d", *ptr);}```A. 1B. 2C. 3D. 4......40. 下列关于结构体的说法中,错误的是:A. 结构体可以包含不同类型的成员变量B. 结构体可以作为函数参数和返回值C. 结构体可以使用“->”来访问成员变量D. 结构体可以使用“sizeof()”函数获取其大小第二部分:填空题(共10题,每题4分,总分40分)1. 以下是有效的C语言标识符:___hello___2. 下列代码的运行结果是:___88___```c#include <stdio.h>void main() {int x = 8;printf("%d", x++);}```3. 在C语言中,以下是有效的声明:___int i, *p;___4. 下列代码的输出结果是:___10___```c#include <stdio.h>void main() {int arr[5] = {1, 2, 3, 4, 5};int *ptr = arr + 2;printf("%d", *(ptr + 2));}```5. 在C语言中,以下是合法的函数声明:___void fun(int x, float y);___......第三部分:编程题(共3题,每题20分,总分60分)1. 编写一个函数,接受一个整型数组和数组的长度作为参数,返回数组中的最大值。
c语言试卷集(10套)-试题及答案
c语言试卷集(10套)-试题及答案C语言试卷集(10套)-试题及答案试卷一一、选择题(每题2分,共20分)1. C语言中,用于表示逻辑“真”的值是()。
A. 0B. 1C. -1D. 任意非零值答案:B2. 下列哪个选项是C语言中的合法变量名?()A. 2variableB. variable2C. variable_2D. variable!答案:C3. C语言中,用于定义一个整型数组的语句是()。
A. int array[10];B. int [10] array;C. int 10 array;D. int array=10;答案:A4. 下列哪个选项是C语言中的合法字符串常量?()A. "Hello"B. 'Hello'C. "HelloD. Hello答案:A5. C语言中,用于表示逻辑“假”的值是()。
A. 0B. 1C. -1D. 任意非零值答案:A6. 下列哪个选项是C语言中的合法浮点数常量?()A. 3.14B. 314.C. .314D. 3.14E答案:A7. C语言中,用于定义一个整型变量的语句是()。
A. int x;B. var x;C. x int;D. int = x;答案:A8. 下列哪个选项是C语言中的合法字符常量?()A. 'A'B. "A"C. 'AB'D. "AB"答案:A9. C语言中,用于定义一个字符数组的语句是()。
A. char array[10];B. char [10] array;C. char 10 array;D. char array=10;答案:A10. C语言中,用于表示字符常量的是()。
A. 'A'B. "A"C. AD. "A"答案:A二、填空题(每题3分,共15分)1. C语言中,用于定义一个整型变量并初始化为0的语句是()。
2023年9月青少年软件编程C语言等级考试试卷四级真题(含答案)
2023年9月青少年软件编程C语言等级考试试卷四级(含答案)分数:100题数:4一、编程题(共4题,共100分)第1题.酒鬼Santo刚刚与房东打赌赢得了一间在New Clondike的大客厅。
今天,他来到这个大客厅欣赏他的奖品。
房东摆出了一行瓶子在酒吧上。
瓶子里都装有不同体积的酒。
令Santo高兴的是,瓶子中的酒都有不同的味道。
房东说道:“你可以喝尽可能多的酒,但是一旦打开酒盖你就必须把它喝完,喝完一瓶后把它放回原处。
还有一件最重要的事,你必须从左至右依次喝,并且不能连续超过三瓶,不然会给你带来坏运气。
”现在可怜的Santo站在酒吧前努力的想着,他到底应该喝哪几瓶才能使喝的酒最多呢?请帮助他找出他应该喝的酒瓶号,因为思考让他感到不安。
时间限制:2000内存限制:131072输入:第一行一个整数N,有N个酒瓶,N<=700接下有N行,第I+1行的数字代表酒瓶I中酒的体积。
输出:一个数字,喝的酒的最大总体积,遵守以上规则,使得三个连续瓶子中至少一个瓶子是满的。
样例输入:661013981样例输出:33参考答案:#include<bits/stdc++.h>using namespace std;int f[701][5];int main(){int n;int a[1000];cin>>n;for(int i=1;i<=n;i++){cin>>a[i];}for(int i=1;i<=n;i++){f[i][0]=f[i-1][3];int mx=f[i][0];for(int j=1;j<=2;j++){f[i][j]=f[i-1][j-1]+a[i];mx=max(mx,f[i][j]);}f[i][3]=mx;}cout<<f[n][3];}第2题.大盗阿福阿福是一名经验丰富的大盗,趁着月黑风高,阿福打算今晚洗劫一条街上的店铺。
c语言试卷及答案
C语言程序设计一、单项选择题1.以下叙述不正确的是______。
A)一个C源程序可由一个或多个函数组成B)一个C源程序一行内可以写多条语句C)C程序的基本组成单位是函数D)在C程序中,注释说明只能位于一条语句的后面2.以下正确的C语言标识符是 __ ____。
A)%x B)a+b C)a123; D)test!3.以下对’\t’描述正确的是______。
A) ’\t’是两个字符B) ’\t’是一个字符C) ’\t’是一个字符串D)以上都不是4.C语言中的简单数据类型有______。
A)整型、实型、逻辑型B) 整型、字符实型、逻辑型C)整型、实型、字符型D) 整型、实型、字符型、逻辑型5.在C语言中,数字029是一个______。
A)八进制数B)十六进制数C)十进制数D)以上都不是6.以下选项中,当为x大于的奇数时,值为0的表达式是______。
A)x%2==0 B) x%2==1 C)x/2 D) x%2!=0 7.已知char c=’d’;,则printf(“%c”,’A’+(‘e’-c));的输出结果是______。
A)a B)e C)B D)D8.已知int a=1,b=3,t; ,若要将a和b变量中的数据进行交换,则下面正确的是______。
A)a=b; b=a; B)a=t; t=b; b=a;C)t=a; a=b; b=t; D)t=a; b=t; b=a;9.已知int a=2,b; ,则执行语句b=1.0/a;后,b的值是__ ____。
A)0.5 B)0 C)1 D)210.已知int i=1,j;,则执行语句j=i++;后,j的值是______。
A)1 B)2 C)-2 D)-111.已知int x=2,y=1,z;,则执行语句z=!x && --y;后,y的值是______。
A)0 B)1 C)2 D)-112.执行以下程序段后,输出结果是______。
int x=10;x+=(x=8);printf(“%d\n”,x);A)10 B)8 C)18 D)1613.已知int b; char s[8];,则正确的输入语句是______。
C语言程序设计期末考试试题(含答案)
C语言程序设计期末考试试题及其答案一、单项选择题(本大题共20题,每题2 分,共40分)1、以下不是C语言的特点的是( )A、C语言简洁、紧凑B、能够编制出功能复杂的程序C、C语言可以直接对硬件进行操作D、C语言移植性好2、以下不正确的C语言标识符是()A、ABCB、abcC、a_bcD、ab。
c3、一个C语言程序是由()A、一个主程序和若干子程序组成B、函数组成C、若干过程组成D、若干子程序组成4、一个算法应该具有“确定性”等5个特性,对另外4个特性的描述中错误的是()A、有零个或多个输入B、有零个或多个输出C、有穷性D、可行性5、设变量a是整型,f是实型,i是双精度型,则表达式10+‘a’+i*f值的数据类型为( )A、intB、floatC、doubleD、不确定6、在C语言中,char型数据在内存中的存储形式是( )A、补码B、反码C、源码D、ASCII码7、有如下程序,输入数据:12345M678<cR>后(〈CR〉表示回车),x的值是( )。
#include〈stdio.h〉main(){int x;float y;scanf("%3d%f”,&x,&y);}A、12345B、123C、45D、3458、若有以下定义int a,b; float x,则正确的赋值语句是( )A、a=1,b=2B、b++;C、a=b=5D、b=int(x);9、以下程序的执行结果是()#include〈stdio.h〉{int i=10,j=10;printf(”%d,%d\n”,++i,j—-);}A、11,10B、9,10C、11,9D、10,910、巳知字母A的ASCII码是65,以下程序的执行结果是( )#include〈stdio。
h〉main(){char c1='A’,c2=’Y’;printf(”%d,%d\n”,c1,c2);A、A,YB、65,65C、65,90D、65,8911、下列运算符中优先级最高的是( )A、<B、十C、%D、!=12、设x、y和z是int型变量,且x=3,y=4,z=5,则下面表达式中值为0是( ).A、'x’&&’y’B、x<=yC、x||y+z&&y-zD、!((x<y)&&!z ||1)13、判断char型变量cl是否为小写字母的正确表达式为( )A、’a’<=c1<=f’z’B、(c1>=a)&&(c1<=z)C、(‘a’>=c1)(‘z’<=c1)D、(c1>='a’)&&(c1<=’z')14、字符串"a”在内存中占据的字节个数为()A、0B、 1C、 2D、 315、下面有关for循环的正确描述是( )A、for循环只能用于循环次数已经确定的情况B、for循环是先执行循环体语句,后判定表达式C、在for循环中,不能用break语句跳出循环体D、for循环体语句中,可以包含多条语句,但要用花括号括起来16、下面程序的运行结果是( )#include〈stdio。
C语言模拟试卷(4)
终止整个循环
D)在循环语句中使用break语句是为了使流程跳出循环体,提前
结束循环
22. 以下错误的描述是( )。
A)使用while和do_while循环时,循环变量初始化的操作应在循环
语句之前完成
B)while循环是先判断表达式,后执行循环体语句
c)do_while和for循环均是先执行循环体语句,后判断表达式
B) 主函数可以在其它函数之后,函数内不可以嵌套定义函数
C) 主函数必须在其它函数之前,函数内不可以嵌套定义函数
D) 主函数必须在其它函数之后,函数内可以嵌套定义函数
26. 一个c语言程序的基本组成单位是 ( )
A)主程序 B)子程序 C) 函数 D)过程
27. 一个c语言程序总是从 ( )开始执行。
3.下面程序的运行结果为 # include <stdio.h> void main( ) { int j,i,k=0; for (j=11;j<=30;j++) { if(k%10= =0) printf (“\n”); for (i=2;i<j;i++) if (!(j%i) ) break; if (i>= j-1) { printf (“%d\t”,j ); k++;} } }
二、写结果题: 1.下面程序的运行结果是:
#include <stdio.h> main( ) { int i=0,j=0;
while (i<10) i++; while (j++<10); printf (“i=%d,j=%d\n”,i,j);
} 结果:
2.阅读下面的程序并回答问题。 # include <stdio.h> main( )
C语言试卷(含答案)
C语言试卷(含答案)一、单项选择题(每小题2分,共40分)1、sizeof(float)是()A. 一个双精度型表达式B. 一个整型表达式C. 一种函数调用D. 一个不合法的表达式2、设i是int型变量,f是float型变量,用下面的语句给这两个变量输入值: scanf("i=%d,f=%f",&i,&f);为了把100和分别赋给i和f,则正确的输入为()。
A. 100B. i=100,f=765.12C. 100<回车>D. x=100y=3、#include<>voidmain(){inta=3,b=2,c=1;intx=10,y=20;if(a<b)< p="">if(b!=0)if(!x)y=1;elseif(x)y=0;y=-1;printf("%d",y);}上面的C程序的输出结果是()。
A. 20B. 1C. 0D. -14、C语言中,while和do…while循环的主要区别是()。
A. do…while的循环体至少无条件执行一次B. while的循环控制条件比do…while的循环控制条件严格C. do…while允许从外部转到循环体内D. do…while的循环体不能是复合语句5、执行下面的C程序段后,输出结果是()。
inta=5; while(a--);printf("%d",a);A. 54321B. 4321C. 0D. -16、在C语言中,()是在所有函数外部声明的。
A. 全局变量B. 局部变量C. 形参D.实参7、分析下面的C程序:#include<>voidmain(){intnum=0;while(num<=2){num++;printf("%d",num);}}输出结果是()。
A. 123B. 012C. 23D. 128、下面的C语言代码段的输出结果是()。
武汉工程大学大二计算机专业C语言程序设计考试试卷及参考答案4
武汉工程大学C语言程序设计考试试卷及参考答案4一、单项选择题(5’)1、以下哪个不是关系运算符()。
A、=B、<C、<=D、!=答案:A2、若要求在if后一对圆括号中表示a不等于0的关系,则能正确表示这一关系的表达式为()。
A、a<>0B、!aC、a=0D、a答案:D3、能正确表示a≥10或a≤0的关系表达式是()。
A、a>=10 or a<=0B、a>=10│a<=0C、a>=10││a<=0D、a>=10 ││a<=0答案:D4、a=1,b=2,c=3,d=4,下列条件表达式的值为()。
a>b?a:c>d?c:dA、1B、2C、3D、4答案:D5、下列运算符中优先级最低的是()。
A、?:B、+=C、>=D、==答案:B6、以下程序的运行结果是()。
main( ){int k=4,a=3,b=2,c=1;Printf(“\n%d\n”,k<a? k:c<b? c:a);}A、4B、3C、2D、1答案:D7、若已定义x为int类型变量,下列语句中说明指针变量p的正确语句是()。
A、int p=&x;B、int *p=x;C、int *p=&x;D、*p=*x;答案:C8、在C语言中()。
A、实参和与其对应的形参各占用独立的存储单元B、实参和与其对应的形参共占用一个存储单元C、只有当实参和与其对应的形参同名时才共占用存储单元D、形参是虚拟的,不占用存储单元答案:A9、以下对二维数组a 的正确说明是()。
A、int a[3][]B、float a(3,4)C、double a[1][4]D、float a(3)(4)答案:C10、若有以下定义,则能使值为3的表达式是()。
int k=7,x=12;A、x%=(k%=5)B、x%=(k-k%5)C、x%=k-k%5D、(x%=k)-(k%=5)答案:D11、经过以下语句定义后, 表达式z+=x>y?++x:++y 的值为()。
C语言期末考试试卷附参考答案
一、单项选择题(请将答案填在下面表格中20×1)1.以下叙述中正确的是()。
A.C语言比其他语言高级B.C语言可以不用编译就能被计算机识别执行C.C语言以接近英语国家的自然语言和数学语言作为语言的表达形式D.C语言出现的最晚,具有其他语言的一切优点2.以下叙述中正确的是()。
A.构成C程序的基本单位是函数B.可在一个函数中定义另一个函数C.main函数必须放在其他函数之前D.所有被调用的函数一定要在调用之前进行定义3.以下叙述中正确的是()。
A.C语言程序总是从第一个函数开始执行B.在C语言程序中,要调用函数必须在main()函数中定义C.C语言程序总是从main()函数开始执行D.C语言程序中的main()函数必须放在程序的开始部分4.以下有关for循环的正确描述是()。
A.for循环只能用于循环次数已经确定的情况B.for循环是先执行循环体语句,后判断表达式C.在for循环中,不能用break语句跳出循环体D.for循环的循环体语句中,可以包含多条语句,但必须用花括号括起来5.对下面程序段的描述,正确的是()。
x=-1;do{x=x*x;}while(!x);A.是死循环B.循环执行一次C.循环执行两次D.有语法错误6.以下有关C语言数组说法正确的是()。
A.数组元素的数据类型可以不一致B.数组元素的个数可以不确定,允许随机变动C.可以使用动态内存分配技术,定义元素个数可变的数组D.定义一个数组后,就确定了它所容纳的具有相同数据类型元素的个数7.以下数组定义正确的是()。
A.inta(20);B.inta[]={1,2,5,7,0};C.inta[n];D.inta[2]={1,2,4,6};8.在定义intb[2][10];之后,对b数组元素引用正确的是()。
A.b[0][9]B.b[2,3]C.b(1)(5)D.b[10][0]9.如有定义语句intc[]={1,5,3,4,6,7,0};,则数组c有()个元素。
国家二级C语言(C语言程序设计)机试模拟试卷4(题后含答案及解析)
国家二级C语言(C语言程序设计)机试模拟试卷4(题后含答案及解析)题型有:1. 选择题选择题1.以下能正确定义且赋初值的语句是A.int n1=n2=10:B.char c=32;C.float f+1.1:D.double x=12.3E2.5;正确答案:B解析:本题主要考查变量的定义和赋值,C语言中变量的定义形式为:类型说明符变量名=初始值:选项A)中。
n1和n2只能单独赋初值;选项B)正确,定义了一个字符变量c,初值为32;选项C错误,初值设置自身不能参与运算;选项D)中字母E后面的指数必须是整数。
知识模块:C语言程序设计2.以下选项中,合法的是A.char name[10];name=“char”;B.char strl[5]=”pass”,str2[6];str2=str1;C.char str3[]:{‘d’,’e’,’b’,’u’,’g’,’\0’};D.char str4;str4:”hello world”;正确答案:C解析:本题考查字符数组。
选项A)定义了一个字符数组name,接下来直接给name赋值字符串是错误的;选项B)定义了两个字符串数组str1和str2.str1和str2表示两个字符串的首地址,直接把str1赋值给str2错误;选项C)是正确的;选项D)定义了一个字符变量str4,给字符变量赋值字符串是错误的。
知识模块:C语言程序设计3.有以下程序段int k=0,a=1,b=2,c=3;k:a<b?b:a;k=k>c?c:k;执行程序段后,k的值是A.3B.2C.1D.0正确答案:B解析:本题主要考查条件表达式。
k=a<b?b:a中a<b为真,因此k的值为b,即k=2。
k=k>c?c:k中k>c为假,k的值为2,知识模块:C语言程序设计4.有如下程序段:int x=12;double y=3.141593;printf(“%d%8.6f”,x,y);其输出结果是A.123.141593B.12,3.141593C.123.1415930D.123.141593正确答案:D解析:本题考查printf语句。
C语言期末考试试卷附参考答案
一、单项选择题(请将答案填在下面表格中20×1)1. 以下叙述中正确的是()。
A. C语言比其他语言高级B. C语言可以不用编译就能被计算机识别执行C. C语言以接近英语国家的自然语言和数学语言作为语言的表达形式D. C语言出现的最晚,具有其他语言的一切优点2. 以下叙述中正确的是()。
A.构成C程序的基本单位是函数B.可在一个函数中定义另一个函数C. main函数必须放在其他函数之前D.所有被调用的函数一定要在调用之前进行定义3. 以下叙述中正确的是()。
A. C语言程序总是从第一个函数开始执行B.在C语言程序中,要调用函数必须在main()函数中定义C. C语言程序总是从main()函数开始执行D. C语言程序中的main()函数必须放在程序的开始部分4. 以下有关for循环的正确描述是()。
A. for循环只能用于循环次数已经确定的情况B. for循环是先执行循环体语句,后判断表达式C.在for循环中,不能用break语句跳出循环体D. for循环的循环体语句中,可以包含多条语句,但必须用花括号括起来5. 对下面程序段的描述,正确的是()。
x=-1;do{x=x*x;}while(!x);A.是死循环B. 循环执行一次C. 循环执行两次D. 有语法错误6. 以下有关C语言数组说法正确的是()。
A.数组元素的数据类型可以不一致B.数组元素的个数可以不确定,允许随机变动C.可以使用动态内存分配技术,定义元素个数可变的数组D.定义一个数组后,就确定了它所容纳的具有相同数据类型元素的个数7.以下数组定义正确的是()。
A. int a(20);B. int a[ ]={1,2,5,7,0};C. int a[n];D. int a[2]={1,2,4,6};8.在定义int b[2][10];之后,对b数组元素引用正确的是( )。
A. b[0][9]B. b[2,3]C. b(1)(5)D. b[10] [0]9. 如有定义语句int c[ ]={1,5,3,4,6,7,0};,则数组c有()个元素。
完整版C语言试卷及答案
完整版C语言试卷及答案一、选择题部分(每题1分,共30分)1. 下列选项中,不是C语言基本数据类型的是:A. intB. doubleC. charD. boolean2. 在C语言中,以下哪个用于定义常量的关键字?A. constB. staticC. finalD. define3. 下面哪个选项是正确的C语言注释格式?A. /** 注释内容 */B. // 注释内容C. /* 注释内容 */D. # 注释内容4. 下列选项中,不是C语言的逻辑运算符的是:A. &&B. ||C. !D. %5. 在C语言中,以下哪个函数用于输出信息到屏幕上?A. scanf()B. printf()C. gets()D. puts()二、填空题部分(每题2分,共20分)1. 在C语言中,用于声明变量的关键字是_________。
2. 在C语言中,用于取一个整数的绝对值的函数是_________。
3. 下面这段代码的输出结果是_________。
```c#include <stdio.h>int main(){int a = 10;int b = 20;printf("%d + %d = %d\n", a, b, a + b);return 0;}```4. 在C语言中,用于按位取反的运算符是_________。
5. 下面这段代码的循环次数是_________。
```c#include <stdio.h>int main(){int i;for (i = 0; i < 5; i++){printf("%d ", i);}return 0;}```三、编程题部分(共50分)1. 编写一个程序,输入一个整数n(n>0),输出1到n之间的所有偶数。
2. 设计一个函数,接收两个整数参数a和b,返回它们的最大公约数。
3. 编写一个程序,实现斐波那契数列的前n项的求和。
C语言程序设计试卷含答案
C语言程序设计试卷含答案一、选择题(共20题,每题2分,共40分。
下面每题后面用小括号内标注了正确答案)1. 下列关键字中,用于定义变量的是(A)A. intB. ifC. whileD. for2. 变量的作用域是指变量的(C)A. 大小B. 类型C. 可访问范围D. 值3. 下列语句中,用于输出字符的是(B)A. scanfB. printfC. inputD. output4. 已知整型变量a和b,那么a += b; 等价于(D)A. a = a + b;B. a -= b;C. a = a - b;D. a = a + b;5. 在C语言中,用于表示“不等于”的运算符是(C)A. =B. ==C. !=D. >=6. 下面哪个for循环语句是正确的(A)A. for(int i=0; i<10; i++)B. for(int i<10; i++)C. for(int i=0; i<10)D. for(i=0; i<10; i++)7. 下列选项中,表示“或”运算符的是(D)A. &B. &&C. |D. ||8. 在C语言中,用于声明宏定义的关键字是(B)A. defineB. #defineC. constD. int9. 如果要判断一个整数是否为负数,正确的if条件语句是(C)A. if(n > 0)B. if(n => 0)C. if(n < 0)D. if(n <= 0)10. 下列哪个不是C语言的基本数据类型(D)A. intB. floatC. charD. string11. 下列关键字中,用于定义函数的是(C)A. mainB. includeC. voidD. for12. 在C语言中,表示“或者”的条件语句是(B)A. ifB. else ifC. switchD. while13. C语言中的“++”运算符表示(A)A. 自增B. 自减C. 相加D. 相减14. 下列哪个语句用于在C语言中声明字符类型的变量(C)A. String name;B. var name;C. char name;D. character name;15. 下列哪个不是C语言的关键字(D)A. enumB. longC. doubleD. true16. 在C语言中,用于跳出当前循环并继续执行下一次循环的关键字是(D)A. exitB. breakC. endD. continue17. 下列哪个函数用于从标准输入读取一个整数(A)A. scanfB. printfC. getsD. puts18. 在C语言中,用于声明一个指针变量的关键字是(A)A. int*B. pointC. newD. pointer19. 下列哪个运算符用于获取变量在内存中的地址(B)A. &B. *C. #D. %20. 下列哪个函数调用可以输出字符串(A)A. printf("Hello World!");B. scanf("Hello World!");C. gets("Hello World!");D. puts("Hello World!");二、填空题(共5题,每题4分,共20分。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
for(i=1; i<=n; i++){
(26)
s+=t;}
(27) ;
}
2.运行时输入1个文本文件的文件名(不超过45个字符),删除该文件中的所有空格符。。
#include <stdio.h>
#include <stdlib.h>
(3) 若表达式sizeof(int)的值为4,则int类型数据可以表示的最大整数为231-1。
(4) 在所有的关系运算符(>=、> 、= =、 !=、 <=、 <)中,优先级最低的运算符是“= =、!=”。
(5) 标准输入函数scanf的返回值为所输入数据的个数或EOF。
A) fp=fopen(“c:\\xy.txt”, “a”);
B) fp=fopen(“c:\\xy.txt”, “r”);
C) fp=fopen(“c:\\xy.txt”, “wb”);
D)fp=fopen(“c:\xy.txt”, “r”);
Hale Waihona Puke 三、 程序填空题(每题2分,共20分)
for( (32) ) {
scanf(“%s”, s[i].name);
s[i].v=0;
for(j=0;j<3; j++)
{ scanf(“%d”, &s[i].a[j]);
(33) ;
}
}
for(i=0;i<n-1;i++)
C) *(a[1]+2) D)* (* (a+2))+1
( (22)执行语句“a=b=3; printf(“%d,%d\n”, a<<2,b>>2);”后的输出结果是 。
A)12,0 B)12,3 C)false,true D)true,false
(12)计算变量x(x大于1)整数部分位数的表达式,可以写作 。
A)(int)log10(x) B)log10(x)
C)log10(x)+1 D)(int)log10(x)
(13)判断变量x、y中有且只有1个值为0的表达式为 。
void main()
{
struct node {
int x;
node *next;
}*p1, * p2=NULL;
int a[5]={7,6,-5,28,1}, i, j, s;
for(i=0; i<5; i++)
(31) ;
void main()
{struct strudent{
char name[9];
int a[3];
float v;} temp, *s;
int i, j, k;
scanf(“%d”, &n);
s=(student*) malloc(n*sizeof(student));
二、 单选题(每题2分,共28分)
(11 (11)执行语句“k=x++ && y++ || z++;”(各变量当前值均为1)后,变量k、x、y、z值依次为 。
A)1、2、2、1 B)1、2、2、2
C)0、2、2、1 D)0、2、2、2
}
四、程序阅读题(每题5分,共15分)
1.程序1
#include “stdio.h”
#include “string.h”
void main()
{char c, *a=”Office”;
int i;
for(i=0; i<strlen(a)/2; i++) {
int f(int m)
{ static int i=0; int s=0;
for( ; i<=m; i++) s+=i; return s;
}
A)21 B)16 C)15 D)8
(20)下列语句定义x为指向int类型变量a的指针,其中哪一个是正确 。
exit(0);
}
f2=fopen(temp.dat”,”w”);
while(((ch=(char)fgetc(f1)!EOF)
if(ch!= ‘ ‘) (29) ;
fclose(f1); fclose(f2);
模拟测试5
模拟考试试卷五
一、 判断题(每题1分,共10分)
(1) 在C源程序中将语句 “if(x= =5) y++;”误写作 “if(x=5) y++;”,将导致编译错误。
(2) C的double类型数据可以精确表示任何实数。
A)25、9 B)25、11 C)36、11 D)36、9
(15)执行语句“for(float x=0,s=0; x!=60; x=x+0.3) s=s+x;”后,变量x的值为 。
A)不可能大于60 B)不可能大于60.3
{ if (k= =0 || k= =1) return 1;
else return f(k-1)+f(k-2);
}
A)3 B)8 C)5 D)13
(19)函数定于如下,执行语句“sum=f(5)+f(3);”后,sum的值应为 。
(6) 若x的当前值为5,执行语句“if(x=3) x=x+5;”后,x的值依然是5。
(7) 执行循环语句“for( i=1; i<10; i=i+2) s+=i;”后,i的当前值为11。
(8) a是一维数组名,数组元素a[1]还可以写作“*(a++)”。
( (23)若a是32为int类型变量,判断起32个2进位中末两位均为1的表达式为 。
A) a & 3= =3 B)a &3= =11
C) a & 11= =3 D)a &11= =11
(24)以“只读“方式打开文本文件c:\xy.text,下列语句正确的是 。
{ k=i;
for( (34) )
if(s[j].v>s[k].v) k=j;
temp=s[i]; s[i]=s[k]; s[k]=temp;
}
for(i=0; i<n;i++)
printf(“%s,%d,%d,%d,%f\n”,s[i].name,s[i].a[0],s[i].a[1],s[i].a[2],s[i].v);
c=*a;
strcpy(a,a+1);
a[strlen(a)]=c;
a[strlen(a)+1]=’\0’;
puts(a);
}
}
2.程序2
#include <stdio.h>
void main()
{ float a[4][3]={{3,2,5},{-3,2,1},{4,3,2},{5,1,3}};
A)!(x*y) && x+y B)(x*y) && x+y
C)x*y= =0 D)x= =0 && y!=0
(14)执行语句“for(s=0,k=1; s<20 || k<10; k=k+2) s+=k;”后s、k的值为 。
int i, j;
float v;
for(i=0; i<4; i++)
{ v=a[i][0];
for(j=1;j<3;j++)
v+=a[i][j];
v/=3;
for(j=0;j<3;j++)
a[i][j]-=v;
(30) ;
rename(“temp.dat”, filename);
}
3.下列程序运行时,输入n个学生的姓名和3门功课成绩,然后根据3门功课的平均成绩从高分到低分显示每个学生的姓名、3门功课成绩以及平均成绩。
#include <stdio.h>
C)一定小于60 D)可能远大于60
(16)声明语句为“char a[10]”,执行下列语句后的输出结构为 。
printf((“%d,%d\n”,sizeof(a),strlen(strcppy(a, “Windows”)));
A)7,7 B)7,8 C)10,7 D)10,8
{
s=0;
for(j=1;j<=a[i]/2; j++)
if (a[i]%j= =0) s+=j;
if(a[i]!=s)
{ p1=(node *)malloc(sizeof(node));
p1->x=a[i];
1.输入x、n后输出下列算式的值。
x-x2/2!+x3/3!-x4/4!+ … +(-1)n-1 xn/n!
#include <stdio.h>
void main()
{ float s,t,x;
int i, n;
scanf(“%f%d”, &x, &n);
(25) ;
}
for(i=0; i<4; i++)
{ for(j=0;j<3;j++)
printf(“%6.1f,”, a[i][j]);
printf(“\b\n”);