c语言模拟试卷A

合集下载

c语言模拟考试试题及答案

c语言模拟考试试题及答案

c语言模拟考试试题及答案C语言模拟考试试题及答案一、选择题(每题2分,共20分)1. 在C语言中,以下哪个是合法的变量名?A. 2variableB. variable-nameC. variable_nameD. variable#name答案:B2. 下列哪个选项是C语言中的关键字?A. charB. variableC. ifD. string答案:C3. C语言中,哪个运算符用于计算两个数的乘积?A. +B. -C. *D. /答案:C4. 在C语言中,以下哪个语句用于定义一个整型变量?A. int var;B. float var;C. double var;D. char var;答案:A5. 下列哪个选项是C语言中的控制结构?A. switch-caseB. if-elseC. for-loopD. All of the above答案:D6. 在C语言中,哪个函数用于计算两个数的和?A. pow()B. sqrt()C. sum()D. None of the above答案:D(注:C语言标准库中没有sum()函数)7. 以下哪个选项是C语言中数组的正确声明方式?A. int array[10] = {1, 2, 3};B. int [10] array = {1, 2, 3};C. Both A and BD. None of the above答案:C8. 在C语言中,哪个函数用于将整数转换为字符串?A. itoa()B. atoi()C. printf()D. sprintf()答案:A9. 下列哪个选项是C语言中正确的函数定义?A. int function(int a, int b) { ... }B. int function(int a; int b) { ... }C. int function(int a, int b) { ... }D. int function(int a, b) { ... }答案:C10. 在C语言中,哪个关键字用于定义一个函数?A. functionB. defC. methodD. void答案:D二、填空题(每空2分,共20分)11. 在C语言中,使用____关键字可以定义一个函数。

《C语言程序设计基础》--试卷A及参考答案

《C语言程序设计基础》--试卷A及参考答案

《C语言程序设计基础》--试卷A及参考答案《c语言程序设计基础》试卷 (A卷)考试时间:90分钟闭卷任课老师:班级:学号:成绩:(每小题2分,共30分)、由C++源文件编译生成的目标文件的缺省)A、cppB、exeC、obj 、lik、下列中,不是C++合法的标识符()A、2mnB、m123C、kk 、a_1、C++中,基本数据类型不包括()、int B、float C、char 、class、x和y均为bool量,则x| |y为真的条件)、它们均为真 B、其中一个为真 C、《C语言程序设计基础》第 2 页共 6 页它们均为假 D、其中一个为假5、C++中,一个字符型数据在内存中占()字节。

A、4B、2C、1D、86、字符串常量”hello”的长度是()A、5B、6C、7D、87、以下语句,int i=2,j=2,m,n;m=i++;n=++j;则m,n,i,j的值分别为()A、2,3,2,2B、2,3,3,3C、2,2,3,3 D、3,3,2,28、假定a为一个整型数组名,则元素a[4]的字节地址为()A、a+4B、a+8C、a+16D、a+329、 x>0 || y==5的相反表达式为()。

A、 x<=0 || y!=5B、 x<=0 && y!=5C、 x>0 || y!=5D、 x>0 && y==5《C语言程序设计基础》第 3 页共 6 页10、在下面的函数声明中,存在着语法错误的是()A、void BC(int a , int)B、void BD(int , int)C、void BE(int , int=5)D、int BF(int x ; int y)11、循环体至少被执行一次的语句为()。

A、for循环B、while循环C、do循环 D、任一种循环12、已知一函数中有下列变量定义,其中属于静态变量的是()A、int a=5;B、staticdouble b;C、register char c;D、auto shortd;13、do语句能够改写为()语句。

C语言程序设计模拟试题A(附答案)

C语言程序设计模拟试题A(附答案)

《C语言程序设计》模拟试卷A一、单项选择题(每题2分,共20分)1、下列有关C语言的叙述中错误的是()。

A) C语句必须以分号结束B) 任何一个C程序中有且只有一个主函数C) 复合语句在语法上可被看作一条语句D) C程序中对数据的任何操作都可由运算符实现2、以下不能定义为用户标识符的是()。

A) MAIN B) _HJ C) 2ong D) LINE13、以下能正确定义一维数组的是()。

