




已阅读5页,还剩6页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
一、 选择题(本大题30分,每小题2分)1.下列说法正确的是 D 。A)main函数必须放在C程序的开头B)main函数必须放在C程序的最后C)main函数可以放在C程序的中间部分,但在执行C程序时是从程序开头执行的D)main函数可以放在C程序的中间部分,但在执行C程序时是从main函数开始的2.C语言的基本特点:(1)语言简洁、紧凑,使用方便,灵活。(2)运算符丰富。(3)数据类型丰富。(4)具有结构化的控制语句。(5)语法限制不太严格,程序设计自由度大。(6)C语言能直接访问物理地址,能进行位操作,能实现汇编语言的大部分功能,可以直接对硬件进行操作。(7)用C语言编写的程序可移植性好。(8)生成目标代码质量高,程序执行效率高。3.能正确表示x的取值范围在0,100和-10,-5内的表达式是 B 。A)(x=-5)&(x=100)B)(x=-10)&(x=0)&(x=-10)&(x=0)&(x=100)D)(x=-5)&(x=100).能表示整数x符合下面两个条件的语句是 A 。(1)“能被4整除,但不能被100整除”.(2)能被4整除,又能被400整除.A)(x%4=0&x%100!=0)|x%400=0B)(x%4=0|x%100!=0)&x%400=0C)(x%4=0&x%400!=0)|x%100=0D)(x%100=0|x%4!=0)&x%400=0注:&与。或。!非。4.C语言规定标识符由 A 等字符组成。A)字母 数字 下划线 B)中划线 字母 数字)字母 数字 逗号 )字母 下划线 中划线下列变量名中是否合法 CA B.C.Tom B3a6b C_6a7b D$ABC以下是否为正确的C语言标识符BA#define B_123 C%d Dn注:C语言标识符只能由字母、数字、和下划线组成,且第1个字符必须是字母或下划线。5.用scanf函数输入一个字符串到数组str中,下面正确的语句是: C 。A)scanf(“%s”,&str); B)scanf(“%c”,&str10);C)scanf(“%s”, str) ; D)scanf(“%s”,str10);注:d格式:一个有符号的十进制整数c格式:一个字符s格式:一个字符串f格式:以小数形式输出(入)整数6.(1)if(表达式) 语句1 (没有else子句部分) (2)if(表达式) (有else子句部分) 语句1else 语句2 (3)if(表达式1) 语句1 (在else部分又嵌套了多层的if语句) else if (表达式2)语句2 else if (表达式3) . . . else if (表达式m)语句melse 语句m+17.8.字符变量是用类型符char定义字符变量。Char是英文character(字符)的缩写。如:char c=?;printf(“%d %cn”,c,c);则输出结果是:63 ?9.一维数组、二维数组的定义:一维数组:类型符 数组名【常量表达式】如:int n;scanf(“%d”,&n);int an;二维数组:类型说明符 数组名常量表达式常量表达式;例如:float a34,b510;定义a为3*4(3行4列)的数组,b为5*10(5行10列)的数组。10.在函数调用过程中,系统会把实参的值传递给被调用的函数的形参。或者说,形参从实参得到一个值。该值在函数调用期间有效,可以参加该函数中德运算。用数组元素作实参时,向形参变量传递的是数组元素的值,而用数组名作为函数实参是,向形参(数组名或指针变量)传递的是数组首元素的地址。11.指针变量的概念、定义、指向、引用。概念:一个变量的地址称为该变量的“指针”。定义:类型名 *指针变量名;如:int *pointer_1,*pointer_2;引用:在引用指针变量时,可能有3种情况:(1)给指针变量赋值。如:P=&a; /把a的地址赋给指针变量p指针变量p的值是变量a的地址,p指向a.(2)引用指针变量指向的变量。如果一执行“p=&a;”,即指针变量p指向了整形变量a.,则printf(“%d”,*p);起作用是以整数形式输出指针变量p所指向的变量的值,即变量a的值。如果有以下赋值语句:*p=1;表示将整数1赋给p当前所指向的变量,如果p指向变量a,则相当于把1赋给a,即“a=1;”.(3)引用指针变量的值。如:printf(“%o”,p);作用是以八进制数形式指出指针变量p的值,如果p指向了a,就是输出了a的地址,即&a.注意:(1)& 取地址运算符。&a是变量a的地址。(2)* 指针运算符(或称“间接访问”运算符),*p代表指针变量p指向的对象。二、判断题1、数据基本类型在计算机内存中的存放空间大小2、同选择题63、三种语句的循环while语句:只要当循环条件表达式为真(即给定的条件成立),就执行循环体语句。注意:while循环的特点是:先判断条件表达式,后执行循环体语句。例:i=1;while(i=50) /只要当i的值小于或等于50时执行花括号内的语句语句dowhile语句:先执行循环体,然后再检查条件是否成立,若成立,再执行循环体。这是和while语句不同的。注意:dowhile语句的特点是:先无条件的执行循环体,然后判断循环条件是否成立。例:int i=1;do /循环结构开始printf(“%d”,i+); /循环体,输出i的值,然后使i加1While(i=100); /当i小于或等于100时,继续执行循环体for语句:for(循环变量赋初值;循环条件;循环变量增值)语句例如:for(i=1;i=A&ca&chz) (ch=ch-32);printf(”%cn”,ch); 2.输入3个实数 a, b, c要求按从大到小的顺序输出三数.main( ) float a,b,c,t; scanf(“%f,%f,%f”,&a,&b,&c); if (ab) t=a; a=b ; b=t; if( ac ) t=a; a=c; c=t; if(bc) t=b b=c; c=t;printf(“%f,%f,%f”,a,b,c);3.以下程序可计算10名学生1门功课成绩的平均分,请填空。float average( float array10 ) int i; float aver, sum=array0; for ( i=1; _i10 ;i+) sum+= _arrayi ; aver=sum/10; return(aver); main( ) float score10, aver ; int i ; printf(“ninput 10 scores:”); for(i=0; i10;i+) scanf(“%f”,&scorei ); aver = _average(score) ; printf(“naverage score is %5.2fn”, aver);5.下面程序中的数组a包括10个整数元素,从a中第二个元素起,分别将后项减前项之差存入数组b,并按每行3个元素输出数组b。请填空。main( ) int a10,b10, I; for(I=0;I10; I+) scanf(“%d”,&aI) ; for(I=1; i10 ; I+) bI= ai-ai-1 ; for(I=1;I10;I+) printf(“%3d”,bI); if ( i%3=0 ) printf(“n”); 6.给出一个整数i,求出另一个整数j,使i和j在用8位二进制表示时互为逆序。例如:给定i=3(00000011),应求得j=192(1100000)。#include void main() int a=0,b=0,c,d=0; printf(请输入一个十进制数:); scanf(%d,&a); d=a; for(c=0;c8;c+) b=1; printf(n%d的逆序二进制数为:%dn,d,b);五、编写程序 1.有一函数如下:输入x的值,输出y的值。 y=5x+6(x-1),y=8x-1(-1=x=5),y=x+1(5x)#include void main()int x,y;printf(输入x:);scanf(%d,&x);if(x-1)y=5*x+6;elseif(x=5)y=8*x-1;elsey=x+1;printf(y=%dn,y);2.求1+2+3+4+5+100的和。#include void main()int i=1,sum=0;while(i=100)i+;sum=sum+i;printf(sum=%dn,sum); 3.求1-3+5-7+9-11+-99+101的和。 #include void main()int i=1,sum=0,flag=1;while(i=101)sum=sum+i*flag; i=i+2;flag=-flag;printf(sum=%dn,sum);4.1+1/2+1/3+1/4+1/100的和。#include void main()int i=1;float sum=0,temp;while(i=100)temp=1.0/i;sum=sum+temp; i+;printf(sum=%fn,sum);5.用函数法:编写将10个数按原来的逆序排列。要求输出原存放顺序和逆序后的数。#include void main() float a10;int i; void fun(float b);printf(输入10个数:);for(i=0;i10;i+)scanf(%f,&ai);printf(输出未排序的数字:);printf (n);for(i=0;i10;i+)printf(%12f,ai);printf(n);fun(a);printf(输出排序后的数字:);for(i=0;i10;i+)printf(%12f,ai);void fun(float b)int j,k;float t;for(j=0;j10;j+)for(k=j+1;kbk)t=bj;bj=bk;bk=t;6.输入100个学生的成绩,求其平均分。要求分别采用:循环法编程;数组法编程;函数法编程;指针法编程。/循环法/#include void main()float amount,aver,total=0.0;int i;printf(输入10个学生的成绩:);for(i=1;i=10;i+)scanf(%f,&amount); total=total+amount;aver=total/10;printf(aver=%fn,aver);/数组法/#include void main()float a10,aver,sum=0;int i;printf(输入10个学生的成绩:);for(i=0;i10;i+)scanf(%f,&ai);for(i=0;i10;i+)sum=sum+ai;aver=sum/10;printf(aver=%fn,aver); /函数法/#include void main()float a10,aver;int i;float fun(float b);printf(输入10个学生的成绩:);for(i=0;i10;i+)scanf(%f,&ai);aver=fun(a);printf(aver=%fn,aver);float fun(float b)float sum=0,a;int j;for(j=0;j10;j+)sum=sum+bj;a=sum/10;retur
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 尿素保底合同(标准版)
- 城市公园空气质量改善方案
- 风电场并网调度与控制方案
- 2025浙江宁波慈溪市金山初级中学招聘派遣制教师3人考试参考试题及答案解析
- 保姆看护小孩雇佣合同3篇
- 山东省聊城市冠县2024-2025学年 七年级下学期7月期末英语试题(含答案无听力)
- 教科版六年级下册期末考试科学试卷(含答案)2024-2025学年云南省昆明市盘龙区
- 城中村改造土方施工与管理方案
- 城市公园施工进度管理方案
- 2025年金融知识试题及答案
- 全球热泵产业发展报告2025
- 商业地产项目数字化运营与客户体验提升策略研究报告
- 2025新疆天泽和达水务科技有限公司部分岗位社会招聘28人笔试模拟试题及答案解析
- 基于多元线性回归的国内旅游收入影响分析-以江西省为例
- 水厂化验室知识培训课件
- 实验学校物业管理服务项目方案投标文件(技术方案)
- 2025个人房屋租赁合同范本下载
- 督脉刮痧配合刺血治疗急性乳腺炎
- 2025年初级(五级)健康照护师(五级)《理论知识》试卷真题(后附答案和解析)
- 避孕药具宣传培训课件
- 大盘鸡的介绍
评论
0/150
提交评论