C语言试题-1(含答案)
C语言练习题一及答案
![C语言练习题一及答案](https://img.taocdn.com/s3/m/0a18eec258f5f61fb73666f2.png)
C语言练习题一一、填空题。
(每空1分,共10分)1.语句while(e==0):中的条件e==0等价于_____________;答案:!e2 printf(“%4s”,“beijing”);输出为:_____________;答案:beijing3.C语言中的字符串以字符_____________;答案:答案:\04.C语言可以处理的文件类型是_____________和_____________;答案:文本文件和二进制文件5,int(*P)[5];说明p是:_____________;答案:指向一维整形数组的指针变量6.函数直接或间接地调用自己,被称为函数的_____________;答案:递归7.若有static int x[5],x[4]的地址表示是:___________ 。
答案:&x[4]或x+48.有程序段如下:int x=l:while (x<=lO){x+=3;printf(“%d\n”,x);}则:函数printf()执行次数是____4_____ ,循环结束后X的值是___________ 。
答案:139.若有以下定义和语句,则sizeof(a)的值是_____,答案:12,而sizeof(b)的值是__。
答案:4 struct{int day;char month;int year;}a,*b;10.若有static char c[10] = “China”;执行该语句后c[1]= ___________ 。
答案:h c[5]= ___________ 。
答案:\0c[6]= ___________ 。
答案:\0 strlen(c)= ___________ 。
答案:511.若有Static char c[s]={’a’,’b’,’\0’(零),‘c’,‘d’};printf(“%s\n”,c):则输出内容为:___________ 。
答案:ab12.下面程序把从终端读人的10个整数以二进制方式写到一个名为bi.dat的新文件中。
C语言程序设计练习题(含程序及参考答案)1
![C语言程序设计练习题(含程序及参考答案)1](https://img.taocdn.com/s3/m/165c58ccfe4733687e21aac2.png)
C语言练习题(所提供的源程序均采用自定义函数方式解决,如不采用函数方式,也可直接在main函数中借鉴该思想编程,因时间有限,所有程序未能一一验证,仅供参考使用)1、定义一个函数int fun(int a,int b,int c),它的功能是:若a,b,c能构成等边三角形函数返回3,若能构成等腰三角形函数返回2,若能构成一般三角形函数返回1,若不能构成三角形函数返回0。
#include <stdio.h>int fun(int a,int b,int c){if(a+b>c && b+c>a && a+c>b){if(a==b && b==c )return 3;else if(a==b||b==c||a==c)return 2;else return 1;}else return 0;}void main(){int a,b,c,shape;printf("\nInput a,b,c: ");scanf("%d%d%d",&a,&b,&c);printf("\na=%d, b=%d, c=%d\n",a,b,c);shape =fun(a,b,c);printf("\n\nThe shape : %d\n",shape);}2、编写一个程序,将两个变量的值交换, 例如变量a中的值原为 3,b中的值原为8,程序运行后 a 中的值为8,b中的值为3。
#include <stdio.h>void fun(int *x,int *y){int t;t=*x;*x=*y;*y=t}void main(){int a=3,b=8;printf("%d %d\n",a,b);fun(&a,b);printf("%d %d\n",a,b);}3、从键盘输入3个数,将最大值放在变量a中,最小值放在变量c中。
1试题 c语言试题以及答案
![1试题 c语言试题以及答案](https://img.taocdn.com/s3/m/2b0b93ecaeaad1f346933fde.png)
main()
{
int s;
float n,t,pi;
t=1; pi=0; n=1.0; s=1;
while(fabs(t)>1e-6)
{
pi=pi+t;
n=____;
s=-s;
t=____;
}
pi=____;
printf("pi=%10.6f \n",pi);
}
请在左边文本框当中输入正确答案
参考答案:n+2
请在左边文本框当中输入正确答案
参考答案:s/n
请在左边文本框当中输入正确答案
参考答案:pi*4
. 杭州师范大学
计算机技术基础(C程序设计)课程练习平台 .
学号: 12X2C0166CPP 姓名: 练习264 班级: 所有专业
注意:回答完所有试题之后,需要点击本页面最后的【交卷完成,退出系统】按钮。
题号 一 二 三 四 五
题型 判断题 单选题 程序填空题 程序阅读题 程序设计题
if(I+j= =2) s2=s2+a[I][j];
}
printf( "%d,%d\n", s1, s2) ;
}
A)、18 10 B)、18, 10 C)、10,18 D)、10 18
参考答案:B
第3题: 阅读程序,写出运行结果。
参考答案:对
对
错
第7题:在C语言中十六进制数100转换为十进制数为 256
参考答案:对
对
错
第8题:在标准C语言中,宏定义的结尾也要加“;”。
C语言期末参考试题1
![C语言期末参考试题1](https://img.taocdn.com/s3/m/df2ec63328ea81c759f57895.png)
C语言期末参考试题1大学C语言期末考试题及答案(1)1、构成C语言的基本单位是_______。
A.过程B.函数C.语句D.命令2、设x为整型变量,不能正确表达数学关系:5<x<10的c语言表达式是_____。
A. 5B.x>5&&x<10C.x==6||x==7||x==8||x==9D.!(x<=5)&&(x<10)3、在C语言中,逻辑运算符的优先级从高到低的排列顺序为_____。
A.&&、||、!B.||、&&、!C.&&、!、||D.!、&&、||4、下面语句中,正确的是_____。
A.printf("%c\n","student");B.printf("%c\n","c");C.printf("%s\n",&a);D.printf("%s\n","hello");5、对于for(表达式1;;表达式3)可以理解为_____。
A.for(表达式1;0;表达式3)B.for(表达式1;1;表达式3)C.for(表达式1;表达式1;表达式3)D.for(表达式1;表达式3;表达式3)6、执行下面程序段的结果是_____。
main() { int x=1,a=0,b=0; switch(x) { case 0:b++; case 1:a++; case 2:a++;b++; } printf("a=%d,b=%d",a,b); }A.a=1,b=1B.a=2,b=1C.a=1,b=0D.a=2,b=27、执行下面程序段的结果是_____。
int x=0; do { printf(“-”,x--); }while (x);A.打印出321B.打印出23C.不打印任何结果D.陷入死循环8、设x=10,y=5;z=15,执行下面一段程序后z的结果是_____。
C语言程序设计试题第1套(山东建筑大学)
![C语言程序设计试题第1套(山东建筑大学)](https://img.taocdn.com/s3/m/1fbac8ca580216fc710afd29.png)
C语言程序设计试题(第1套)一.单项选择题〔30分,每题2分〕1.用C语言编写的代码程序______。
A、可立即执行B、是一个源程序C、经过编译即可执行D、经过编译解释才能执行2. C语言中用于结构化程序设计的三种根本结构是______。
A、顺序结构、选择结构、循环结构B、 if、switch、breakC、 for、while、do-whileD、 if、for、continue3. 以下选项中合法的实型常数是______。
A、5E2.0B、 E-3 C4. 假定x和y为 double型,那么表达式x=2,y=x+3/2的值是______。
A、 3.500000B、 3C、 2.0000005. ch是字符型变量,下面不正确的赋值语句是______。
A、ch = 65;B、 ch="a";C、 ch ='\ n';D、 ch= 9+ '0';6. 以下有关C语言程序书写格式的说法哪个是错误的?A、 C程序的书写格式比拟自由,一个语句可以占多行,一行也可以有多个语句。
B、 C语句必须要有分号。
C、 C语言程序的标识符必须使用小写字母。
D、用{ } 括起来的局部,通常表示了程序的某一层次结构,称为块。
7.下面程序段所表示的数学函数关系是______。
x= -1;if (a!=0)if (a>0) x=1;else x=0;-1 (a<0) 1 (a<0)A、x= 0 (a=0)B、x= -1 (a=0)1 (a>0) 0 (a>0)0 (a<0) -1 (a<0)C、x= -1 (a=0)D、x= 1 (a=0)1 (a>0) 0 (a>0)8. 以下关于do-while循环的不正确描述是______。
A) do-while的循环体至少执行一次B) do-while的循环体可以是复合语句C) 在do-while循环体中,一定要有能使while后面表达式的值变为零("假")的操作D) do-while循环由do开始,用while结束,在while(表达式)后面不能写分号9. 以下程序执行后sum的值是______。
C语言程序设计模拟考试试卷及答案(一)
![C语言程序设计模拟考试试卷及答案(一)](https://img.taocdn.com/s3/m/f055bdc14693daef5ff73d34.png)
C语言程序设计模拟考试试卷及答案(一)一、单项选择题1.一个C程序的执行是从( )。
A) 本程序的main函数开始,到main函数结束B) 本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C) 本程序的main函数开始,到本程序文件的最后一个函数结束D) 本程序文件的第一个函数开始,到本程序main函数结束2.下列选项中,不能用作标识符的是( )。
A) _1234_ B) _1_2 C) int_2_ D) 2_int_3.以下定义语句中正确的是( )。
A) char a='A'b='B'; B) float a=b=10.0;C) int a=10,*b=&a; D) float *a,b=&a;4.设有以下定义:#define d 2int a=0; double b=1.25; char c=’A’;则下面语句中错误的是( )。
A) a++; B) b++ C) c++; D) d++;5.以下4个选项中,不能作为一条C语句的是( )。
A) {;} B) a=0,b=0,c=0;C) if(a>0); D) if(b==0) m=1;n=2;6.有以下定义语句 double a,b; int w; long c;若各变量已正确赋值,则下列选项中正确的表达式是( )。
A) a=a+b=b++ B) w%(int)a+b)C) (c+w)%(int)a D) w=a==b;7.设有定义:int n=0,*p=&n,**q=&p;则以下选项中,正确的赋值语句是( )。
A) p=1; B) *q=2; C) q=p; D) *p=5;8.设有定义:int a,*pa=&a; 以下scanf语句中能正确为变量a读入数据的是( )。
A) scanf(“%d”,pa) ; B) scanf(“%d”,a) ;C) scanf(“%d”,&pa) ; D) scanf(“%d”,*pa);9.若有说明:char*language[]={”FORTRAN”,”BASIC”,”PASCAL”,”JAVA”,”C ”};则表达式*language[1]>*language[2]比较的是()。
C语言程序设计模拟试题1(附答案)
![C语言程序设计模拟试题1(附答案)](https://img.taocdn.com/s3/m/6d4273747fd5360cba1adbec.png)
《C语言程序设计》模拟试卷一一、单项选择题(每题2分,共30分)1、下列有关C语言的叙述中错误的是(D)。
A) C语句必须以分号结束B) 任何一个C程序中有且只有一个主函数C) 复合语句在语法上可被看作一条语句D) C程序中对数据的任何操作都可由运算符实现2、以下不能定义为用户标识符的是(C)。
A) MAIN B) _HJ C)2ong D) LINE13、下列符号中用来表示C语言中的回车换行的是(B)。
A) \r B) \n C)\b D) \t4、如有如下定义:int a=1,则语句printf(“%d,%d”, a, ++a);的运行结果为(B)。
A) 1, 1 B) 1, 2 C) 2, 2 D)2, 15、已知ch为字符型变量,下面表达式中正确的是(A)。
A) ch=’\xff ’B) ch=’\ff ’C) ch=’ ff ’D) ch=” ff ”6、以下能正确定义一维数组的是(C)。
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};7、以下语句中能正确定义变量并赋初值的是(A)。
A) char c=65; B) float f=f+1.1;C) double x=12.3e3.6; D) int m=n=2.0;8、在执行下列程序时输入:1357924,则程序的运行结果为(D)。
main( ){ int x, y;scanf(“%2d%2d”,&x,&y);printf(“%2d”,x*y); }A) 13 B) 1357 C) 74 D) 7419、执行下列程序段后输出的结果是(C)。
x = 9;while (x > 7){ printf(“*”); x- -; }A) **** B) *** C) ** D) *10、设char str1[10] = “ABCDE”, str2[10] = “xyz”;则执行语句printf(“%d”, strlen(strcpy(str1, str2))); 后的输出结果是(D)A) 9 B) 8 C) 5 D) 311、若用数组名作为函数调用的实参,则传递给形参的是(A)A) 数组的首地址B) 数组第一个元素的值C) 数组中全部元素的值 D) 数组元素的个数12、在C程序中,若未在函数定义时说明函数类型,则函数默认的类型为( A ) A)void B)double C)int D)char13、下面不能正确进行字符串赋值操作的语句是(A)A) char s[5]={"ABCD"};B) char s[5]; s="ABCD";C) char *s;s="ABCDEF"; D) char *s="ABCD";14、设有说明int s[5]={1,3,5,7,9}; int *p=s; 则下列表达式中值为3的是(B )A)++p B)++(*p) C) *(++p) D) *(p+=2)15、下面程序的输出结果是(B)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二、判断(每空1分,共10分)1、C语言有三种结构化程序设计方法,分别为顺序结构、选择结构和循环结构。
C语言 程序设计基础试题一及答案
![C语言 程序设计基础试题一及答案](https://img.taocdn.com/s3/m/5da0cfdd767f5acfa0c7cd4f.png)
《程序设计基础》考试试卷一班级姓名学号____________一、选择题(20分)1.算法具有五个特性,以下选项中不属于算法特性的是(A)有穷性(B)简洁性(C)可行性(D)确定性2.以下选项中可作为C语言合法常量的是(A)-80. (B)-080 (C) (D)3.以下叙述中正确的是(A)用C语言实现的算法必须要有输入和输出操作(B)用C语言实现的算法可以没有输出但必须要有输入(C)用C程序实现的算法可以没有输入但必须要有输出(D)用C程序实现的算法可以既没有输入也没有输出4.以下不能定义为用户标识符是(A)Main (B) _0 (C) _int (D) sizeof5.以下选项中,不能作为合法常量的是(A) (B) (C)+4 (D)6.数字字符0的ASCII值为48,若有以下程序main(){char a='1',b='2';printf("%c,",b++);printf("%d\n",b-a);} 程序运行后的输出结果是(A)3,2 (B)50,2 (C)2,2 (D)2,507.有以下程序main(){int m=12,n=34;printf("%d%d",m++,++n); printf("%d%d\n",n++,++m);}程序运行后的输出结果是(A) (B) (C) (D)8.有以下语句:int b;char c[10];,则正确的输入语句是A)scanf("%d%s",&b,&c); B) scanf("%d%s",&b,c);(C)scanf("%d%s",b,c); D)scanf("%d%s",b,&c);9.有以下程序main(){int m,n,p;scanf("m=%dn=%dp=%d",&m,&n,&p);printf("%d%d%d\n",m,n,p); } 若想从键盘上输入数据,使变量M中的值为123,N中的值为456,P中的值为789,则正确的输入是A)m=123n=456p=789 B)m=123 n=456 p=789 C)m=123,n=456,p=789 D)123 456 78910.有以下程序main(){int a,b,d=25;a=d/10%9;b=a&&(-1);printf("%d,%d\n",a,b); }程序运行后的输出结果是A)6,1 B)2,1 C)6,0 D)2,011.有以下程序main(){int i=1,j=2,k=3;if(i++==1&&(++j==3||k++==3))printf("%d %d %d\n",i,j,k);}程序运行后的输出结果是(A)1 2 3 (B)2 3 4 (C)2 2 3 (D)2 3 312.若整型变量a、b、c、d中的值依次为:1、4、3、2。
C语言程序设计模拟试题一(含答案)
![C语言程序设计模拟试题一(含答案)](https://img.taocdn.com/s3/m/7b00cb5d312b3169a451a4dc.png)
C语言程序设计模拟试题一(含答案)1、下列述叙中正确的是A) 显示器和打印机都是输出设备B) 显示器只能显示字符C) 通常的彩色显示器都有7种颜色D) 打印机只能打印字符和表格2、微型计算机中运算器的主要功能是进行A) 算术运算B) 逻辑运算C) 算术和逻辑运算D) 初等函数运算3、是DOS系统的最外层模块,通常称之为A) 引导程序B) 输入输出系统C) 命令处理系统D) 文件管理系统4、电子邮件是A) 网络信息检索服务B) 通过Web网页发布的公告信息C) 通过网络实时交互的信息传递方式D) 一种利用网络交换信息的非交互式服务5、和十进制数225相等的二进制数是A) 11101110 B) 11111110C) 10000000 D) 111111116、下列叙述中正确的是A) 指令由操作数和操作码两部分组成\B) 常用参数xxMB表示计算机的速度C) 计算机的一个字长总是等于两个字节D) 计算机语言是完成某一任务的指令集7、计算机的内存储器比外存储器A) 价格便宜B) 存储容量大C) 读写速度快D) 读写速度慢8、设当前盘为C盘,执行DOS命令"COPY B:\A.TXT PRN"之后,结果是A) B盘上的A.TXT文件被复制到C盘的PRN文件B) 屏幕上显示B盘上的A.TXT文件内容C) B盘上的A.TXT文件内容在打印机上输出D) B盘上的A.TXT文件被复制到B盘上的PRN文件9、要将当前盘当前目录下的两个文件X1.TXT和B1.TXT连接起来之后存入B盘当前目录下并且命名为Z.TXT,无论B 盘当前目录是什么,完成这件任务可以使用的命令是A) COPY A:X1.TXT+C:B1.TXT Z.TXTB) COPY X1.TXT+C:\\WS\\B1.TXT B:\\Z.TXTC) COPY A:X1.TXT+C:\\WS\\B1.TXTD) COPY X1.TXT+B1.TXT B:Z.TXT10、下列四组DOS命令中,功能等价的一组是A) COPY A:*.* B:与DISKCOPY A: B:B) COPY ABC.TXT+XYZ.TXT 与TYPE XYZ.TXT>>ABC.TXTC) COPY ABC.TXT+XYZ.TXT与COPY XYZ.TXT+ABC.TXTD) TYPE *.FOR>CON与COPY *.FOR CON11、设当前目录为D:\BB,现要把D:\AA目录下首字符是A的文本文件全部删除,应该使用命令A) DEL A*.TXT B) DEL \\AA\\A.TXTC) DEL \\AA\\A*.TXT D) DEL \\AA\\A?.TXT12、在Windows中,启动应用程序的正确方法是A) 用鼠标指向该应用程序图标B) 将该应用程序窗口最小化成图标C) 将该应用程序窗口还原D) 用鼠标双击该应用程序图标13、在Windows中,终止应用程序执行的正确方法是A) 将该应用程序窗口最小化成图标B) 用鼠标双击应用程序窗口右上角的还原按钮C) 用鼠标双击应用程序窗口中的标题栏D) 用鼠标双击应用程序窗口左上角的控制菜单框14、在微机系统中,对输入输出设备进行管理的基本程序模块(BIOS)存放在A) RAM中B) ROM中C) 硬盘中D) 寄存器中15、使计算机病毒传播范围最广的媒介是A) 硬磁盘B) 软磁盘C) 内部存储器D) 互联网16、设有int x=11; 则表达式(x++ * 1/3) 的值是A) 3 B) 4C) 11 D) 1217、下列程序的输出结果是main(){ double d=3.2; int x,y;x=1.2; y=(x+3.8)/5.0;printf("%d \n", d*y);}A) 3 B) 3.2C) 0 D) 3.0718、下列程序执行后的输出结果是(小数点后只写一位)main(){ double d; float f; ling l; int i;i=f=1=d=20/3;printf("%d %ld %f %f \n", i,l,f,d);}A) 6 6 6.0 6.0 B) 6 6 6.7 6.7C) 6 6 6.0 6.7 D) 6 6 6.7 6.019、下列变量定义中合法的是A) short _a=1-.le-1; B) double b=1+5e2.5;C) long do=0xfdaL; D) float 2_and=1-e-3;20、设int x=1, y=1; 表达式(!x||y--)的值是A) 0 B) 1C) 2 D) -121. 与y=(x>0?1:x<0?-1:0);的功能相同的if语句是A) if (x>0) y=1;else if(x<0)y=-1;else y=0;B) if(x)if(x>0)y=1;else if(x<0)y=-1;else y=0;C) y=-1if(x)if(x>0)y=1;else if(x==0)y=0;else y=-1;D) y=0;if(x>=0)if(x>0)y=1;else y=-1;22. 以下循环体的执行次数是main(){ int i,j;for(i=0,j=1; i<=j+1; i+=2, j--)printf("%d \n",i);}A) 3 B) 2C) 1 D) 023. 以下叙述正确的是A) do-while语句构成的循环不能用其它语句构成的循环来代替B) do-while语句构成的循环只能用break语句退出C) 用do-while语句构成的循环,在while后的表达式为非零时结束循环D) 用do-while语句构成的循环,在while后的表达式为零时结束循环24. 下列程序执行后的输出结果是main(){ int x='f'; printf("%c \n",'A'+(x-'a'+1)); }A) G B) HC) I D) J25. 执行下面的程序段后,变量k中的值为int k=3, s[2];s[0]=k; k=s[1]*10;A) 不定值B) 33C) 30 D) 1026. 若已定义:int a[ ]={0,1,2,3,4,5,6,7,8,9}, *p=a,i; 其中0≤i≤9, 则对a数组元素不正确的引用上A} a[p-a] B} *(&a[i])C} p[i] D} a[10]27、下列程序执行后的输出结果是void func(int *a,int b[]){ b[0]=*a+6; }main(){ int a,b[5];a=0; b[0]=3;func(&a,b); printf("%d \n,b[0]);}A) 6 B) 7C) 8 D) 928、下列程序的运行结果是#include <stdio.h>main(){ int a=2,c=5;printf("a=%d,b=%d\n",a,c); }A) a=%2,b=%5 B) a=2,b=5C) a=d, b=d D) a=%d,b=%d29、下列程序执行后的输出结果是main(){ int a[3][3], *p,i;p=&a[0][0];for(i=p; i<9; i++) p[i]=i+1;printf("%d \n",a[1][2]);}A) 3 B) 6C) 9 D) 随机数30、设有数组定义: char array [ ]="China"; 则数组array所占的空间为A) 4个字节B) 5个字节C) 6个字节D) 7个字节31、下列程序的输出结果是int b=2;int func(int *a){ b += *a; return(b);}main(){ int a=2, res=2;res += func(&a);printf("%d \n",res);}A) 4 B) 6C) 8 D) 1032、在以下四组中,每组有两个分别运算的函数,运算结果相同的是main(){ int i, j, m=0, n=0;for(i=p; i<2; i++)for(j=0; j<2; j++)if(j>=i) m=1; n++;printf("%d \n",n);}A) 4 B) 2C) 2 D) 033、下列程序的输出结果是struct abc{ int a, b, c; };main(){ struct abc s[2]={{1,2,3},{4,5,6}}; int t;t=s[0],a+s[1],b;printf("%d \n",t);}A) 5 B) 6C) 7 D) 834、设int b=2;表达式(b>>2)/(b>>1)的值是A) 0 B) 2C) 4 D) 835、在C程序中,可把整型数以二进制形式存放到文件中的函数是A) fprintf函数B) fread函数C) fwrite函数D) fputc函数36、下列程序执行后的输出结果是main(){ char x=0xFFFF; printf("%d \n",x--); } A) -32767 B) FFFEC) -1 D) -3276837、若有定义: float w;int a, b;则合法的switch语句是A) switch(w){ case 1.0: printf("*\\n");case 2.0: printf("**\\n");}B) switch(a);{ case 1 printf("*\\n");case 2 printf("**\\n");}C) switch(b){ case 1: printf("*\\n");default: printf("\\n");case 1+2: printf("**\\n");}D) switch(a+b);{ case 1: printf("*\\n");case 2: printf("**\\n");default: printf("\\n");}38、以下程序段的执行结果是int a, y;a=10; y=0;do{ a+=2; y+=a;printf("a=%d y=%d\n",a,y);if(y>20) break;{ while(a=14);A} a=12 y=12a=14 y=16a=16 y=20a=18 y=24B} a=12 y=12a=16 y=28C} a=12 y=12D} a=12 y=12a=14 y=26a=14 y=4439、若有以下调用语句,则不正确的fun函数的首部是main(){ …int a[50],n;…fun(n, &a[9]);…A} void fun(int m, int x[]) B} void fun(int s, int h[41])C} void fun(int p, int *s) D} void fun(int n, int a)40、语句printf("a\bre\'hi\'y\\\bou\n");的输出结果是(说明:'\b'是退格符)A) a\\bre\\'hi\\'y\\\\\\bou B) a\\bre\\'hi\\'y\\bouC) re'hi'you D) abre'hi'y\\bou41、请选出正确的程序段A) int *p;scanf("%d",p);…B) int *s, k;*s=100;…C) int *s, k;char *p, c;s=&k;p=&c;*p='a';…D) int *s, k;char *p, e;s=&k;p=&c;s=p;*s=1;42、已知指针p的指向如下图所示,则执行语句*--p;后*p的值是A) 30 B) 20C) 19 D) 2943、设已有定义:char *st="how are you";下列程序段中正确的是A) char a[11], *p; strcpy(p=a+1,&st[4]);B) char a[11]; strcpy(++a, st);C) char a[11];strcpy(a, st);D) char a[], *p;strcpy(p=&a[1],st+2);44、下列程序执行后的输出结果是mai(){ char arr[2][4];strcpy(arr,"you"); strcpy(arr[1],"me");arr[0][3]='&';printf("%s \n",arr);}A) you&ne B) youC) me D) err45、下列程序执行后的输出结果是void func1(int i);void func2(int i);char st[]="hello,friend!";void func1(int i){ printf("%c",st[i]);if(i<3){i+=2;func2(i);}}void func2(int i){ printf("%c",st[i]);if(i<3){i+=2;func1(i);}}main(){ int i=0; func1(i); printf("\n");}A) hello B) helC) hlo D) hlm46、假定下列程序的可执行文件名为prg.exe,则在该程序所在的子目录下输入命令行: prg hello good<回车>后,程序的输出结果是main()int argc, char *argv[]){int i;if(argc<-0)return;for(i=1;i<argc;i++)printf("%c", *argv[i]);}A) hello good B) hgC) hel D) hellogood47、下列程序执行后的输出结果是#define MA(x) x*(x-1)main(){ int a=1,b=2;printf("%d \n",MA(1+a+b));}A) 6 B) 8C) 10 D) 1248、变量a所占内存字节数是union U{ char st[4];int i;long l;};struct A{ int c;union U u;}a;A) 4 B) 5C) 6 D) 849、执行下列程序时输入:123<空格>456<空格>789<回车>,输出结果是main(){char s[100];int c, i;scanf("%c",&c);scanf("%d",&i);scanf("%s",s);printf("%c,%d,%s \n",c,i,s);}A) 123,456,789 B) 1,456,789C) 1,23,456,789 D) 1,23,45650、执行下列程序时输入:123<空格>456<空格>789<回车>,输出结果是main(){char s[100];int c, i;scanf("%c",&c);scanf("%d",&i);scanf("%s",s);printf("%c,%d,%s \n",c,i,s); }A) 123,456,789 B) 1,456,789 C) 1,23,456,789 D) 1,23,456答案:ACCDD ACCDBCDDBD ACAABACDAA DABBCBABDA CDBCCCBABC BBCDD。
c语言试卷和答案1
![c语言试卷和答案1](https://img.taocdn.com/s3/m/7d532d6a25c52cc58bd6be37.png)
s=s+f;
printf(“%.0f #”, s);
}
}
程序2
#include <stdio.h>
void main()
{ long fun (long number);
printf(“%ld\n”, fun(-974));
}
long fun(long number)
(5) 运算符 “+”不能作为单目运算符。
(6) 如果运算符 “*”和 “/”都是右结合的,这表达式10*6/5的值是10。
(7) s(s-a)(s-b)(s-c)是合法的C语言表达式。
(8) 表达式!!6的值是6。
(9) 表达式~(~2<<1)的值是5。
(28)str[k]=str[k]-‘A’+ ‘a’
4.(29)ss=s
(30)s-ss
四、程序阅读题
程序1 1 # 3 # 21 #
程序2 4 # 47 # 479 # -479
程序3 IF YOU FAIL TOP
五、程序设计题(略)
}while(month>=1 || month<=12);
B)do{ scanf(“%d”, &month);
}while(month>=1 && month<=12);
C)do{ scanf(“%d”, &month);
}while(month<1 || month>12);
else
b=3;
printf(“%d”, b);
A)3 B)2 C)1 D)0
C语言程序设计模拟试题1(附答案)
![C语言程序设计模拟试题1(附答案)](https://img.taocdn.com/s3/m/d007f1a803d276a20029bd64783e0912a2167c0c.png)
C语言程序设计模拟试题1(附答案)《C语言程序设计》模拟试卷一一、单项选择题(每题2分,共30分)1、下列有关C语言的叙述中错误的是()。
A) C语句必须以分号结束B) 任何一个C程序中有且只有一个主函数C) 复合语句在语法上可被看作一条语句D) C程序中对数据的任何操作都可由运算符实现2、以下不能定义为用户标识符的是()。
A) MAIN B) _HJ C) 2ong D) LINE13、下列符号中用来表示C语言中的回车换行的是()。
A) \r B) \n C) \b D) \t4、如有如下定义:int a=1,则语句printf(“%d,%d”, a, ++a);的运行结果为()。
A) 1, 1 B) 1, 2 C) 2, 2 D) 2, 15、已知ch为字符型变量,下面表达式中正确的是()。
A) ch=’\xff ’B) ch=’\ff ’C) ch=’ ff ’D) ch=” ff ”6、以下能正确定义一维数组的是()。
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};7、以下语句中能正确定义变量并赋初值的是()。
A) char c=65; B) float f=f+1.1;C) double x=12.3e3.6; D) int m=n=2.0;8、在执行下列程序时输入:1357924,则程序的运行结果为()。
main( ){ int x, y;scanf(“%2d%2d”,&x,&y);printf(“%2d”,x*y); }A) 13 B) 1357 C) 74 D) 7419、执行下列程序段后输出的结果是()。
x = 9;while (x > 7){ printf(“*”); x- -; }A) **** B) *** C) ** D) *10、设char str1[10] = “ABCDE”, str2[10] = “xyz”;则执行语句printf(“%d”, strlen(strcpy(str1, str2))); 后的输出结果是()A) 9 B) 8 C) 5 D) 311、若用数组名作为函数调用的实参,则传递给形参的是()A) 数组的首地址 B) 数组第一个元素的值C) 数组中全部元素的值 D) 数组元素的个数12、在C程序中,若未在函数定义时说明函数类型,则函数默认的类型为()A)void B)double C)int D)char13、下面不能正确进行字符串赋值操作的语句是( )A) char s[5]={"ABCD"}; B) char s[5]; s="ABCD";C) char *s;s="ABCDEF"; D) char *s="ABCD";14、设有说明int s[5]={1,3,5,7,9}; int *p=s; 则下列表达式中值为3的是 ( )A)++p B)++(*p) C) *(++p) D) *(p+=2)15、下面程序的输出结果是()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二、判断(每空1分,共10分)1、C语言有三种结构化程序设计方法,分别为顺序结构、选择结构和循环结构。
C语言试卷1(含答案)
![C语言试卷1(含答案)](https://img.taocdn.com/s3/m/8f7b852a7375a417866f8f51.png)
putchar (j);
}
3、下面的函数功能是求x的y次方。
double fun(double x,int y)
{ int i;
double z=1;
for(i=1;i<=y;i++)
z=z*x;
return z;
}
4、先为数组a输满数据,再为x输入一个数据,在数组a中找出第一个与x相等的元素并将下标输出,若不存在这样的元素,则打印”Not found!”标志。
printf("\"%s\"\n",ch[1]);
}
A. "AAAA"B. "BBB"C. "BBBCC"D. "CC"
9.在C语言中,形参的缺省存储类是。
A. autoB. registerC. staticD. extern
10.以下程序的输出结果是。
main()
{ char x=040;
printf("%0\n",x<<1);
27.对break语句和continue语句,下面说法不正确的是。
A.break语句强制中断当前循环,退出循环体
B.break语句只能用在三条循环语句的循环体或switch语句中
C. 在没有循环情况下,continue语句能用在switch语句中
D.continue语句不能退出循环体
28.c语言允许if-else语句可以嵌套使用,规定else总是与配对。
A.&aa[0]+1B.&aa[1]C..&aa[0]++D. aa+1
C语言程序设计_习题大全(含答案)_C语言-1
![C语言程序设计_习题大全(含答案)_C语言-1](https://img.taocdn.com/s3/m/99159089680203d8ce2f24f7.png)
C语言基础一:1.下列四组选项中,均不是C语言关健字的选项是( A )。
A) define B) gect C) include D) whileIF char scanf gotype printf case pow2.下面四个选项中,均是合法整型常量的选项是( A )。
A)160 B)-0xcdf C) -01 D)-0x48a-0xffff 01a 986,012 2e5011 0xe 0668 0x<<02>>B>>23.下面四个选项中,均是不合法的转义符的选项是( B )。
A) '\"' B) '\1011' C) '\011' D) '\abc''\\' '\' '\f' '\101''xf' '\A' '\}' 'x1f'4.下面不正确的字符串常量是( A )。
A)'abc' B)"12'12" C)"0" D)" "5.以下选项中不合法的用户标识符是( A )。
A)abc.c B)file C)Main D)PRINT6.C语言提供的合法关键字是( D )。
A) swithB) cherC) Case). Default7.下列标识符组中,合法的用户标识符为 AA)_0123与ssipedB)del-word与signedC)list与*jerD) keep%与wind8.在C语言中,逻辑值"真"的表示是用( C )。
A) true B) 整型值0 C)非另整型值 D) T9若有以下定义char s='\092';则该语句( B )A)使s的值包含一个字符 B)定义不合法,s的值不确定C)使s的值包含4个字符 D)使s的值包含3个字符10设C语言中,int类型数据占2个字节,则float类型数据占( D )个字节。
c语言试题及答案解析
![c语言试题及答案解析](https://img.taocdn.com/s3/m/b89620eebdeb19e8b8f67c1cfad6195f312be8f9.png)
c语言试题及答案解析一、选择题1. 下列关于C语言的描述中,错误的是:A. C语言是一种高级编程语言。
B. C语言可以直接被计算机执行。
C. C语言具有结构化编程的特性。
D. C语言支持多文件编程。
答案:B解析:C语言是一种高级编程语言,它需要编译器将其编译成机器语言后,计算机才能执行。
C语言支持结构化编程,并且可以进行多文件编程。
2. 在C语言中,以下哪个关键字用于定义一个函数?A. intB. returnC. voidD. function答案:C解析:在C语言中,关键字`int`用于定义函数的返回类型,`return`用于从函数返回值,`void`表示函数没有返回值,而`function`并不是C语言的关键字。
正确的关键字用于定义函数的是`void`,但通常与函数名一起使用,例如`void functionName() {}`。
二、填空题1. C语言标准库函数_________()用于将字符串转换为浮点数。
答案:atof解析:`atof`函数是C语言标准库中的一个函数,它用于将字符串转换为浮点数。
2. 在C语言中,_________运算符用于计算两个整数的差值。
答案:-解析:在C语言中,减号`-`运算符用于计算两个整数的差值。
三、简答题1. 简述C语言中指针的概念及其作用。
答案:指针是C语言中一个重要的概念,它是一个变量,其值是另一个变量的内存地址。
指针的作用包括:- 直接访问内存,提高程序的运行效率。
- 实现动态内存分配。
- 作为函数参数,实现函数对变量的间接操作。
- 实现复杂的数据结构,如链表、树等。
解析:指针是C语言中用于存储变量地址的变量,它使得程序能够直接操作内存地址,从而实现高效的数据处理和复杂的数据结构。
2. 描述C语言中数组的声明和初始化方法。
答案:在C语言中,数组的声明和初始化可以通过以下方式进行:- 声明:使用`type arrayName[arraySize];`的格式,其中`type`是数据类型,`arrayName`是数组名,`arraySize`是数组的大小。
C语言真题-1
![C语言真题-1](https://img.taocdn.com/s3/m/f4cb30ce89eb172ded63b7ee.png)
━━━━━━━━━━━━━━一、判断共10题(共计10分)━━━━━━━━━━━━━━第1题(1分)题号:5若有定义和语句:int a[3][3]={{3,5},{8,9},{12,35}},i,sum=0;for(i=0;i<3;i++) sum+=a[2-i];则sum=21.答案:Y第2题(1分)题号:32若有说明int c;则while(c=getchar());是正确的C语句。
答案:Y第3题(1分)题号:19C语言本身不提供输入输出语句,输入和输出操作是由函数来实现的。
答案:Y第4题(1分)题号:21语句scanf("%7.2f",&a);是一个合法的scanf函数。
答案:N第5题(1分)题号:36若有int i=10,j=2;则执行完i*=j+8;后ⅰ的值为28。
答案:N第6题(1分)题号:17x*=y+8 等价于x=x*(y+8)。
答案:Y第7题(1分)题号:22关系运算符<= 与== 的优先级相同。
答案:N第8题(1分)题号:31共同体变量所占的内存长度等于最长的成员的长度。
答案:Y第9题(1分)题号:28如果函数值的类型和return语句中表达式的值不一致,则以函数类型为准。
答案:Y第10题(1分)题号:14用fopen("file","r+");打开的文件"file"可以进行修改。
答案:Y第1题(1分)题号:606已定义ch为字符型变量,以下赋值语句中错误的是()。
(A).ch='\';(B).ch=62+3;(C).ch=NULL;(D).ch='\xaa';答案:A第2题(1分)题号:141为了提高程序的运行速度,在函数中对于整型或指针可以使用()型的变量。
(A).auto(B).register(C).static(D).extern答案:B第3题(1分)题号:143C 语言中以下几种运算符的优先次序()的排列是正确的。
C语言模拟测试题一及答案
![C语言模拟测试题一及答案](https://img.taocdn.com/s3/m/8059f31b69eae009581becb7.png)
模拟题一一、选择题1.下列说法正确的是()。
A)main函数必须放在C程序的开头B)main函数必须放在C程序的最后C)main函数可以放在C程序的中间部分,但在执行C程序时是从程序开头执行的D)main函数可以放在C程序的中间部分,但在执行C程序时是从main函数开始的2.C语言中不能用来表示整常数的进制是()。
A)十进制B)十六进制C)八进制D)二进制3.在下面几组数据类型中, 全为最常用的基本数据类型的是哪一组:()。
A)整型实型字符型B)整型数组指针C)数组结构体共用体D)指针逻辑型空类型4.C语言规定标识符由()等字符组成。
A)字母数字下划线B)中划线字母数字C)字母数字逗号D)字母下划线中划线5.若有说明语句:char c= ‘\64’ ; 则变量C包含()。
A)1个字符B)2个字符C)3个字符D)说明不合法,C值不确定6.若有如下定义:int a=2,b=3; float x=3.5,y=2.5; 则表达式:(float)(a+b)/2+(int)x%(int)y的值是()。
A)2.500000 B)3.500000 C)4.500000 D)5.0000007.设有如下定义和执行语句,其输出结果为()。
int a=3,b=3;a = --b + 1; printf(“%d %d”,a,b);A)3 2 B)4 2 C)2 2 D)2 38.以下表达式: 2+’a’+i*f, 其中i为整型变量,f为float型变量,则表达式的最终数据类型为()。
A)int B)float C)char D)double9.C语言中,运算对象必须是整型数的运算符是()。
A)%B)\C)% 和\D)**10.有如下语句:printf(“%s,%5.3s\n”,“COMPUTER”,“COMPUTER”);执行语句后的最终结果为()。
A)COMPUTER ,CMP . B)COMPUTER, CMP.C)COMPU, CMP. D)COMPU, CMP .11.能正确表示x的取值范围在[0,100]和[-10,-5]内的表达式是()。
C语言试卷一(含答案)
![C语言试卷一(含答案)](https://img.taocdn.com/s3/m/8a9c236da417866fb84a8ecc.png)
16、以下程序的输出结果是( ) A)#*#*# B)##### C)***** D)*#*#* main( ) { int i; for(i=1;i<6;i++) { if(i%2) {printf("#");continue;} printf("*"); } printf("\n"); } 17、已知有声明语句 char s1[10]= "abcde",s3[10];以下语句中能将 s1 中存储的字符 串和 s2 中存储的字符串正确交换的是 。 A.s3=s1,s1=s2,s2=s3; B.s3[0]=s1[0],s1[0]=s2[0],s2[0]=3[0]; C.strcpy(s3[0],s1[0]),strcpy(s1[0],s2[0]),strcpy(s2[0],s3[0]); D.strcpy(s3,s1),strcpy(s1,s2),strcpy(s2,s3); 18、若有声明语句 int a[10],b[3][3];则以下对数组元素赋值的操作中,不会出现越界访 问的是 ___ 。 A.a[-1]=1 B.a[10]=0 C.b[3][0]=0 D.b[0][0]=0 19、以下是一个自定义函数的头部,其中正确的是 。 A.int fun(int a[ ],b) B.int fun(int a[ ],int a) C.int fun(int *a,int b) D.int fun(char a[ ][ ],int b) 20、下列 4 个函数中,( )能实现交换变量值的功能。 A) void fun_a(int x,int y) B) void fun_b(int *x,int *y) { int *p; { int *p; *p=x;x=y;y=*p;} *x=*y;*y=*x;} C) void fun_c(int *x,int *y) D) void fun_d(int x,int y) { *x=*x+*y; { int p; *y=*x-*y; p=x;x=y;y=p; *x=*x-*y;} } 二、填空题(每空2分,共 26 分) 1、已知:int x=3;则
《C语言程序设计》复习题有答案1
![《C语言程序设计》复习题有答案1](https://img.taocdn.com/s3/m/18f73c18b80d6c85ec3a87c24028915f814d8441.png)
《C语言程序设计》复习题有答案1《C语言程序设计》复习题一、填空题1、 C 语言的源程序必须通过编译和链接后,才能被计算机执行。
2、 C 语言的源程序必须通过编译和连接后,才能被计算机执行。
3、C语言中的标示符可分为关键字、拥护标示符和预定义标识符3类。
4、C语言中的标示符可分为关键字、用户标识符和预定义标示符3类。
5、在C语言中,用关键字 float 定义单精度实型变量。
6、在C语言中,用关键字 double 定义双精度实型变量。
7、在C语言中,用关键字 char 定义字符型变量。
8、在C语言的赋值表达式中,赋值好左边必须是变量。
9、设C语言中的一个int型数据在内存中占2个字节,则int型数据的取值范围为-32768--32768 。
10、若有定义语句:int s=6;则表达式s%2+(s+1)%2的值为 1 。
11、若a是int型变量,且a的初值为6,则执行表达式a+=a-=a*a后a的值为-60 。
12、若a是int型变量,则执行表达式a=25/3%3后a的值为 2 。
13、在程序运行过程中,其值不能被改变的量称为常量。
14、C程序中定义的变量,代表内存中的一个存储单元。
15、C语言中,int类型数据字符占内存 2 个字节。
16、C语言中,char类型数据占内存 1 个字节。
17、C语言的字符常量是用单引号括起来的一个字符。
18、语句printf(“\n”);的作用是换行输出。
19、10/3的结果是3 。
20、10%3的结果是 1 。
21、C语句的最后用;结束。
22、要使用putchar函数,在#include命令行中应包含的头文件是#include。
23、要使用getchar函数,在#include命令行中应包含的头文件是#include。
24、为表示关系|x|≥9;应使用的C语言表达式是x<=-9 || x>=9 。
25、为表示关系|x|≤9;应使用的C语言表达式是x>=-9&&x<=9 。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
C语言试题2019.03一、单项选择题(共30分,每题1分)1.在PC机中,‘\n’在内存占用的字节数是()A.1 B.2 C. 3 D.42.字符串“ABC”在内存占用的字节数是()A.3 B. 4 C.6 D.83.在C语言中,合法的长整型常数是()A.0L B.4962710 C.0.054838743 D.2.1869 e104.执行语句“x=(a=3,b=a--)”后,x,a,b的值依次是()A.3,3,2 B.3,2,2 C.3,2,3 D.2,3,25.设有语句int a=3;,则执行了语句a+=a-=a*a后,变量a的值是()A.3 B.0 C.9 D.-126.设int k=32767;执行k=k+1;后k值为()最大值与最小值首尾相连A.32768 B.-32768 C.0 D.-17.下列正确的标识符是()A.hot_do B.a+b C.test! D.%y8.设int a=5,使b不为2的表达式是()A.b=6-(--a) B.b=a%2 C.b=a/2 D.b=a>3?2:19.执行x=(6*7%8+9)/5;后,x的值为()A.1 B.2 C.3 D.410.执行语句x=(a=3,b=a--)后,x,a,b的值依次为()A.3,2,3 B.2,3,2 C.3,3,2 D.3,2,211.设a=-3;执行(a>0)?a:-a;后,a的值为()A.3 B.1 C.0 D.-312.设所有变量均为整型,则表达式(a=2,b=5,b++,a+b)的值为()A.7 B.8 C.9 D.213.下面正确的字符常量是()A.”c” B.’\\’’ C.’W’ D. ‘’14.若有代数式3ae/bc,则不正确的c语言表达式是()A.a/b/c*e*3 B.3*a*e/b/c C.3*a*e/b*c D.a*e/c/c*315.在C语言中,要求运算数必须是整型的运算符是()书中55页A./ B.++ C.!= D.%16.若有说明语句:char c=’\72’;则变量c ( )A.包含1个字符 B.包含2个字符C.包含3个字符 D.说明不合法,c值不确定17.sizeof (float)是()返回值为4。
所以为整型表达式A.一个双精度型表达式 B.一个整型表达式C.一种函数调用 D 一个不合法的表达式18.设变量a 是整型,f是实型,i是双精度型,则表达式10+’a’+i*f值的数据类型是()A.int B.folat C.double D.不确定19.若有定义int a[10],*p=a;,则p+5表示()A.元素a[5]的地址 B.元素a[5]的值C.元素a[6]的地址 D.元素a[6]的值?*20.以下与int *q[5];等价的定义语句是()指针数组,数组元素为指针A.int q[5]; B.int * q C.int *(q[5]) D.int (*q)[5] 指向数组的指针21.若有定义int a[5],*p=a;则对a数组元素地址的正确引用是()A.P+5 B.*a+1 C.&a+1 D &a[0]22.凡是函数中未指定存储类别的局部变量,其隐含的存储类别是()A.auto B.static C.extern D.register23.若用数组名作为函数调用的实参,传递给形参的是()A.数组的首地址 B.数组第一个元素的值C.数组中全部元素的值 D .数组元素的个数24.C语言允许函数值类型缺省定义,此时该函数值隐含的类型是()A.float B.int C.long D.double25.以下对二维数组a的正确说明是()A.int a[3][] B.float a(3,4)C.double a[1][4] D.float a(3)(4)?*26.若有说明int a[3][4];则对a数组元素的正确引用是( C )A.a[2][4] B.a[1,3] C.a[1+1][0] D.a(2)(2)答案?*26.语句while(!E);中的表达式!E等价于()A.E= =0 B.E!=1 C.E!=0 D.E= =127.C语言中while和do—while循环的主要区别是()A.do—while的循环体至少无条件执行一次B.While的循环控制条件比do—while的循环控制条件严格C.do—while允许从外部转到循环体内D.do—while循环体不能是复合语句28.为了避免在嵌套的条件语句if—else中产生二义性,C语言规定:else子句总与()配对A.缩排位置相同的if B.其之前最近的ifC.其之后最近的if D.同一行上的if29.判断char型变量ch是否为大写字母的正确表达式是()A.’A’<=ch<=’Z’ B.(ch>=’A’)&(ch<=’Z’)C.(ch>=’A’)&&(ch<=’Z’ D.(‘A’<=ch)AND (‘Z’>=ch)*30.以下能正确定义整型变量a、b、c并为其赋初值5的语句是( A )A.int a=5,b=5,c=5; B.int a,c, c=5;C.a=5,b=5,c=5; D.a=b=c=5;二、填空(共20分,每空1分)1.C语言中的实型变量分为两种类型,它们是()和()。
2.C语言中的标识符只能由三种字符组成,它们是()、()和()。
3.若有定义:char c=’\010’;则变量c中包含的字符个数是()。
4.C语言提供的三种逻辑运算符是()、()、()。
5.设y为int型变量,请写出描述“y是奇数”的表达式()。
6.设x,y,z均为int型变量,请写出描述“x或y中有一个小于z”的表达式()。
7.在C语言中,二维数组元素在内存中的存放顺序是()。
8.若有定义:double x[3][5];则x数组中行下标的下限为(),列小标的上限为()。
9.若有定义:int a[3][4]={{1,2},{0},{4,6,8,10}};则初始化后,a[1][2]得到的初值是(),a[2][2]得到的初值是()。
10.若自定义函数要求返回一个值,则应在该函数体中有一条()语句,若自定义函数要求不返回一个值,则应在该函数说明时加一个类型说明符()。
11.函数中的形参和调用时的实参都是数组名时,传递方式为(),都是变量时,传递方式为()。
三、读程序(共30分,每题5分)1.main(){int a=2,b=3,c;c=a;if (a>b) c=1;else if (a= =b) c=0;else c=-1;printf (“%d\n”,c);} 运行结果:2.main(){int a=2,b=7,c=5;switch (a>0){case 1:swithch (b<0){case 1:printf(“@”);break;case 2:printf(“!”);break;}case 0: switch (c= =5){ case 0:printf(“*”);break;case 1:printf(“#”),break;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分,每题10分)1.从键盘输入的10个整数中,找出第一个能被7整除的数。
若找到,打印此数后退出循环;若未找到,打印“not exist”。
2.已有变量定义和函数调用语句:int x=57;isprime(x);函数isprime()用来判断一个整数a是否是素数,若是素数,函数返回1,否则返回0。
请编写isprime函数。
insprime( int a){……}; {……}一、单项选择题(共30分,每题1分)1.A.2.B.3.A 4. C 5. D 6. B 7. A 8. B 9. B 10. A 11. D 12. A13. C 14. C 15. D 16. A 17. B 18. C 19. A 20.D 21. D 22. A 23. A 24. B 25.C 26. A 27. A 28. B 29. C 30. A二、填空(20分,每空1分)1.单精度,双精度2.数字、下划线、英文字母3.1个4.与&&、或||、非!5.y%2!=06.x<z||y<z7.行列8.0,49.0,810.return,void11.地址传送,值传送三、读程序(30分)1.-1 2.&3.#&*4.8,-2 5.1 6. 7 8 9四、编写程序(20分)1.#include<stdio.h>main(){int i,a;for (i=1;i<=10;i++){scanf(“%d”,&a);if (a%7= =0) {printf (“%d”,a); break;}}if (i>10) printf (“not exist”);}2.insprime(int a){int i;for (i=2;i<=a-1;i++)if (i%2= =0)return(0);elsereturn(1); }。