A) int a[5]={0,1,2,3,4,5}; B) int a[5]=”012345”;C) char a[ ]=”012345”; D) char a[5]={0,1,2,3,4,5};4、执行下列程序段后输出的结果是()。

x = 9;while (x > 7){ printf(“*”); x- -; }A) **** B) *** C) ** D) *5、设char str1[10] = “ABCDE”, str2[10] = “xyz”;则执行语句printf(“%d”, strlen(strcpy(str1, str2))); 后的输出结果是()A) 9 B) 8 C) 5 D) 36、若用数组名作为函数调用的实参,则传递给形参的是()A) 数组的首地址 B) 数组第一个元素的值C) 数组中全部元素的值 D) 数组元素的个数7、在C程序中,若未在函数定义时说明函数类型,则函数默认的类型为()A)void B)double C)int D)char8、下面不能正确进行字符串赋值操作的语句是( )A) char s[5]={"ABCD"}; B) char s[5]; s="ABCD";C) char *s;s="ABCDEF"; D) char *s="ABCD";9、设有说明int s[5]={1,3,5,7,9}; int *p=s; 则下列表达式中值为3的是 ( )A)++p B)++(*p) C) *(++p) D) *(p+=2)10、下面程序的输出结果是()int m=13;int fun( int x, int y){ int m=3;return( x*y-m); }main( ){ int a=7,b=5;printf(“%d\n”, fun(a,b)/m); }A) 1 B) 2 C) 3 D) 10二、填空题。

C语言模拟题

C语言模拟题

C语言模拟试题(一)一、选择题1、以下字符中不是转义字符的是( A )。

A、 '\c'B、 '\b'C、 '\\'D、 '\a'2、设 a=12,且 a定义为整型变量。

执行语句a+=a-=a*=a;后 a的值为( A)。

A、 0B、 144C、 132D、 123、已定义 float x=,y=;依照下面的输出结果,正确的输出语句是(C ).y+x=,y-x=A、 printf("y+x=%6.2f,y-x=%6.2f\n",y+x,y-x);B、 printf("y+x=%f,y-x=%f\n",y+x,y-x);,lC、 printf("y+x=%.2f,y-x=%.2f\n",y+x,y-x);D、 printf("y+x=%5.2f,y=%5.2f\n",y+x,y-x);4、执行下面程序段后 ,b的值为 (A ).int s=35;char t='A'; int b;b=((s&&4)&&(t<'a'));A、 1B、 3C、 2D、 05 k是整型 ,则以下程序段的执行结果是:(B )k=-3;if(k<=0) printf("####")else printf("&&&&");A、 ####B、有语法错误,无结果C、 &&&&D、 ####&&&&6设 j和 k都是 int 种类,则下面的 for 循环语句( D)。

for(j=0,k=0;j<=9&&k!=876;j++) scanf("%d",&k);A、最多执行 9次B、是无量循环C、循环体一次也不执行D、最多执行 10 次7 以下正确的描述是(A ).A、只幸亏循环体内和switch 语句内使用 break 语句B、 continue 语句的作用是停止整个循环的执行C、从多层嵌套的外层循环中退出时,只能使用 goto 语句D、在循环体内使用break和 continue 语句的作用相同8 以下能对一维数组a进行正确初始化的语句是(B)。

C语言程序设计A模拟考核试题及解答

C语言程序设计A模拟考核试题及解答

C 语言程序设计A 》模拟考核试题及解答一、选择题1.由C 语言源程序文件编译而成的目标文件的缺省扩展名为( ) 。

A. cppB. exeC. objD. C2. C 语言程序的基本模块为( )。

A. 表达式B. 标识符C. 语句D. 函数3.x>0 || y==5 的相反表达式为( )。

A. x<=0 || y!=5B. x<=0 && y!=5C. x>0 || y!=5D. x>0 && y==54.枚举类型中的每个枚举常量的值都是一个( )。

A. 整数B. 浮点数C. 字符D. 逻辑值5.循环语句“ for(int i=0; i<n; i++) S; ”中循环体S 被执行的次数为( )A. 1B. n-1C. nD. n+16.在下面的while 循环语句中,其循环体被执行的次数为( )。

int i=0,s=0; while(s<20) {i++; s+=i;}A. 4B. 5C. 6D. 77.若定义了函数double *function(), 则返回值类型为( )。

