当前位置:首页 > 《C语言编程基础》习题答案
..
printf(\fclose(fp); }
⑶ 将三个数写入文件的程序,编写如下: #include
int a,b,c;
fp=fopen(\
fprintf(fp,\fclose(fp); }
⑷ 将数值从文件中读出并求其和的程序,编写如下: #include
int a,b,c;
if (!(fp=fopen(\{ printf(\exit(1);}
fscanf(fp,\
printf(\fclose(fp); }
⑸ 将 10 个整数写入文件的程序,编写如下: #include
int i,a[10]={8,2,6,4,5,9,1,3,7,4}; fp=fopen(\for (i=0;i<10;i++) {
fwrite(&a[i],2,1,fp); }
fclose(fp); }
⑹ 将指定位置的整数从文件中读出的程序,编写如下:
;.
..
#include
int n,i,num;
if (!(fp=fopen(\{printf(\exit(1);}
printf(\输入数值 i:\scanf(\n=2*(i-1);
fseek(fp,n,SEEK_SET); fread(&num,2,1,fp);
printf(\第%d号数据是 :%d\\n\fclose(fp); }
习题九
1.选择题。
⑴ 将 C的库函数中数学函数库的头文件包含到程序中,应在程序的头部加上 ( C ) 。
⑵ 欲将一个文件 file.c
包含到程序中,应该在程序的头部加上(
B )。
B )符号开头的。
A )。
⑶ “文件包含”预处理语句的使用形式中, 当#include 后面的文件名用“ ” 括起时,寻找被包含的文件的方式为(
⑷ 在 C语言中,编译预处理命令都是以( 2、分析下列程序,写出运行结果。
⑴ 该程序是定义了一个带参数的宏: S(x) ,在程序运行时它的置换内容是 x*x ,用实参代替形参后计算( 3+1)的平方。其运行结果为:
a=16
⑵ 该程序是定义了一个带两个参数的宏: MIN(x,y) ,在程序运行时它的置换内容是条件表达式 (x)<(y)?(x):(y)
500
⑶ 该程序运行时,先执行宏 PRINT1,输出 A*B 的值,然后执行宏 PRINT, 输出回车换行;最后执行宏 PRINT2,输出 (A+1)*(B+1) 的值,运行结果为:
15 24
⑷ 在该程序中,定义宏时用了宏嵌套,控制循环终值的宏
(M+1)*M/2=(N+1+1)*[(N+1)/2]=(2+1+1)*[(2+1)/2]=4*2=8 运行结果为:
,用实参代替形参后其运行结果为:
NUM,其值应为:
;.
..
12345678
3、编程题。
⑴ 用带参数的宏实现求两个整数相除取余的程序,编写如下:
⑵
⑶
;.
#define DIV(x,y) x%y main() {
int a,b,d;
scanf(\d=DIV(a,b); printf(\}
利用宏按从大到小顺序输出 3 个整数的程序,编写如下:#define chag(x,y) (x=x+y,y=x-y,x=x-y) main() {
int a,b,c;
printf(\输入 3 个整数:\\n\scanf(\if (a
printf(\}
按题目要求,利用条件编译方法编写程序如下:#include
char *a;
printf(\输入字符串 :\\n\scanf(\#if LOWCASE a=strlwr(a); #else
a=strupr(a); #endif
printf(\}
习题十
..
1. 选择题。
⑴ 若已定义“int *p,a; ”,则语句“p=&a”中的运算符“ &”的含义是( D )。 ⑵ 执行该程序断后, a 的值为( B ) 。 ⑶ 该程序段的运行结果是( A ) 。 ⑷ 若有定义 int a[3][5],i,j; 不正确的是( D ) 。
⑸ 设有语句“ int (*p)()
”,则 p 是一个( B )。
⑹ 给出程序的输出结果为( A ) 。
2. 填空题。
(且 0≤ i < 3,0 ≤j <5) ,则 a[i][j] 的地址
⑴ 以下程序用来输出字符串。
printf(
“ %s\\n”,
*p );
⑵ exchange 函数的调用语句为“ exchange(&a,&b,&c); ”。他将 3 个数按由小到大的顺序调整后依次放入 a,b,c 三个变量中, a 中放最大值,请填空。
if(*q3>*q2) swap( if(*q1<*q3) swap( if(*q1<*q2) swap( while(j<10) scanf( void func(int x,int y, _ { *z=x+y; }
⑸ 该程序的输出结果是 7 。
q2,q3 ); q1,q3 ); q1,q2 ); “%d” ,
&a[j] );
⑶ 以下程序段完成给数组所有元素输入数据。
⑷ 以下函数用来求出两整数之和,并通过形参将结果传回,请填空。
int * _ z)
3. 分析下列程序,写出运行结果。
⑴ 该程序用指针变量取得 a、b 的地址,用来比较哪个地址中变量的值更大并输出。运行结果如下:
max=33
⑵ 该程序用指针变量做循环控制变量,控制输出字符的个数。运行结果如下:
ABCDE BCDE CDE DE E
⑶ 利用指针做函数参数,在执行子函数时,将 值赋给了 d。输出 c、d,运行结果如下:
7,1
a+b 的值赋给了 c,a-b 的
;.
共分享92篇相关文档