北京工业大学C语言部分练习答案
C语言教材课后习题答案
2.简述程序设计语言发展的过程
程序设计语言经过最初的机器代码到今天接近自然语言的表达, 经过了四代的演变。 一 般认为机器语言是第一代,符号语言即汇编语言为第二代,面向过程的高级语言为第三代, 面对象的编程语言为第四代。
3.简述高级程序设计语言中面向过程与面向对象的概念。
“面向过程”是一种以过程为中心的编程思想。首先分析出解决问题所需要的步骤,然 后用函数把这些步骤一步一步地实现, 使用的时候依次调用函数即可。 一般的面向过程是从 上往下步步求精,所以面向过程最重要的是模块化的思想方法。 “面向对象”是一种以事物为中心的编程思想。面向对象的方法主要是将事物对象化, 对象包括属性与行为。 面向过程与面向对象的区别:在面向过程的程序设计中,程序员把精力放在计算机具体 执行操作的过程上,编程关注的是如何使用函数去实现既定的功能;而在面向对象的程序设 计中,技术人员将注意力集中在对象上,把对象看做程序运行时的基本成分。编程关注的是如 何把相关的功能(包括函数和数据)有组织地捆绑到一个对象身上。
习题答案
习 题 1(参考答案) 1.程序与算法的概念及二者的区别是什么?
程序: 为了实现特定目标或解决特定问题而用计算机语言偏写的指令序列, 它由算法和数据 结构组成。 算法: (Algorithm) 是在有限步骤内求解某一问题所使用的一组定义明确的规则。 通俗地讲, 就是计算机解题的步骤。 算法与程序的区别: 计算机程序是算法的一个实例, 同一个算法可以用不同的计算机语言来 表达。
C语言练习题(带详解答案)
C语言练习题(带详解答案)
一单项选择题
1.(A)是构成C语言程序的基本单位。
A、函数
B、过程
C、子程序
D、子例程2.C语言程序从C开始执行。
A)程序中第一条可执行语句B)程序中第一个函数C)程序中的main函
数D)包含文件中的第一个函数3、以下说法中正确的是(C)。
A、C语言程序总是从第一个定义的函数开始执行
B、在C语言程序中,要调用的函数必须在main()函数中定义
C、C
语言程序总是从main()函数开始执行
D、C语言程序中的main()函数必须放在程序的开始部分4.下列关于
C语言的说法错误的是(B)
A)C程序的工作过程是编辑、编译、连接、运行B)C语言不区分大小写。
C)C程序的三种基本结构是顺序、选择、循环D)C程序从main函数
开始执行5.下列正确的标识符是(C)。
A.-a1
B.a[i]
C.a2_i
D.intt5~8题为相同类型题考点:标识符的命名
规则
(1)只能由字母、数字、下划线构成(2)数字不能作为标识符的开
头(3)关键字不能作为标识符
选项A中的-,选项B中[与]不满足(1);选项D中的int为关键字,不满足(3)
6.下列C语言用户标识符中合法的是(B)。A)3a某B)某C)caeD)-
e2E)union
选项A中的标识符以数字开头不满足(2);选项C,E均为为关键字,不满足(3);选项D中的-不满足(1);
7.下列四组选项中,正确的C语言标识符是(C)。
A)%某B)a+bC)a123D)123
选项A中的%,选项B中+不满足(1);选项D中的标识符以数字开
头不满足(2)
8、下列四组字符串中都可以用作C语言程序中的标识符的是(A)。
C语言全部章节习题集及答案
《C语言程序设计》
1 C语言概述
一、单项选择题
第一章 C语言概述
一、选择题:
1、一个C程序的执行是从( A )。
A本程序的main函数开始,到main函数结束
B本程序文件的第一个函数开始,到本程序文件的最后一个函数结束
C本程序的main函数开始,到本程序文件的最后一个函数结束
D本程序文件的第一个函数开始,到本程序main函数结束
2、在 C 语言中,每个语句必须以( D )结束。
A. 回车符
B. 冒号
C. 逗号
D. 分号
3、C 语言规定:在一个源程序中,main函数的位置( C )。
A. 必须在最开始
B. 必须在系统调用的库函数的后面
C. 可以任意
D. 必须在最后
4、一个C 语言程序是由( B )。
A. 一个主程序和若干子程序组成
B. 函数组成
C. 若干过程组成
D. 若干子程序组成
5、下列说法中错误的是( D )。
A. 主函数可以分为两个部分:主函数说明部分和主函数体
B. 主函数可以调用任何非主函数的其他函数
C. 任何非主函数可以调用其他任何非主函数
D. 程序可以从任何非主函数开始执行
6、用 C 语言编写的源文件经过编译,若没有产生编译错误,则系统将( C )。
A. 生成可执行目标文件
B. 生成目标文件
C. 输出运行结果
D. 自动保存源文件
二、填空题:
1、C 语言只有32个关键字和9种控制语句。
2、每个源程序有且只有一个 main 函数,系统总是从该函数开始执行C语言程序。
3、C 语言程序的注释可以出现在程序中的任何地方,它总是以 \* 符号作为开始标记,以 */ 符号作为结束标记。
C语言习题答案全解
P55 算术运算 3.9求下面算术表达式的值. 符 (1)x+a%3*(int)(x+y)%2/4=2.5(x=2.5,a=7,y=4.7)
(2)(float)(a+b)/2+(int)x%(int)y=3.5(设a=2,b=3,x=3.5,y=2.5)
/ (除法运算符。如:5/3) 除号两边为整型则结果为整型 % (模运算符,或称求余运算符,%两侧均应为整型数据, 如:7%4的值为3)。 正负号取决于被除数符号 -7%4的值为-3, -7%(-4)的值仍为-3
4.5请写出下面程序的输出结果. 结果: 57 __5__7 67.856400,-789.123962 67.856400_ ,-789.123962 _ _ _ 67.86, _ -789.12,67.856400,-789.123962,67.856400,-789.123962 6.785640e+001, -7.89e+002 A,65,101,41 1234567,4553207,d687 65535,17777,ffff,-1 COMPUTER, _ _ COM
aa_bb_ _ _cc_ _ _ _ _ _abc _______A_N
3.7将“China”译成密码.密码规律:用原来的字母后面第4个字母代 替原来的字母, 例如,字母“A”后面第4个字母是“E”,用“E”代替“A”. 因此,“China”应译为“Glmre”. 请编一程序,用赋初值的方法使 c1,c2,c3,c4,c5分别变成'G','1','m','r','e',并输出. main() {char c1='C',c2='h',c3='i',c4='n',c5='a'; c1+=4; c2+=4; P62 复合赋值运算符 c3+=4; c4+=4; c5+=4; printf(“The key is%c%c%c%c%c\n",c1,c2,c3,c4,c5); }
C语言课程 课后练习 参考答案
实验6-1
课后练习:
1.选择题
(1)B (2)C(3)A(4)D(5)C (6)C (7)D 2.阅读程序,写出运行结果
30
20
10
3.阅读程序,写出运行结果
20
10
4. 阅读程序,写出运行结果
1 2 3
5.阅读程序,写出运行结果
7 8 9
6.阅读程序,写出运行结果
9
7.阅读程序,写出运行结果
#include <stdio.h>
int digit(int n,int k);
int main()
{ int n,k;
printf("Enter n,k: ");
scanf("%d %d",&n,&k);
printf("\nThe result is:%d\n",digit(n,k));
return 0;
}
int digit(int n,int k)
{ int d;
while(k>0)
{ d=n%10;
n=n/10;
k--;
}
return d;
}
8.程序填空
#include <stdio.h>
double max(double a,double b);
int main()
{ double x,y;
prinf("please input two double numbers:"); scanf("%lf %lf"),&x,&y;
printf("%.2f\n",max(x,y));
return 0;
}
double max(double a,double b)
{
return (a>b?a:b);
}
9.
原版
#include <stdio.h>
int check(int n,int d);
(完整版)C语言基础练习题(含答案)
目录
第1-3章C语言基础知识习题 (2)
1 选择题 (2)
2 填空题 (7)
3 答案及部分解析 (9)
第4章选择结构习题 (11)
1 选择题 (11)
2 填空题 (17)
3 答案及部分解析 (23)
第5章循环结构习题 (26)
1 选择题 (26)
2 填空题: (32)
3 答案及部分解题分析 (39)
第6章数组习题 (41)
1. 单项选择题 (41)
2. 填空题 (44)
3. 判断题 (45)
4. 程序填空题 (45)
5. 阅读程序,分析程序的功能。 (49)
第7章函数习题 (55)
1. 单项选择题 (55)
2. 填空题 (56)
3. 判断题 (57)
4. 程序填空题 (58)
5. 写出下列程序运行结果 (59)
第8章指针习题 (67)
1 选择题 (67)
2 填空题 (69)
第1-3章C语言基础知识习题
1 选择题
1. 以下不是C语言的特点的是()。
A、语言简洁紧凑
B、能够编制出功能复杂的程序
C、C语言可以直接对硬件操作
D、C语言移植性好
2.下列字符序列中,不可用作C语言标识符的是()。
A.abc123 B.no.1 C._123_ D._ok
3.正确的C语言标识符是()。
A._buy_2 B.2_buy C.?_buy D.buy?
4. 请选出可用作C语言用户标识符的一组标识符()。
A.void B.a3_b3 C.For D.2a
define _123 -abc DO
WORD IF Case sizeof
5. 下列符号中,不属于转义字符的是()。
A.\\ B.\0xAA C.\t D.\0
北京工业大学c语言练习3-函数1
1.输出Fibonacci 序列
1.1.题目要求
输入2 个正整数m和n(1<=m,n<=10000),输出m 和n之间所有的Fibonacci数。Fibonacci 序列(第1项起):1 1 2 3 5 8 13 21 ......
要求定义并调用函数fib(n),它的功能是返回第n项Fibonacci数。例如,fib(7)的返回值是13。
输出语句:printf("%ld ", f);
1.2.测试结果(输入结束回车符用表示)
(1)输入:1 10 (m=1, n=10)
输出: 1 1 2 3 5 8 (1到10之间的Fibonacci数)
(2)输入:20 100(m=20, n=100)
输出:21 34 55 89 (20到100之间的Fibonacci数) (3)输入:1000 6000(m=1000, n=6000)
输出:1597 2584 4181 (1000到6000之间的Fibonacci数)
2.输出m 到n之间的所有完数
2.1.题目要求:求完数
输入2 个正整数m和n(1<=m,n<=1000),输出m 到n之间的所有完数(完数就是因子和与它本身相等的数)。
要求定义并调用函数factorsum(number),它的功能是返回number的因子和。例如,factorsum (12)的返回值是16(1+2+3+4+6)。
输出语句:printf("%d ", i);
2.2.测试结果(输入结束回车符用表示)
(1)输入:20 500
输出:28 496
(2)输入:1 100
输出:1 6 28
C语言习题集及答案
目录
第一单元程序设计和C语言 (1)
第二单元顺序程序设计 (3)
第三单元分支程序设计 (7)
第四单元循环程序设计 (14)
第五单元数组..................................................................... 错误!未定义书签。第六单元函数 (23)
第七单元指针..................................................................... 错误!未定义书签。第八单元结构体和共用体..................................................... 错误!未定义书签。第九单元文件..................................................................... 错误!未定义书签。附加题......................................................................................... 错误!未定义书签。模拟试卷一................................................................................. 错误!未定义书签。模拟试卷二................................................................................. 错误!未定义书签。模拟试卷三................................................................................. 错误!未定义书签。
数据结构(C语言版)1800道题及答案[完整版]
数据结构1800例题与答案
第一章绪论
一、选择题(每小题2分)
1.算法的计算量的大小称为计算的( B )。【北京邮电大学2000 二、3 (20/8分)】A.效率B.复杂性C.现实性D.难度
2.算法的时间复杂度取决于(C)。【中科院计算所1998 二、1 (2分)】
A.问题的规模B.待处理数据的初态C.A和B D.都不是
3.计算机算法指的是(①C ),它必须具备(② B )这三个特性。
①A.计算方法B.排序方法
C.解决问题的步骤序列D.调度方法
②A.可执行性、可移植性、可扩充性B.可执行性、确定性、有穷性
C.确定性、有穷性、稳定性D.易读性、稳定性、安全性【南京理工大学1999 一、1(2分)【武汉交通科技大学1996 一、1(4分)】4.一个算法应该是(B )。【中山大学1998 二、1(2分)】
A.程序B.问题求解步骤的描述
C.要满足五个基本特性D.A和C.
5.下面关于算法说法错误的是( D )【南京理工大学2000 一、1(1.5分)】A.算法最终必须由计算机程序实现
B.为解决某问题的算法同为该问题编写的程序含义是相同的
C. 算法的可行性是指指令不能有二义性
D. 以上几个都是错误的
6. 下面说法错误的是(C )【南京理工大学2000 一、2 (1.5分)】
(1)算法原地工作的含义是指不需要任何额外的辅助空间
(2)在相同的规模n下,复杂度O(n)的算法在时间上总是优于复杂度O(2n)的算法(3)所谓时间复杂度是指最坏情况下,估算算法执行时间的一个上界
(4)同一个算法,实现语言的级别越高,执行效率就越低
C语言练习题及答案
C语言练习题及答案
综合强化练习一
一、选择题(每题1分,共40分)
1、以下叙述正确的是( )
A)C语言总是从第一个定义的函数开始执行
B)在C程序中,要调用的函数必须在main函数中定义
C)C程序的执行总是从main函数开始执行的
D)C程序中的main函数必须放在程序的开始部分
2、下列合法的用户标识符为( )
A)_4sum B) static C) 1max D) #dtotal
3、ch为字符型变量,则下面赋值语句正确的为( )。
A)ch="ABC" B) ch="A" C) ch= a D) ch=67
4、C语言中整形常量有哪几种形式( )
A) 十进制、八进制、十六进制
B) 二进制、十进制、八进制、十六进制
C) 二进制、八进制、十六进制
D) 二进制、十进制
5、字符串" China "在内存中占用的字节数是( )
A) 1 B) 2 C) 5 D) 6
6、int x,y; x=7/2;y=7/2.0;则x的值为( )
A) 3.500000 3 B) 3 3.500000
C) 3.500000 3.500000 D)3 3
7、下面程序int x=0x2B; printf("%d",x);的输出结果为( )
A) 2B B) 0x2B C) 43 D) 44
8、实型常量用指数形式表示,下列哪一项不是合法的( )
A) 3.65e3 B)0.356E3 C)356e3 D)3.56e3.0
9、设有语句int a=3;则执行了语句a-= a+=a*a;后变量a的值是( )
A)0 B)3 C) -9 D) -3
北工大c语言在线教育考试系统答案
北工大c语言在线教育考试系统答案
1、关于页眉页脚描述正确的是()。[单选题] *
A. 可插入页码
B. 可插入日期
C. 可插入自动图文集
2、Internet 网络本质上属于()易[单选题] *
A. 电路交换网络
B. 报文交换网络
C. 分组交换网络(正确答案)
D. 虚电路网络
3、把Windows 的窗口和对话框作一比较,窗口可以移动和改变大小,而对话框()。[单选题] *
A.既不能移动,也不能改变大小
B.仅可以移动,不能改变大小(正确答案)
C.仅可以改变大小,不能移动
D.既能移动,也能改变大小
4、()是WPS表格软件中最基本的操作单位。[单选题] *
A.单元格(正确答案)
B.工作表
C.工作簿
5、8.在标准ASCII码表中,已知英文字母A的十进制码值是65,英文字母a的十进制码值是()。[单选题] *
A.95
B.96
C.97(正确答案)
D.91
6、下面关于冯.诺依曼原理的叙述,错误的是()。[单选题] *
A.冯.诺依曼原理规划了计算机的基本结构
B.冯.诺依曼原理是计算机的唯一工作原理(正确答案)
C.冯.诺依曼原理一直沿用至今
D.在现代,冯.诺依曼型计算机结构已有了很大改变
7、把高级语言写的源程序变为目标程序要经过()。[单选题] *
A.编译(正确答案)
B.编辑
C.汇编
8、C:GHz
D:Mbps(正确答案)
下列度量单位中,用来度量计算机外部设备传输率的是______。[单选题] *
A:MB/s(正确答案)
B:MIPS
9、WPS表格中,如果要找出成绩表中所有数学成绩在分以上(包括分)的同学,应该利用()命令。[单选题] *
(完整版)C语言程序设计习题集及答案
C语言程序设计
习题集
东华理工大学
2014.9
基础知识
一单项选择题(每题2分,共44分)
1 以下叙述正确的是___。
A C程序基本组成单位是语句
B C程序每一行只能写一个语句
C 简单C语句必须以分号作为结束符
D 注释语句可以嵌套
2 一个C语言程序是从___开始执行的。
A 程序中第一个函数
B 名为main的函数
C 包含文件(头文件)的第一个函数
D 程序中的第一个语句
3 请选出合法的C语言赋值语句___。
A a=b=58
B i++;
C a=58,b=58
D k=int(a+b);
4 下面标识符中,合法的用户标识符是___。
A 1abc
B include
C a-b-c123
D char
5 以下所列的C语言整形常量中,正确的是___。
A 0x10
B 0976
C 076L
D 01ff
6 C语言中下列运算符的操作数必须为整型的是___。
A %
B ++
C /
D =
7 设a和b均为int型变量,则执行以下语句后的输出为___。
int a=20; int b=3; printf("%d\n",a+=(b%=2));
A 20
B 21
C 0
D 23
8 已知int i;,则执行语句 i=2.6;后,i的值为___。
A 2
B 3
C 2.6
D 不确定
9 以下合法的字符常量为___。
A 'ab'
B '\482'
C '\'
D '\xaf'
10 若y为int型变量,则执行以下语句后,y的值是___。
y=8; y+=y-=y*y;
A 64
B –56
C –112
D –48
11 以下合法的浮点型常量是___。
A e-3
B 1.5e+2.4
C语言习题及标准答案
习题一
【习题1-1】C语言源程序最多可能由________________部分组成?
A) 预处理部分B)变量说明部分
C) 函数原型声明部分D)函数定义部分
【习题1-2】一个完整的C语言源程序最少必须有_______。
A)若干个主函数B)若干个函数
C)且只能有一个主函数D)一个函数
【习题1-3】C语言以函数为源程序的基本单位最主要有利于_______。
A)程序设计结构化B)程序设计模块化
C)程序设计简单化D提高程序设计有效性
【习题1-4】要使得C语言编写的程序能够在计算机上运行并得出正确结果,必须要先经过____________________________________
___。
A)编辑和链接B)编译和链接
C)修改和运行D运行并输入数据
【习题1-5】选择一个C语言集成开发环境并启动它,然后分别输入【例1-1】、【例1-2】、【例1-3】的源程序,依次编译、链接、运行,看看能否达到预想的结果?从中了解程序的开发过程。
习题二
一、单项选择题
【习题2-1】已知’A’的ASCII代码是65,以下程序的输出结果是( )#include "stdio.h"
main( )
{ int c1=65,c2=66;
printf("%c,%c",c1,c2);
}
A.因输出格式不合法,输出错误信息B.65,66
C.A,BﻩﻩﻩﻩD.65,66
【习题2-2】若变量已正确定义,要将a和b中的数进行交换,下面不正确的语句组是()
A. a=a+b,b=a-b,a=a-b;ﻩﻩB.t=a,a=b,b=t;
C.a=t,t=b,b=a; ﻩﻩﻩ
2022年北京工业大学公共课《C语言》科目期末试卷A(有答案)
2022年北京工业大学公共课《C语言》科目期末试卷A(有答案)
一、填空题
1、设x是一个整数(16bit),若要通过xly使x低8位置1,高8位不变,则y的八进
制数是_______。
2、C语言源程序文件的后缀是;经过编译后,生成文件的后缀是;经过
连接后,生成文件的后缀是
3、一个C语言源程序由若干函数组成,其中至少应含有一个________
4、表达式x=6应当读做_______
5、若有定义语句:inte=1,f=4,g=2;float m=10.5,n=4.0,k;,则执行表达式k=(e+f)/g+sqrt((double)n)*1.2/g+m后k的值是_______。
6、以下程序段通过指针变量q,但不移动q,将如图所示连续动态存储单元的值,从第一个元素起依次输出到终端屏幕。请填空。(假设程序段中的所有变量均已正确说明。)
for(k=0;k<10;k++) printf("%d,",_______); printf("\n");
7、下面程序段的运行结果是_______。
x=2;
do{printf("*");x--;)while(!x==0);
8、已有定义int a;float b,x;char cl,c2;为使a=3、b=6.5、x=12.6、
cl='a'、c2='A',正确的scanf函数调用语句是_______,数据输入的形式应为
_______。
9、执行以下程序时,若从第一列开始输入数据,为使变量a=3、b=7、x=8.5、y=71.82、c1='A'、c2='a',正确的数据输入形式是_______。
C语言课后习题答案(最终)
C语言课后习题答案(最终)
第0章习题
1. 将下列十进制数分别转化为二进制数、八进制数和十六进制数:(1)128 (2)511 (3)1024 (4)65535 (5)1048575 答:
(1)10000000、200、80 (2)111111111、777、1FF (3)10000000000、2000、400
(4)1111111111111111、177777、FFFF (5)11111111111111111111、3777777、FFFFF
2. 将下列二进制数转化为十进制数和十六进制数:(1)1100110101B (2)101101.1011B 答:
(1)821、335 (2)45.6875、2D.B
3. 写出下列数的原码、反码、补码:15、-20、-27/32 答:
(1)00001111、00000000、00001111 (2)10010100、11101011、11101100 (3)1.1101100、1.0010011、1.0010100
4. 16位无符号定点整数的数值表示范围为多少?8位补码的表示范围是多少?16位补码的表示范围是多少?答:
5.1968年Dijkstra提出结构化程序设计的思想的原因是什么?简要回答结构化程序设计的经典定义。答:
结构化程序设计概念的提出主要是源于程序结构的层次性与模块化使得构造出来的软件具有良好的可理解性和可维护性,随着软件规模的扩大与复杂性的提高,程序的可维护性成为程序设计者们关注的重要问题之一。
如果一个程序的代码块仅仅通过顺序、选择和循环这3种基本控制结构进行连接,并且每个代码块只有一个入口和一个出口,则称这个程序是结构化的。
北京工业大学c语言练习5-字符串
练习5 字符数组
学号姓名
1.该程序的功能是:将字符数组a中下标值为偶数的元素从小到大排列,其它
元素不变。
#include
#include
int main( void)
{ char a[ ]="natural", t;
int i, j, k;
k=strlen(a); //strlen()函数用来求数组的长度
for( i=0; i
for(j=i+2;j<=k;)
if()
{ t=a[i];
a[i]=a[j];
a[j]=t; }
puts(a);
return 0;
}
2
#include
void main()
{
char s[80];
int i=0;
gets(s);
while(s[i]!='\0')
{
if(s[i]>='a' && s[i]<='z')
s[i]=s[i]-'a'+'A';
i++;
}
puts(s);
}
(1) 若在程序运行时输入Happy!
运行结果是:
(2) 简述程序的主要功能:
2.这个程序的功能是:将以字符串形式给出的时间分解成数值型表示的小时、分钟、秒,并显示输出。例如,字符串形式表示的时间是“10:50:27”,运行程序后,在屏幕上应该显示输出The time is :10 hours, 50 minutes, 27second 的字样。请填空完成。
#include
main( )
{
char time[ ] = "10:50:27";
int hour, minute, second;
hour = (time[0]-'0')*10+time[1]-'0';
minute = (time[3]-'0')*10+____________________ ;
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1. 若从键盘输入 58,则以下程序段的输出结果是(58 58 58): int main(void) { int a; scanf(“%d”,&a); if (a>50) printf(“%d”,a); if(a>40) printf(“%d”,a); if(a>30) printf(“%d”,a); return 0; }
int x, y, z, s; x=2; y=4; z=7; s=fun(fun(x, y), z); printf("%d\n",s); return 0; }
int fun( int m, int n) { if( m>n) return m;
else return n; } (1) 运行结果是::
} return 0; } (1) 若在程序运行时输入 size5<回车>,输出结果是: tjaf5
(2) 简述程序的主要功能: 对字符加密,a 到 y 的向后推一位,z 变成 a,其他不变。
二、填空题
1. 下面程序的功能是计算 100~1000 之间有多少个数其各位数字之和是 5. #include <stdio.h> void main() { inti,s,k,count=0; for(i=100; i<=1000;i++) { s=0;k=i; while(_____k!=0___________) { s=s+k%10; k=____k/10____________; } if(s==5) count++; }
56பைடு நூலகம்
3.
#include<stdio.h>
int main(void)
{
float s[6]={1,3,5,7,9};
float x;
int i;
scanf(“%f”,&x);
for(i=4;i>=0;i--)
if(s[i]>x) s[i+1]=s[i];
else break;
printf(“%d\n”,i+1);
printf(“请输入一个数:\n”);
scanf(“%lf”,&a);
printf(“请输入次方:\n”);
scanf(“%d”,&n);
Pow=mypow(a,n)
;
printf(“%.2lf 的%d 次方为:%.2lf”,a, n, pow);
}
double mypow(double x,int y)
{ char a[ ]="natural", t;
int i, j, k;
k=strlen(a); //strlen()函数用来求数组的长度
for( i=0; i<k-2; i=i+2 )
for(j=i+2;j<=k; j=j+2
)
if( a[i]<a[j]
)
{ t=a[i];
a[i]=a[j];
a[j]=t; }
二、填空题
下列程序的功能是:求出数组 x 中各相邻两个元素的和一次存放到数组 a 中,然后
输出.
#include<stdio.h>
int main(void)
{
int x[10],a[9],i; for (i=0;i<10;i++)
scanf(“%d”,&x[i]); for( i=1 ;i<10;i++)
{
double s=1;
for( ;y>0; y--)
s= s*x
;
return s;
}
练习 4 数值数组
1. #include <stdio.h> main( ) {
int fib[6]; int i; fib[0]=0; fib[1]=1;
一、阅读程序
for (i=2; i<NUM; i++) { fib[i] = fib[i-2]+fib[i-1];
printf("%d",count); } 2. 下面程序的功能是统计正整数的各位数字中零的个数,并求各位数字中的最
大数。 #include <stdio.h> void main() {
intn,count=0,max=0,t; scanf("%d",&n); do{
t=___n%10_____________; if(t==0) count ++; else if(max<t) ______max=t__________; n=____n/10____________; }while(n>0); printf("count=%d,max=%d",count,max); }
letter=7, digit=8, other=5
(2) 简述程序的主要功能:
统计输入字符串中字母数字和其他字符的个数。
3. 请阅读下面的程序,并回答下列问题 #include <stdio.h> void main() { int count, i, n,num; double average, total; printf("Enter n: "); scanf("%d", &n); count = 0; for(i = 1; i <= n; i++){ scanf ("%d", &num);
a[i-1]=x[i]+ x[i-1] ; for (i=0;i<9;i++)
printf(“%d”,a[i]);
}练习 5 字符数组
1. 该程序的功能是:将字符数组 a 中下标值为偶数的元素从小到大排列,其它
元素不变。
#include <stdio.h>
#include <string.h>
int main( void)
printf("Enter n: "); scanf ("%d", &n); printf ( "sum = %d\n", fun(n)); return 0; } 假设输入 6<回车>,运行结果是:
36
2. #include <stdio.h> int fun( int m, int n ) ; int main( ) {
scanf("%d",&a[i]); count=count+prime(a[i]); } printf("count= %d ",count); } (1) 若在程序运行时输入: 1 2 3 4 5 6 7 8 9 10 <回车> 程序的运行结果为:
4
(2) 简述 prime 函数的主要功能: 判断是否是素数,是素数输出 1,不是输出 0
练习 3 函数
一 . 阅读程序
1.
#include <stdio.h>
int fun( int n)
{ int i, sum = 0 ;
for ( i = 1; i <= n; i++ ) sum = sum + (2 * i - 1);
return sum; } int main( void) { int n;
练习 2 循环
一、读程序写结果
1. 阅读下列程序并回答问题:
main()
{
inti,j,k=0,m=0;
for(i=0;i<2;i++)
{
;
/*第 6 行*/
for(j=0;j<3;j++)
k++;
m++;
/*第 9 行*/
}
printf(“k=%d,m=%d\n”,k,m); } (1) 程序的输出是___k=6,m=2___________。 (2) 将第 9 行改为“m=m+k;“ ,程序的输出是____ k=6,m=9_________。 (3) 将第 6 行改为“k=0;”,将第 9 行改为“m=m+k;”,程序的输出是
return 0;
}
如果输入 4,则输出
2
如果输入 5,则输出
3
找到合适的插入位置
4.
#include <stdio.h>
void main(void)
{
int a[10],max,min,i,sum;
for(i=0;i<10;i++)
scanf(“%d”,&a[i]);
max=min=sum=a[0];
2.
#include <stdio.h> int main( void) { int a[8]={ 11,12,13,14,15,16,17,18 };
int i=0, sum=0; while( i<=7 ){
if( a[i]%2==1 ) sum=sum+a[i];
i++; } printf("%d\n",sum); return 0; } 程序的功能是: 计算数列中奇数的和 输出结果是:
________ k=3,m=6____________。 2. 请阅读下面的程序,并回答下列问题 #include <stdio.h> int main() {
int digit=0,letter=0, other=0; charch; printf("Enter a line text:"); do {
ch = getchar(); if((ch>= 'a' &&ch<= 'z' ) || ( ch>= 'A' &&ch<= 'Z'))
letter ++; else if(ch>= '0' &&ch<= '9') digit ++; else
other ++; }while(ch!='\n'); printf("letter=%d, digit=%d, other=%d\n", letter, digit, other); } (1) 若在程序运行时输入 Today_is_2013/12/28<回车>
puts(a);
return 0;
}
2
#include <stdio.h> void main() {
char s[80]; int i=0; gets(s); while(s[i]!='\0') {
if(num%2==0) count++; } printf("%d\n", count); } (1) 若在程序运行时输入: 5<回车> 8<回车> 6<回车> 9<回车> 4<回车> 7<回车> 运行结果是:3
(2) 简述程序的主要功能:
统计输入的数字中偶数的个数
4. 请阅读下面的程序,并回答下列问题 #include <stdio.h> int main(void) { charch; int i; for(i=1;i<=5;i++) { ch=getchar(); if(ch>='a'&&ch<='y') ch=ch+1; else if(ch=='z') ch='a'; putchar(ch);
} for (i=0; i<NUM; i++) {
if (i%3==0) printf("\n"); printf("%6d", fib[i]);
} } (1) 程序的运行结果是: 011 2 3 5(默认 num 等于 6 了)
(2) 简述程序的主要功能:
按后一项等于前两项和的计算方法输出前 6 项,并每隔三个数字换行一次
for(i=1;i<10;i++)
{
sum=sum+a[i];
if(a[i]>max) max=a[i];
if(a[i]<min) min=a[i];
}
printf("max=%d,min=%d,sum=%d\n",max,min,sum);
} (1) 若在程序运行时输入:
3 1 4 7 10 8 9 2 6 5 <回车> 程序的输出结果是:
7
(2) fun 函数的功能:
比较数字大小并输出较大的数
二. 程序填空
1. 下面程序的功能是求 a 的 n 次方。其中自定义 mypow 函数计算 x 的 y 次方。
#include <stdio.h>
void main()
{
double a,pow;
int n;
double mypow(double x,int y);
2. 下列程序运行的输出结果是(9):没有遇到 break 语句,继续执行到 switch 语句结束
int main(void) {
char c=’b’; int k=4; switch(c) {
case ‘a’: k=k+1; break; case ‘b’: k=k+2; case ‘c’: k=k+3; } printf(“%d\n”,k); return 0; }
max=10,min=1,sum=55
(2) 简述程序的主要功能: 输出数组中的最大最小值和所有数的和
5. #include<stdio.h> #include<math.h> int prime(int m) {
int i,result=1; for (i=2; i<=m/2; i++)
if (m % i==0) result =0; if (m==1) result =0; return result; } void main() { int a[10],i,sum=0; for(i=0;i<10;i++) {