A. 实数型B. 实数指针型C. 函数指针型D. 数组型8.若用数组名作为函数调用的实参,传递给形参的是( )。

A. 数组的首地址B. 数组中第一个元素的值C. 数组中全部元素的值D. 数组元素的个数9. 假定a 为一个整型数组名,则元素a[4] 的地址比该数组的首地址大( ) 个字节。

A. 4B. 8C. 16D. 3210. 下列给字符数组赋初值时,正确的是( )。

A. char s1[]="abcdef";B. char s2[4]="abcd";C. char s3[2][3]={"abc","xyz"};D. char s4[4][]={'a','x','s','t'};A. char *p=s;B. char *p=&s;C. char *p;p=*s;D. char *p; p=&s;11.要使p 指向二维整型数组a[10][20] ,p 应定义为()。

c语言模拟考试题及答案

c语言模拟考试题及答案

c语言模拟考试题及答案一、选择题(每题2分,共20分)1. 下列哪个选项是C语言中的合法标识符?A. 2variableB. variable2C. variable-2D. variable$2答案:B2. C语言中,哪个关键字用于声明一个变量?A. defineB. varC. letD. int答案:D3. 下列哪个选项是C语言中的整型常量?A. 0x1AB. 1.23C. 1e2D. "123"答案:A4. 在C语言中,哪个函数用于计算字符串的长度?A. strlen()B. length()C. size()D. lengthof()5. 下列哪个选项是C语言中的逻辑运算符?A. &&B. ||C. !D. A和B答案:D6. C语言中,哪个关键字用于声明一个函数?A. functionB. defC. defineD. void答案:D7. 在C语言中,哪个函数用于将字符串复制到另一个字符串?A. strcpy()B. copy()C. duplicate()D. copystr()答案:A8. 下列哪个选项是C语言中的浮点型常量?A. 3.14B. 3.14e2C. 3.14E2D. A和C答案:D9. 在C语言中,哪个关键字用于声明一个数组?B. listC. tableD. int[]答案:D10. 下列哪个选项是C语言中的位运算符?A. &B. |C. ^D. A和B答案:D二、填空题(每题2分,共20分)1. 在C语言中,使用________关键字可以定义一个宏。

答案:#define2. C语言中,使用________函数可以将一个浮点数转换为字符串。

答案:sprintf3. 在C语言中,使用________关键字可以跳过当前循环的剩余部分,继续下一次循环。

答案:continue4. C语言中,使用________关键字可以立即退出循环。

高级语言程序设计(C语言)A试卷与答案

高级语言程序设计(C语言)A试卷与答案

《高级语言程序设计(C语言)》A试卷和参考答案一、选择题(每题2分,25题,共50分)下列各题A、B、C、D四个答案中,只有一个选项是正确的,请将每题的正确答案写在答题纸对应序号的横线上,答在试卷上不能得分1、对于C语言的函数,下列叙述中正确的是(1)A、函数的定义不能嵌套,但函数调用可以嵌套B、函数的定义和调用都有不能嵌套C、函数的定义和调用都能嵌套D、函数的定义能嵌套,但函数调用不能嵌套2、以下程序的输出结果是( 2 )。

main(){int x=1,a=2, b=3;switch(x){ case 0: b=b+a;break;case 1: a=b+a;case 2: ++a;++b;}printf("a=%d,b=%d\n",a,b);}A、a=6,b=4B、a=5,b=3C、a=6,b=3D、a=5,b=43、以下程序的输出结果是( 3 )。

main(){int a=1,c;c=7/2||++a;printf("%d,%d ",a,c);}A、1,1B、0,1C、1,3D、2,34、若:char s[30][30];则数组元素的非法引用是(4)。

A、s[20][9]B、s[29+1][2*3]C、s[3][29]D、s[9][30-1]5、有以下定义语句:int a[10]={3, 9, 11, 14, 20, 32, 60}, *p;p=a;则++(*++p) 的值是(5)A、9B、11C、22D、106、下列可以正确表示字符型常数的是( 6 )A、"a"B、"\010"C、'\n'D、h7、若定义语句float bb[100],则该数组array元素的上、下限为( 7 ) 。

A、0,99B、99,0C、100,1D、0,1008、下列各组字符序列中,可用作C语言程序标识符的是(8)。

