c语⾔编程基础输⼊输出题,c语⾔编程基础习题答案aver=sum/n; /* 求取平均成绩 */ return(aver); /* 返回主程序值 */
}
⑸ 显⽰菜单并实现相应选择功能的程序,编写如下: #include <> main() {
int i;
while (i!=3) {基础c语言代码
clrscr( );
printf(\printf(\求整数n的⽴⽅\\n\printf(\求整数n的⽴⽅根\\n\printf(\结束程序\\n\
printf(\scanf(\if (i==1) lifang();
else if (i==2) lifanggen(); } }
lifang() {
int n; long s;
printf(\scanf(\s=pow(n,3);
printf(\的⽴⽅为:%ld\\n\\n\}
lifanggen() {
int n; double s;
printf(\scanf(\s=(double)1/3; s=pow(n,s);
printf(\的⽴⽅根为:%f\\n\\n\}
⑹ ⽤递归法求n!的程序,编写如下: main()
{
long f(),t; int n;
printf(\scanf(\t=f(n);
printf(\的阶乘为:%ld\}
long f(int n) {
static long s=1; if (n>1) f(n-1); s*=n; }
习题⼋
1、填空。
(1) ⽂件是存贮在外部存贮设备上的_信息集合_。⼀般分为_程序_⽂件和_数据_⽂件。
(2) C 语⾔⽂件存贮在磁盘上有两种形式 , ⼀种是按_ASCII码存储_, 另⼀种是按_⼆进制码存储_。
(3) 定义⽂件指针变量的格式为__FILE *fp__ 。
(4) feof()函数是_⽂件尾_ 检测函数,当⽂件位置指针处于_⽂件尾_ 时,它返回⼀个__⾮0_ 值。
(5) 对流式⽂件可以进⾏顺序读写,也可以进⾏随机读写,关键是_如何控制⽂件的位置指针_ 。
2、回答问题。
⑴ 有三⼤好处:①保存运算的中间结果或最终结果,⽅便使⽤;②将数据独⽴于程序之外,便于多处、多⼈共享;③事先录⼊保存所需数据,可以提⾼程序运⾏时的效率。
⑵ 在ASCII码⽂件中,⼀个字节代表⼀个字符,便于字符的输⼊输出处理,但占⽤存储空间较⼤;⼆进制⽂件占⽤的存储空间较⼩,但在⽂件中,⼀个字节并不代表⼀个字符。
⑶ w: 创建⼀个ASCII码⽂件只写;
r: 打开⼀个ASCII码⽂件只读; a: 打开⼀个ASCII码⽂件添加; wb: 创建⼀个⼆进制⽂件只写; rb+:打开⼀个⼆进制⽂件读/写。
⑷ ⽂件操作完以后及时关闭,可将⽂件指针脱离该⽂件,并将内存缓冲区中的数据写⼊磁盘,⽤以保证写⼊⽂件的数据完整。
⑸ EOF在中定义为-1,它也是⼀个合法的⼆进制整数,⽤fgetc()函数检查⽂件尾容易发⽣错判。
3、程序改错。
⑴ 该程序是要求将键盘上输⼊的⼀些字符写⼊磁盘⽂件中,程序中有两处错误:
① (检查⽂件是否存在且要向⽂件写,注意⽂件名和打开⽅式)
fp=fopen(\应改为:fp=fopen(\w\② (向⽂件中写⽽不是读) fgetc(fp); 应改为:fputc(c,fp);
⑵ 该程序是要求从⽂件中读并统计其正数、负数和零的个数,在屏幕上显⽰。程序中有两处错误:
① (当不是⽂件尾时才读取并统计)
while(feof(p)==1) 应改为: while(feof(p)==0) ②(f为存储负数的变量应取i<0)
else if(i=0)f++; 应改为:else if(i<0)f++; 4、编写程序。
⑴ 将字符串写⼊⽂件的程序,编写如下: #include <> FILE *fp; main() {
char a[2][8]={\fp=fopen(\fputs(a[0],fp); fputs(a[1],fp); fclose(fp); }
⑵ 将字符串从⽂件中读出的程序,编写如下: #include <> FILE *fp; main() {
char *a;
if((fp=fopen(\{ printf(\exit(1);}
fgets(a,13,fp); clrscr();
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论