在c语言中 程序的最小编译单位是,C语言程序设计模拟试题

《C语言程序设计模拟试题》由会员分享,可在线阅读,更多相关《C语言程序设计模拟试题(9页珍藏版)》请在人人文库网上搜索。

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、 2, 15、已知ch为字符型变量,下面表达式中正确的是()。A) ch=xff B) ch=ff C) ch= ff D) ch=” ff ”6、以下能正确定义一维数组的是()。A) int a5=0,1,2,3,4,5; B) int a5=”;C) char a =”; D) char a5=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、在执行下列程序时输入:,则程序的运行结果为()。main( ) int x, y;sca。

3、nf(“%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 str110 = “ABCDE”, str210 = “xyz”;则执行语句 printf(“%d”, strlen(strcpy(str1, str2); 后的输出结果是()A) 9 B) 8 C) 5 D) 311、若用数组名作为函数调用的实参,则传递给形参的是()A) 数组的首地址 B) 数组第一。

4、个元素的值C) 数组中全部元素的值 D) 数组元素的个数12、在C程序中,若未在函数定义时说明函数类型,则函数默认的类型为( )A)void B)double C)int D)char13、下面不能正确进行字符串赋值操作的语句是( )A) char s5=ABCD; B) char s5; s=ABCD;C) char *s;s=ABCDEF; D) char *s=ABCD;14、设有说明int s5=1,3,5,7,9; int *p=s; 则下列表达式中值为3的是 ( )A)+p B)+(*p) C) *(+p) D) *(p+=2)15、下面程序的输出结果是()int m=13;int。

5、 fun( int x, int y) int m=3;return( x*y-m); main( ) int a=7,b=5;printf(“%dn”, fun(a,b)/m); A) 1 B) 2 C) 3 D) 10二、 判断(每空1分,共10分)1、C语言有三种结构化程序设计方法,分别为顺序结构、选择结构和循环结构。( )2、C语言规定:标识符应由字母、下划线和数字组成,且可以是上述字符的任意组合,其长度也是任意的。( ) 3、数组在定义时没有必要指定数组的长度,其长度可以在程序中根据元素个数再决定。( )4、if语句有多种使用方法,其中if子句和else 子句也都可以单独使用。( )。

6、5、for语句作为循环控制语句时,从语法上将其括号内各个表达式都可缺省,但表达式内的分号却不可以却省。( )6、字符串是C语言中一种基本数据类型,字符串总是以n作为结束标志。( )7、在C语言中,程序的最小编译单位是源文件,最小功能单位是函数。( )8、在定义指针型变量时指定的基类型为该指针变量所能指向的变量类型。( )9、结构体与数组一样,属于构造类型数据,且在结构体中的各个成员的类型也可不同。( )10、在发生函数调用时,主被调函数中的参数可以是简单变量,也可以是数组名,当采用数组名作为参数时其数据传递方式为单向值传递。( )三、 程序填空(每小题2分,共12分)1、以下程序可求出所有水仙。

7、花数(指3位正整数中各位数字立方和等于该数本身,如153=13+53+33),请填空。main( ) int x, y ,z, m;printf(“shui xian huan shu :n”);for(m=100;mmain( ) char ch; ch=getchar( );if (___(3)____) ch=ch+32; putchar(ch); else if(__(4)___) ch=ch-32; putchar(ch);else putchar(ch);3、以下程序使用递归法求n!, 请填空。main( ) int n, y;printf(“input a integer num。

8、ber”);scanf(“%d”,&n);y=(5); printf(“%d! = %6d”, n, y ); int fac(int n) int f; if(nmain( ) int a,b,x;x=(a=3,b=a-);printf(“x=%d,a=%d,b=%d”,x,a,b); 2、以下程序的运行结果是 #include main( ) int a = 2, b = 3, c ;c = a ;if ( ab ) c = 1 ;else if ( a = b ) c = 0 ;else c = -1 ;printf ( “%dn”, c ) ; 3、以下程序的运行结果是 #includ。

9、e main() int i,j,k;for(i=1;i,则输出结果为 #include#includeint func(char str) int num =0;while(*(str+num)!=0) num+;return(num); main( ) char str10,*p=str;gets(p); printf(%dn,func(p); 五、 编程题(本大题28分,第一题8分,第二题9分,第三题11分)1、请编程实现下列分段函数的值:(1-x) 1/ 2 (x0) y= 1-x (x1)(1-x)2 (x1) 2、百钱百鸡问题:用100元钱买100只鸡,公鸡每只5元,母鸡每只3元,。

10、小鸡每3只1元,要求每种鸡至少买1只,试编程求各种鸡各买多少只。3、输入20位学生的成绩,分别用函数实现:(1)将20位学生的成绩按从高到低进行排名。(2)求所有成绩的平均分,并输出所有成绩中比平均分低的分数。参考答案:一、 单项选择题1、D2、C3、B4、B5、A6、C7、A8、D9、C10、D11、A12、A13、A14、B15、B二、判断题1、T2、F3、F4、F5、T6、F7、T8、T9、T10、F三、程序填空题1、(1) m/10%10(2) m=x*x*x+y*y*y+z*z*z2、(3) chA&cha&ch#includevoid main()int x;double y;pr。

11、intf(Please input x value:);scanf(%d,&x);if(xvoid main()int x,y,z;/*分别代表所买的公鸡数,母鸡数,小鸡数*/for(x=1;xvoid sort(int b20)int i,j;int temp;for(i=0;i20;i+)for(j=0;j20;j+)if(bibj)temp=bi;bi=bj;bj=temp;for(i=0;i20;i+)printf(%d ,bi);printf(n); double ave(int c20)double sum=0.0;int i;for(i=0;i20;i+)sum=sum+ci;s。

12、um=sum/20;return sum;void main()int i;int a20;double pingjun;printf(Please input 20 students score!n);for(i=0;i20;i+)printf(Please input %d student score:,i+1);scanf(%d,&ai);for(i=0;i20;i+)printf(%d ,ai);printf(n); sort(a);pingjun=ave(a);printf(平均分为:%fn,pingjun);printf(比平均分低的有:n);for(i=0;i20;i+)if(aipingjun)printf(%d ,ai);printf(n);。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值