A、SBSDB、_1$234C、spr#itD、4_cf_1在9、已知:char ch='t';则下列表达式的值是( 9 )ch = (ch>='a'&&ch<='z') ? (ch-32) : ch;A、TB、AC、ZD、t10、以下程序段的输出结果是( 10 ) 。

c语言试卷A卷及答案

c语言试卷A卷及答案

考试课程: 班级: 学号: 姓名: 注:学生 不 得 在 草 稿 纸上 答 题,答 题 不 得 超 出 框 体。

………………………………………………装…………………………订…………………………线………………………………………………考试课程:班级:学号:姓名:……………………………………装…………………………订…………………………线………………………………………………default:printf(“#”);break;}default:printf(“&”);运行结果:} printf (“\n”);}3.#include <stdio.h>main(){ int i;for (i=1;i<=5;i++)switch (i%5){ case 0:printf(“*”);break;case 1:printf(“#”);break;default:printf(“\n”);case 2:printf (“&”);运行结果:}}4.main(){ int i,b,k=0;for (i=1;i<=5;i++){b=i%2;while (b——>=0)k++;} 运行结果:printf (“%d,%d”,k,b);}5.#include <stdio.h>main(){ char ch[7]={“12ab56”};int i,s=0;for (i=0;ch[i]>=…0‟&&ch[i]<=…9‟;i+=2)s=s*10+ch[i]-…0‟;运行结果:printf (“%d\n”,s);}6. main(){ int a=2,i;for (i=0;i<3;i++)printf (“%4d”,f(a));}f(int a){ int b=0;static int c=3;b++;c++;运行结果:return(a+b+c);}四、编写程序(20分)1.从键盘输入的10个整数中,找出第一个能被7整除的数。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《C语言程序设计》模拟试卷A (闭卷考试)一、选择题(每题2分,共20分)1、以下不正确的C语言标识符是。

A. ABCB. abcC. a_bcD. ab.c2、设有说明:char w; int x; float y; double z;则表达式w*x+z-y值的数据类型为:。

A. floatB. charC. intD. double3、根据下述定义,可以输出字符’A’的语句是。

struct person{ char name[11];struct{ char name[11];int age;}other[10];};struct person man[10]={{ "Jone",{"Paul",20}},{"Paul",{"Mary",18}},{"Mary",{"Adam",23}},{"Adam",{"Jone",23}}};A. printf("%c",man[2].other[0].name[0]);B. printf("%c",other[0].name[0]);C. printf("%c",man[2].(*other[0]));D. printf("%c",man[3].name);4、以下说法中正确的是:。

A. C语言程序总是从第一个定义的函数开始执行B. 在C语言程序中,要调用的函数必须放在main()函数中定义C. C语言程序总是从main()函数开始执行D. C语言程序中的main()函数必须放在程序的开始部分5、在定义int a[10];之后,对a的引用正确的是。

A. a[10]B. a[6.3]C. a(6)D. a[10-10]6、以下不能正确赋值的是。

A. char s1[10];s1="test";B. char s2[]={’t’,’e’,’s’,’t’}C. char s3[20]= "test";D. char s4[4]={ ’t’,’e’,’s’,’t’}7、设i和x都是int类型,则for循环语句。

for(i=0,x=0;i<=9&&x!=876;i++) scanf("%d",&x);A. 最多执行10次B. 最多执行9次C. 是无限循环D. 循环体一次也不执行8、C语言中表示“在使用x之前,先使x的值加1”的正确方式是。

A. ++xB. x++C. +xD. +x+9、设有说明int (*ptr)[M]; 其中ptr是。

A. M个指向整型变量的指针B. 指向M个整型变量的函数指针C. 一个指向具有M个整型元素的一维数组的指针D. 具有M个指针元素的一维指针数组,每个元素都只能指向整型量10、在下面关于指针的说法中,错误的一条是。

A. 变量的指针就是变量的地址B. 可以将一个整型量或任何其他非地址类型的数据赋给一个指针变量C. 一个指针变量只能指向同一类型的变量D. 指针变量中只能存放地址(指针)二、读程序写结果(每题3分,共21分)1、以下程序运行后输出的结果是:#include <stdio.h>void main(){ int i,j,m,n;i=8;j=10;m=++i;n=j++;printf("%d,%d,%d,%d\n",i,j,m,n);}2、若输入B,以下程序的输出结果是:void main(){ char grade;scanf("%c",&grade);switch(grade){ case 'A': printf(">=85");case 'B':case 'C': printf(">=60");case 'D': printf("<60");default: printf("error");}}3、以下程序的输出结果是:void ast(int x,int y,int *cp,int *dp){ *cp=x+y; *dp=x-y; }main(){ int a,b,c,d;a=6; b=3;ast(a,b,&c,&d);printf("%d,%d\n",c,d);}4、以下程序的输出结果是:main(){ int a[2][3]={1,3,5,7,9,11};int m,*ptr;ptr=&a[0][0];m=(*ptr)*(*(ptr+2))*(*(ptr+4));printf("%d\n",m);}5、以下程序的输出结果是:main(){ int i,j;for(i=0;i<5;i++){ for(j=0;j<5;j++)if(i==j || i+j==4)printf("*");elseprintf("+");printf("\n");}}6、以下程序的输出结果是:main(){ int k=4,m=1,p;p=func(k,m); printf("%d,",p);p=func(k,m); printf("%d\n",p); }int func(int a,int b){ static int m=0;int i=1;i+=m+1; m=i+a+b;return m;}7、以下程序的输出结果是:main(){ char s[]="china",*p;for(p=s+1;p<s+4;p++)printf("%s\n",p);}三、程序填空(每空2分,共20分)1、将一个数组中的元素按逆序重新存放。

例如原来的顺序为:8,6,5,4,1, 要求改为:1,4,5,6,8。

#define N 7main(){ int a[N]={12,9,16,5,7,2,1},k,s;printf("\n 初始数组:\n");for (k=0;k<N;k++)printf("%4d",a[k]); for (k=0;k< (1) ;k++) { s=a[k]; a[k]= (2) ; (2) =s;}printf("\n 交换后的数组:\n"); for (k=0; (3) ;k++)printf("%4d",a[k]);}2、用递归方法求N阶勒让德多项式的值,递归公式为P n x n n x p x n p x n n n n n ===-⋅⋅--⋅>⎧⎨⎪⎩⎪--101211112()()(()()()())/()#include<stdio.h>main(){ float pn();float x,lyd;int n;scanf("%d%f",&n,&x);lyd= (1)printf("pn=%f",lyd);}float pn(float x,int n){ float temp;if (n==0) temp= (2)else if (n==1) temp= (3)else temp= (4)return(temp);}3、在数组中同时查找最大元素下标和最小元素下标,分别存放在main函数的变量max和min中。

#include <stdio.h>void find(int *a,int *max,int *min){ int i;*max=*min=0;for(i=1;i<n;i++)if(a[i]>a[*max]) (1) ;else if(a[i]<a[*min]) (2) ;return;}main(){ int a[]={5,8,7,6,2,7,3};int max,min;find( (3) );printf("%d,%d\n",max,min);}四、填空题(每空1分,共10分)1、已知整型变量a=6,b=7,c=1,则表达式 (a*3-b+c)/5 的值是。

2、当a=3,b=4,c=3时,表达式 a==c的值为,a!=c的值为。

3、int (*p)(); 定义的p 是一个 。

4、数学公式 y x b a y ++=)(21, 写成C 语言表达式是 。

5、若w=5,x=2,y=3,z=4,则条件表达式w<x?w:y<z?y:z 的结果为 。

6、C 语言可以处理的文件类型是 和 。

7、如下图所示,在链表中p1和p2两个结点间插入p 所指向的节点的关键语句是:和 。

其中结构体数据类型和指针变量的定义如下:struct stu{ int a;float b;struct stu *next;} *head, *p1,*p2,*p;五、编程题(第1题9分,第2、3题各10分,共29分)1、打印出所有的“水仙花数”,所谓“水仙花数”是指一个三位数, 其各位数字立方和等于该数本身。

例如 153是一个水仙花数,因为 153=153333++。

2、任意输入一个5×6矩阵,求出每一行的和放到一个一维数组中,输出此矩阵及其每一行的和。

3、任意输入20个正整数,找出其中的素数,并将这些素数按由小到大排序。

要求:判断一个数是否为素数用函数实现;排序用函数实现。

(注:文档可能无法思考全面,请浏览后下载,供参考。

可复制、编制,期待你的好评与关注)。

相关文档
最新文档