《案例式C语言实验与习题指导》勘误表Word文档格式.docx
《《案例式C语言实验与习题指导》勘误表Word文档格式.docx》由会员分享,可在线阅读,更多相关《《案例式C语言实验与习题指导》勘误表Word文档格式.docx(17页珍藏版)》请在冰豆网上搜索。
![《案例式C语言实验与习题指导》勘误表Word文档格式.docx](https://file1.bdocx.com/fileroot1/2023-1/1/438c697e-a32e-4e29-a389-a7b458361f64/438c697e-a32e-4e29-a389-a7b458361f641.gif)
P19
第6行
编写一个程序,求出1~1000之间的完全平方数。
所谓完全平方数是指能够
求出1~1000之间的“完全平方数”。
所谓“完全平方数”是指能够
倒数第12行
2.分析以下程序的功能。
例如,当输入
当输入
P20
倒数第15行
If()continue;
if()continue;
倒数第9行
5.程序填空题以下程序输出1至100之间
以下程序输出1至100之间
P21
10.编程题。
编写一个程序,求出1~1000之间的完全数。
所谓完全数是指这样的数,该数恰好等于它的因子之和
求出1~1000之间的“完全数”。
所谓“完全数”是指这样的数,该数恰好等于它的所有因子之和
P24
倒数第7行
;
再编写程序
再编写主函数
再编写程序输入一个整数
再编写主函数输入一个整数
P30
倒数第17行
6.编辑题。
编写程序,通过
6.编程题。
通过
7.编辑题。
编写程序,在一个
7.编程题。
在一个
倒数第13行
8.编辑题。
编写程序,产生50
产生50
P32
4.程序填空题。
加法口诀表。
输入1个正整数n(1≤n≤10),
输入1个正整数n(1≤n<
10),
P33
第9行
下列程序定义了M×
M的二维数组,
下列程序定义了一个M×
N的二维数组,
(将乘数、被乘数和乘积放入一个二维数组中,再输出该数组)。
(先将乘积放入一个二维数组中,再输出该数组)。
P34
倒数第10行
intmain()
voidmain()
P35
第18行
图8-1
P36
gcom_lcom(intop1,intop2,int*pgcom,int*plcom),其中op1和op2为输入的两个数,*pgcom和*plcom是计算得到的最大公约数和最小公倍数。
gcd_lcm(intop1,intop2,int*pgcd,int*plcm),其中op1和op2为输入的两个数,*pgcd和*plcm是计算得到的最大公约数和最小公倍数。
P37
for(i=0;
i<
3;
i++)
for(j=0;
j<
j++)
n;
P38
设计一个函数process(),在主函数调用它的时候,每次实现不同功能。
输入a,b两个数,调用函数process()4次,分别求a,b的和、差、积、商。
函数process每次计算的结果要求返回主函数中输出。
设计一个函数process(),在主函数中调用,每次可实现两个数字的不同算术运算并返回计算结果。
主函数中输入a,b两个数,调用函数process()4次,分别求a,b的和、差、积、商。
P40
第7行
程序设试过程如下:
程序调试过程如下:
P42
第4行
char*p=s;
/*Errors1*/
char*p=t;
s--;
/*Errors2*/
s++;
/*Errors2*/
第17行
fun(s,t);
/*Errors3*/
fun(&
s,&
t);
找出最长的字符串。
输入5个字符串,输出其中最长的字符串。
P43
第19行
intmain()
voidmain()
P46
5.编程题。
通讯录排序。
建立
编写一个函数计算某日是该年中的第几天
编写一个函数计算某日期是该年中的第几天
时间换算。
用结构体类型
P47
第11行
第21行
P48
第10行
P49
第2行
设置一个共用体类型,包含一个无符号整型成员
设置一个共用体类型,包含一个无符号短整型成员
P51
倒数第14行
P53
4.编程题。
有一个磁盘文件my.txt,编写程序,第一次把文本显示在屏幕上,第二次把它复制到另一个文件your.txt中。
有一个磁盘文件my.txt,将其显示在屏幕上,然后再把它复制到另一个文件your.txt中。
P54
1.编程题。
高精度计算。
编写程序,输入m、n,分别高精度计算n!
、mn和
输入整数m、n,分别实现高精度计算n!
的值
2.编程题。
文本加密和加密。
对于任
第12行
3.编程题。
学生信息管理系统。
设计
计算器。
【实验结果与分析】
从实验内容中选1~2题,将源程序、运行结果和分析及实验中遇到的问题和解决方法写在实验报告中。
将整个内容删除。
P57
第14行
5.若有变量说明语句charm='
\63'
,
5.若有变量说明语句“charm='
;
”,
第22行
9.设有inta=9,
9.设有“inta=9;
执行语句“i+=--i;
”后,
P61
第4~5行
A)getchar();
B)putchar(‘\’’);
C)putchar(‘\108’);
D)scanf("
%d%*2d"
&
a;
&
b);
A)a=getchar();
B)putchar(b);
C)printf(“%c”,a,b);
D)scanf("
执行语句“scanf("
%f%f%f"
a,&
b,&
c);
main()
P62
倒数第19行
printf(“HisquestionisinC:
\\tools\book.exe”);
printf(“Hisquestionisinc:
\\tools\\book.exe”);
P63
第3行
5.Printf函数中用到格式%5s,
5.printf函数中用到格式%5s,
当执行第一个输入语句时,从键盘输入:
12.3,
当执行输入语句时,从键盘输入:
12.345,
P67
1.if语句控制条件的逻辑表达式只有
1.if语句中控制条件的表达式只有
P70
13.关系运算符、逻辑运算符、算术运算符和
13.关系运算符、逻辑运算符(不包含逻辑非!
)、算术运算符和
,将程序补充完整。
,将语句代码补充完整。
其中,购物的折扣率:
为购物金额不超过500元不打折;
当购物金额不超过500元不打折;
P72
1.编程实现输入两个整数,如果同是奇数
1.输入两个整数,如果同是奇数
第13行
2.编写程序计算分段函数:
2.计算分段函数:
第20行
操作人员根据提示选择,程序根据输入的时间序号显示相应的问候信息。
根据输入的序号显示相应的问候信息。
要求能够判断出输入的日期是否非法,如输入的月份或天数越界。
要求能够判断输入的日期中月份或天数是否越界。
P77
D)从多层循环嵌套中退出时只能使用goto语句
D)从多层循环嵌套中强行退出时可使用goto和continue语句
第25行
scanf("
%d"
x);
%d"
x);
do{--k;
}while(!
i!
=2);
}while(!
k!
P80
printf("
\n"
);
删除此行
P85
6.电文加密问题。
已知电文加密规律为:
6.已知电文加密规律为:
9.牛的繁殖问题。
有一头母牛,
9.有一头母牛,
P87
C)实参与形参类型必须一致
C)实参与形参个数相同,类型一一对应
B)局部变量的生存期只限于本次函数调用
B)静态局部变量的生存期只限于本次函数调用
P89
倒数第11行
10.下列函数的功能是将一个正整数n的每位数分离出来并将其求和。
10.下面程序的功能是将一个正整数n的每位数分离出来并将其求和。
P92
倒数第18行
fun(intp)
voidfun(intp)
P93
func(inta,intb)
intfunc(inta,intb)
intfun(intp)
P94
fun(intk)
voidfun(intk)
第15行
f(inta)
intf(inta)
P96
even(intn)判断数的奇偶性,
even(intn)判断数的奇偶性,
P97
A)inta[10]=(0,0,0,0,0);
B)inta[10]={};
C)inta[10]={0};
D)inta[10]={10*1};
A)inta[5]=(0,0,0,0,0);
B)inta[5]={};
C)inta[5]={0};
D)inta[5]={1,2,3,4,5,6};
P100
第17
12.下列程序的功能是从键盘输入不相同的10个数存入数组a中,
12.下列程序的功能是通过键盘输入10个互不相同的整数存入数组a中,
13.下列程序的功能是使5×
5数组的对角线元素为1,
5矩阵的两条对角线元素为1,
P101
newp=p;
newp=p;
P105
move(inta[],intn,intm)
voidmove(inta[],intn,intm)
P106
P108
6.设有说明“int(*ptr)[M];
6.设有说明“int(*ptr)[M];
D)以上均不对
D)VC环境下编译出错
P109
inty=1,x,*p;
inty=1,x,*p;
P110
第21~22行
for(i=0;
10;
i++)printf("
%d,"
a[i]);
9;
%d\n"
P111
inta[3][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12}},*p=a;
inta[3][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12}},*p=a[0];
P114
倒数第16行
inta[6]={20,15,32,47,36,28};
inta[6]={20,12,32,47,36,28};
P115
swap(int*px,int*py)
voidswap(int*px,int*py)
P116
4.设有一个班级有m个学生,5门课程,输入每个学生的各门课程,
4.设一个班级有m个学生,n门课程,输入每个学生的各门课程的成绩,
P118
f(char*s)
intf(char*s)
P119
sss(char*s,char*t)
intsss(char*s,char*t)
P120
P121
expand(chars[],chart[])
voidexpand(chars[],chart[])
index(chars[],chart[])
intindex(chars[],chart[])
P122
if与上一行for对齐
for(j=i,k=0;
_______&
s[j]==t[k];
j++,k++);
if(_______)return(i);
P123
P124
8.从主字符串str中的第n个字符开始,
8.从字符串str中的第n个字符开始,
10.字符串复制。
要求定义并调用函数strmcpy(s,t,m),
10.要求定义并调用函数strmcpy(s,t,m),
12.用指针数组编程实现:
从键盘任意输入一个数字表示月份值n,程序输出该月份的英文表示,
输入一个数字表示月份值n,输出该月份的英文表示,
13.大整数加法。
使用一维数组存储一个超长整数,用此法实现两个40位整数的加法运算。
13.使用一维数组存储一个超长整数,实现两个40位整数的加法运算。
P126
enumteam{my,you=4,his,her=his+10};
enumteam{my,your=4,his,her=his+10};
第26行
A)可以对共用体变量名直接赋值
A)可以对共用体变量名直接赋常量值
A)枚举变量只能取对应枚举类型的枚举元素表中的元素
A)枚举变量只能取对应枚举类型的枚举元素表中的值
P127
}date,*p;
}data,*p;
man=0;
man=li;
P130
stuctnode*next;
structnode*next;
P133
倒数第6行
1.编写程序,实现输入的时间屏幕显示一秒后的时间。
显示格式为HH:
MM:
SS。
1.输入时间,要求在屏幕上显示一秒种以后的时间。
时间输入和显示格式均为HH:
2.计算平均成绩。
建立一个学生的结构记录,
2.建立一个学生的结构记录,
P134
3.通讯录排序。
建立一个通讯录的结构记录,
3.建立一个通讯录的结构记录,
10.掷骰子游戏。
编写程序模拟掷骰子游戏。
10.编写程序模拟掷骰子游戏。
P137
A)x&
0177700B)x&
077C)x177D)视x类型而定
A)x&
=0177700;
B)x&
=077;
C)x^=177;
D)x|=177;
P140
A)0B)地址值C)1D)EOF
A)NULLB)非0地址值C)1D)EOF
P141
A)fprintf函数()
A)fputs函数()
18.使用语句fp=fopen("
d:
\pic.dat"
"
ab+"
)成功打开文件后,
\\pic.dat"
P142
第5行
文件指针,那么数据块中每个数据项的大小为______。
文件指针,那么数据块读写函数中形参size所对应的实参为______。
fp=fopen("
test_b.dat"
"
wb"
if((fp=fopen("
))==NULL)
{printf(“文件打开错误!
”);
exit(0);
}
P143
例如,2+22+222+2222(此时,a是2,n是4)的结果是2468。
填空完成程序。
例如,2+22+222+2222(此时a是2,n是4)的运行结果如图所示。
PRINT(intm,intn,longs)
voidPRINT(intm,intn,longs)
2.通过键盘输入5个字符(ABCDE),
2.通过键盘输入若干个字符,
P146
第1~6行
{
floatr=5;
/*定义半径r并赋初值为5*/
doublev;
v=PI*r*r*r*4/3;
printf("
v=%f\n"
v);
}
{floatr=5;
doubles,v;
s=4*PI*r*r;
v=PI*r*r*r*4/3;
s=%lf,v=%lf\n"
s,v);
P147
12.30
12.24
P156
P158
2.C
2.B
P162
12.1add(n-1)add(m)
12.1add(n-1)add(n)
P163
P164
P165
P166
P167
P169
16.D
16.B
P171
P173
P174
P175
P176
7.B
7.D
内存地址
内存单元
3.下标法指针法a[3]p+3
3.下标法指针法*(a+3)*(p+3)
6.pq<
=p+10
p+n
1.102040
1.10,20,40
3.55
3.sum=55
9.beforeswapa=5,b=10;
afterswapa=5,b=10
9.beforeswapa=5,b=10
afterswapa=5,b=10
10.beforeswapa=5,b=10;
inswa