浙工大C语言复习题与参考答案
更新时间:2024-05-24 12:11:01 阅读量: 综合文库 文档下载
- 浙工大c语言答案推荐度:
- 相关推荐
C程序设计复习题集 目 录
一、C语言程序设计复习题
⒈ 单项选择题 ??????????????????? 41 ⒉ 填 空 题 ??????????????????? 45 ⒊ 写输出结果题 ??????????????????? 46 ⒋ 程序填空题 ??????????????????? 53 ⒌ 编 程 题 ???????????????????? 61 三、C语言程序设计复习题答案
⒈ 单项选择题 ???????????????????? 62 ⒉ 填 空 题 ???????????????????? 63 ⒊ 写输出结果题 ???????????????????? 63 ⒋ 程序填空题 ???????????????????? 64 ⒌ 编程题(参考) ???????????????????? 65
C程序设计习题集 1
C语言程序设计复习题
1 单项选择题
在每小题的四个备选答案中选出一个正确的,并将正确答案号码填在题后括号内。 1. 用C语言编写的源文件经过编译,若没有产生编译错误,则系统将( )。 A、生成可执行目标文件 B、生成目标文件 C、输出运行结果 D、自动保存源文件
2. 在C集成环境执行菜单命令“运行”,若运行结束且没有系统提示信息,说明( )。 A、源程序有语法错误 B、源程序正确无误
C、源程序有运行错误 D、源程序无编译、运行错误,但仅此无法确定其正确性 3. 程序运行输出了错误的结果,可以排除下列哪一个因素( )。
A、算法错误 B、运行时输入数据错误 C、未通过编译 D、系统资源配置不当 4. 下列各个错误中,属于编译错误的是( )。
A、数组下标超界 B、“==”误写为“!=” C、死循环 D、括号不配对 5. 若int类型数据字长为4,其最大值为( )。
A、2 B、2-1 C、2-1 D、2 6. 常数的书写格式决定了常数的类型和值,03322是( )。 A、16进制int类型常数 B、8进制int类型常数 C、10进制int类型常数 D、10进制long int类型常数 7.“e2”是( )。
A、实型常数100 B、值为100的整型常数 C、非法标识符 D、合法标识符 8. 要为字符型变量a赋初值,下列语句中哪一个是正确的( )。
A、char a='3'; B、char a=\、char a=%; D、char a=*; 9. 要为float类型变量x、y、z赋同一初值3.14,下列说明语句哪一个是正确的( )。 A、float x,y,z=3.14; B、float x,y,z=3*3.14; C、float x=3.14,y=3.14,z=3.14; D、float x=y=z=3.14; 10. 语句“float pi=3.1415926535;”将( )。
A、导致编译错误 B、说明pi为初值3.1415926535的单精度实型常数 C、导致运行时的溢出错误 D、说明pi为初值3.141593的单精度实型常数 11. 算术运算符、赋值运算符和关系运算符的运算优先级按从高到低依次为( )。 A、算术运算、赋值运算、关系运算 B、算术运算、关系运算、赋值运算 C、关系运算、赋值运算、算术运算 D、关系运算、算术运算、赋值运算 12. 关系运算符中优先级最低的运算符是( )。
A、“>=”和“<=” B、“>”和“<” C、“==”和“!=” D、“<=”和“<” 13. 逻辑运算符中,运算优先级按从高到低依次为( )。
A、&&,!,|| B、||,&&,! C、&&,||,! D、 !,&&,|| 14. 对C程序在作逻辑运算时判断操作数真、假的表述,下列哪一个是正确的( )。 A、0为假非0为真 B、只有1为真 C、-1为假1为真 D、0为真非0为假 15. 表达式 x==0&&y!=0||x!=0&&y=0等效于( )。
31
31
32
32
2 C程序设计习题集
A、x*y==0&&x+y!=0 B、x*y==0&&(x+y==0) C、x==0||y==0 D、x*y=0||x+y=0 16. 表达式!x||a==b等效于( )。
A、!((x||a)==b) B、!(x||y)==b C、!(x||(a==b)) D、(!x)||(a==b) 17. 下列格式符中,哪一个可以用于以8进制形式输出整数( )。 A、%d B、? C、%o D、%ld 18. 下列格式符中,哪一个可以用于以16进制形式输出整数( )。 A、d B、%8x C、?6 D、%d
19. a是int类型变量,c是字符变量。下列输入语句中哪一个是错误的( )。 A、scanf(\、scanf(\ C、scanf(\、scanf(\
20. 字符变量ch='A',int类型变量K=25,语句printf(\输出( )。 A、65,253 B、65 253 C、65,25 D、A 25 21. 下列各语句序列中,能够且仅输出整型变量a、b中最大值的是( )。 A、if(a>b) printf(\ B、printf(\ C、if(a>b) printf(\ D、if(a
22. 下列各语句序列中,能够将变量u、s中最大值赋值到变量t中的是( )。 A、if(u>s)t=u; t=s; B、t=s; if(u>s)t=u; C、if(u>s)t=s; else t=u; D、t=u; if(u>s)t=s; 23. 下列各语句中,能够输出整型变量a、b中最大值的是( )。
A、printf(\、(a>b)? printf(\ C、printf(\、printf(\24. 下列语句应将小写字母转换为大写字母,其中正确的是( )。
A、if(ch>='a'&ch<='z') ch=ch-32; B、if(ch>='a'&&ch<='z')ch=ch-32; C、ch=(ch>='a'&&ch<='z')?ch-32:''; D、ch=(ch>'a'&&ch<'z')?ch-32:ch; 25. 求整数1至10的和并存入变量s,下列语句中错误的是( )。
A、s=0;for(i=1;i<=10;i++) s+=i; B、s=0;i=1;for(;i<=10;i++) s=s+i; C、for(i=1,s=0;i<=10;s+=i,i=i+1); D、for(i=1;s=0;i<=10;i++) s=s+i; 26. 若sizeof(int)为2,计算1至10的乘积,下列语句序列中正确的是( )。 A、int jc=1; for(int i=2;i<=10;i++) jc*=i; B、for(float jc=1,int i=2;i<=10;i++,jc*=i); C、float jc=1; for(int i=2;i<=10;jc*=i,i=i+1); D、for(float jc=1;i=2;i<=10;i++) jc*=i;
27. 下列语句中,哪一个可以输出26个大写英文字母( )。
A、for(a='A';a<='Z';printf(\、for(a='A';a<'Z';a++)printf(\ C、for(a='A';a<='Z';printf(\、for(a='A';a<'Z';printf(\28. 与语句 while(i>=0&&i<=10) { if(i++==5)continue; printf(\ 功能相同的是( )。
A、for(;i>=0&&i<=10;i++) if(i!=5) printf(\
C程序设计习题集 3
B、for(;i>=0&&i<=10;i++) if(i==5) printf(\
C、for(;i>=0&&i<=10;i++) if(i!=5) printf(\ D、for(;i<=0&&i>=10;i++) if(i!=5) printf(\
29. 下列语句中与语句 while(1){if(i>=100)break;s+=i;i++;} 功能相同的是( )。 A、for(;i<100;i++) s=s+i; B、for(;i<100;i++;s=s+i); C、for(;i<=100;i++) s+=i; D、for(;i>=100;i++;s=s+i); 30. 下列各语句定义了数组,其中哪一个是不正确的( )。
A、char a[3][10]={\、int x[2][2]={1,2,3,4}; C、float x[2][]={1,2,4,6,8,10}; D、int m[][3]={1,2,3,4,5,6}; 31. 下列各语句定义了数组,其中哪一个是正确的( )。
A、char a[10],*p=a[0] B、int d[2][]={1,2,3,4,5,6}; C、float x[][3]={1,2,4,6,8,10}; D、int m[][]={\32. 数组定义为 int a[3][2]={1,2,3,4,5,6},下列表述中正确的是( )。 A、数组元素a[3][2]的值为6 B、数组元素a[6]的值为6 C、数组元素a[0]的值为1 D、a[0]不是int类型的数组元素 33. 用宏名定义一个字符串,下列表述中哪一个是正确的( )。 A、#define pi=3.14159; B、define pi=3.14159 C、#define pi \、#define pi(3.14159);
34. 定义带参数的宏计算两式乘积(如x+3·x-5与x-6),下列定义中哪个是正确的( )。 A、#define muit(u,v) u*v B、#define muit(u,v) u*v; C、#define muit(u,v) (u)*(v) D、#define muit(u,v)=(u)*(v) 35. 宏定义 #define div(a,b) a/b 的引用 div(x+5,y-5) 替换展开后是( )。 A、x+5/y-5 B、x+5/y-5; C、(x+5)/(y-5) D、(x+5)/(y-5); 36. 定义带参数的宏“#define jh(a,b,t) t=a;a=b;b=t”,使两个参数a、b的值交换,下 列表述中哪个是正确的( )。
A、不定义参数a和b将导致编译错误 B、不定义参数a、b、t将导致编译错误 B、不定义参数t将导致运行错误 D、不必定义参数a、b、t类型 37. 下列语句定义p为指向float类型变量d的指针,其中哪一个是正确的( )。 A、float d,*p=d; B、float d,*p=&d; C、float *p=&d,d; D、float d,p=d; 38. 对语句“int a[10],*p=a;”,下列表述中哪一个是正确的( )。
A、*p被赋初值为a数组的首地址 B、*p被赋初值为数组元素a[0]的地址 C、p被赋初值为数组元素a[1]的地址 D、p被赋初值为数组元素a[0]的地址 39. p1指向某个整型变量,要使指针p2也指向同一变量,哪一个语句是正确的( )。 A、p2=*&p1; B、p2=**p1; C、p2=&p1; D、p2=*p1; 40. 假如指针p已经指向变量x,则&*p相当于( )。
A、x B、*p C、&x D、**p 41. 假如指针p已经指向某个整型变量x,则(*p)++相当于( )。 A、p++ B、x++ C、*(p++) D、&x++ 42. 数组定义为“int a[4][5];”,引用“a+3”表示( )。
A、a数组第4列的首地址 B、a数组第1行第4列元素的值
2
4 C程序设计习题集
C、a数组第4行的首地址 D、a数组第1列第4行元素的值 43. 数组定义为“int a[4][5];”,引用“a[1]+3”表示( )。
A、a数组第2行第4列元素的地址 B、a数组第2行第4列元素的值 C、a数组第4行的首地址 D、a数组第1行第4列的首地址 44. 数组定义为“int a[4][5];”,引用“*(*a+1)+2”表示( )。 A、a[1][0]+2 B、a数组第1行第2列元素的地址 C、a[0][1]+2 D、a数组第1行第2列元素的值 45. 数组定义为“int a[4][5];”,下列哪一个引用是错误的( )。 A、*a B、*(*(a+2)+3) C、&a[2][3] D、++a
46. 共用体定义为“union data {char ch;int x;} a;”,下列哪一个是正确的( )。 A、a.ch='x';a=10; B、a='x',10; C、a.x=10;a.ch='x'; D、a='x'; 47. 共用体定义为“union data {char ch;int x;} a;”,下列哪一个是不正确的( )。 A、a={'x',10}; B、a.x=10;a.x++; C、a.ch='x';a.ch++; D、a.x=10;a.ch='x'; 48. 按位与运算:int a=7,b=12,c=a&b; 变量c的值是( )。 A、19 B、4 C、5 D、9 49. 按位或运算:int a=6,b=8,c=a|b; 变量c的值是( )。 A、2 B、14 C、48 D、-2 50. 按位异或运算:int a=14,b=15,c=a^b; 变量c的值是( )。 A、1 B、15 C、-1 D、29 51. 按位取反运算:int a=16,c=~a;,变量c的值是( )。 A、17 B、7 C、84 D、-17 52. 左移运算:int a=16,c=a<<2; 变量c的值是( )。 A、67 B、4 C、1 D、64 53. 右移运算:int a=16,c>>2; 变量c的值是( )。 A、8 B、1 C、4 D、64
54. 以“只读”方式打开文本文件a:\\aa.dat,下列语句中哪一个是正确的( )。 A、fp=fopen(\、fp=fopen(\ C、fp=fopen(\、fp=fopen(\55. 以“追加”方式打开文本文件a:\\aa.dat,下列语句中哪一个是正确的( )。 A、fp=fopen(\、fp=fopen(\ C、fp=fopen(\、fp=fopen(\56. 为读写建立一个新的文本文件a:\\aa.dat,下列语句中哪一个是正确的( )。 A、fp=fopen(\、fp=fopen(\ C、fp=fopen(\、fp=fopen(\
C程序设计习题集 5
2 填空题
1. 设float x=2.5,y=4.7; int a=7;,表达式 x+a%3*(int)(x+y)%2/4 的值为 。 2. 设 int x=17,y=5; 执行语句 x+=--x%--y 后x的值为 。 3. 设 int x=17,y=5; 执行语句 x%=x++/--y 后x的值为 。
4. 设 int a=7,b=6,c=5;,表达式 (a+b)>(c*c)&&b==c||c>b 的值为 。 5.设 int a=3,b=5,c=7;,表达式a>c||c>b!=0&&c==b+a 的值为 。 6.已知三角形边长a、b、c和s=(a+b+c)/2,计算其面积的算术表达式为 。 7. 方程ax+bx+c=0系数a、b、c且存在两个实根,计算其中一个实根的算术表达式为 。
8. p为本金,r为1年期存款年利率,计算存款p元5年到期时本金、利息总和(计复利)的算术表达式为 。
9.将数学式 (x+1)e 写作算术表达式为 。 10.ch是字符变量,判断ch为大写英文字母的逻辑表达式为 。 11. 判断int类型变量n是否为两位整数的逻辑表达式为 。 12. 判断变量a、b的值均不为0的逻辑表达式为 。 13. 判断变量a、b是否绝对值相等而符号相反的逻辑表达式为 。 14. 判断变量a、b中必有且只有一个为0的逻辑表达式为 。 15. m是值为两位数的整型变量,判断其个位是奇数而十位数是偶数的逻辑表达式为 。 16. 求解赋值表达式 a=5+(c=6)后表达式值、a、c的值依次为 。 17. 求解赋值表达式 a=(b=10)%(c=6),表达式值、a、b、c的值依次为 。 18. 求解逗号表达式 x=a=3,6*a后,表达式值、x、a的值依次为 。 19. 求解逗号表达式 (a=15,a*4),a+5,表达式值、a的值依次为 。 20. 求变量a、b中最大值的条件表达式为 。
21. 若 a=13、b=25、c=-17,条件表达式 ((y=(a='a'&&s<='z')?s-32:s; 字符变量s的值为 。 23. 整型变量x的值为25,语句\的输出结果为 。 24. 整型变量m的值为27,语句 printf(\的输出结果为 。 25. 语句printf(\的输出结果为 。
26. 若int k=10, 循环语句while (k=0) k=k-1; 执行 次。
27.若int k=2, 循环语句while (k!=0) { printf(\执行 次。 28. 若int i=10,s=0;,执行语句while(s+=i--,--i);后s、i值分别为 。 29. 语句for(int s,i=1;i<=100;s+=i,i++); 能否计算1~100的和?原因是 。 30. 若int类型变量字长为2,程序段 int jc=1; for(int i=2;i<10;i++)jc*=i; 能否计算10的阶乘? 原因是 。
31. 定义a为共有10个元素的静态存储int类型数组的语句为 。 32. 定义a为长度为10的字符串、同时为字符串赋初值\的语句为 。 33. 定义a为共有5个元素的一维整型数组、同时定义p为指向a数组首地址的指针变量的语句为 。
34. 定义a为4行5列的整型数组、同时定义p为指向a数组首地址的指针变量的语句为 。 35. 如定义语句为“char a[]=\”,
2x
2
6 C程序设计习题集
语句\的输出结果为 。 36. 定义语句为 char a[15],b[]=\,则语句 printf(\ 的输出结果为 。
37. 定义 char a[]=\,语句 printf(\输出 。 38. 定义 char a[10]=\,语句\输出结果为 。 39. 定义 char a[]=\,语句 printf(\输出 。 40. 定义 char a[]=\,
执行for(int i=0;*p!='\\0';p++,i++); 后i的值为 。
41. 宏定义 #define f(x,y) printf(x,y) 的引用 f(\置换展开后为 。 42. 宏定义 #define f(x,y) fopen(x,y) 的引用 f(\置换展开后为 。 43. 宏定义 #define f(c) c>='A'&&c<='Z' 的引用 f(x[i]) 置换展开后为 。 44.表达式 3&5、3|5、3||5 的值分别为 、 、 。
45.设 int x=707,表达式 x^x、x|x、~x^x 的值分别为 、 、 。
46.设 int x=0707,表达式 ~x&&x、!x&&x、x>>3&~0的值分别为 、 、 。 47. 函数的参数为int类型时,虚参与实参结合的传递为 。 48. 函数的参数为float类型时,虚参与实参结合的传递为 。 49. 函数的参数为char* 类型时,虚参与实参结合的传递为 。 50. 函数的实参为常量时,虚参与实参结合的传递为 。 51.对下列递归函数,函数调用f(3)的返回值是 。 int f(int n) { return((n==0)?1:f(n-1)+2);}
52.函数f定义如下,调用f(\的返回值为 。 int f(char *s) { int k=0; while(*s) k+=*s++-'0'; return k;}
53. 函数change定义如下,a=10、b=5,执行 change(a,b)后a、b的值分别为 。 void change(int a,int b) { int t=0; t=a; a=b; b=t;}
54. 开辟一个存储n个int数据的内存区、并将内存区首地址送入p(指向int类型的指针变量)的语句为 。
55.释放由p所指向的内存区的语句为 。
56.fp为文件位置指针,将fp移到离当前位置25个字节处的语句为 。
C程序设计习题集 7
3 写输出结果题
1. #include
{ char ch; int k=0;
for(ch='A';ch<'H';ch++,k++) if(k%2==0) printf(\ printf(\
} 输出结果: 2. #include
switch (c++) {
case 'A': k++; break; case 'B': k--;
case 'C': k+=2; break; case 'D': k=k%2; break; case 'E': k=k*10; break; default: k=k/3; } k++;
} while(c<'G');
printf(\
} 输出结果: 3. #include
{ int a[6]={12,4,17,25,27,16},b[6]={27,13,4,25,23,16},i,j; for(i=0;i<6;i++) {
for(j=0;j<6;j++) if(a[i]==b[j])break; if(j<6) printf(\ }
printf(\
} 输出结果:
4. #include
{ int a[8]={1,0,1,0,1,0,1,0},i;
for(i=2;i<8;i++) a[i]+=a[i-1]+a[i-2]; for(i=0;i<8;i++) printf(\ printf(\
} 输出结果: 5. #include
8 C程序设计习题集
void main()
{ int s=1,t=1,a,n; scanf(\ for(int i=1;i t=t*10+1; s=s+t; 输入数据:2,4 } s*=a; printf(\输出结果: } 6. #include #define PR(x,y) printf(\ void main( ) { int x=3,y=2,z=1; 输出结果: PR(\ PR(\ PR(\ } 7. #include { int a[5]={2,4,6,9,12},b[6]={2,3,4,6,8,9}; for(int i=0;i<5;i++) for(int j=0;j<6;j++) if(*(a+i)==*(b+j)) printf(\ printf(\ } 输出结果: 8. #include void main() 输出结果: { char str1[]=\ for(int i=0;i<4;i++) { printf(\ str1[i]=' '; str1[strlen(str1)-1]='\\0'; } } 9. #include { char a[5][8]; 输出结果: for(int i=0;i<5;i++) for(int j=0;j<8;j++) if(i==0||i==4) a[i][j]='-'; else a[i][j]=' '; for(i=1;i<4;i++){ a[i][0]='|'; a[i][5]='|'; } for(i=0;i<5;i++) a[i][6]='\\0'; for(i=0;i<5;i++) printf(\ } C程序设计习题集 9 10. #include { char a[8],temp; int i,j; 输出结果: for(i=0;i<7;i++) a[i]='a'+i; for(i=0;i<3;i++) { temp=a[0]; for(j=1;j<7;j++) a[j-1]=a[j]; a[6]=temp;a[7]='\\0'; printf(\ } } 11. #include void main() 输出结果: { int i,j,n; for(i=0;i<4;i++) { for(j=1;j<=i;j++) printf(\ n=7-2*i; for(j=1;j<=n;j++) printf(\ printf(\ } } 12. #include { char a[8],temp; int j,k; for(j=0;j<7;j++) a[j]='a'+j; 输出结果: a[7]='\\0'; for(j=0;j<3;j++) { temp=a[6]; for(k=6;k>0;k--) a[k]=a[k-1]; a[0]=temp; printf(\ } } 13. #include void main() { print(3,'*',1); print(2,'*',3); print(1,'*',5); print(2,'#',3); print(2,'#',3); } void print(int begin,char pzf,int n) { char a[50]; for(int i=0;i 20 C程序设计习题集 5 编程题 1. 编程,统计在所输入的50个实数中有多少个正数、多少个负数、多少个零。 2.一个数如恰好等于它的因子之和,这个数就称为“完数”。编程序找出1000以内的所有完数,并输出其因子(6是一个\完数\,它的因子是1,2,3)。 3. 输入20个整数,输出其中能被数组中其它元素整除的那些数组元素。 4. 输入两个数组(数组元素个数自定),输出在两个数组中都出现的元素(如a[5]={2,3,4,5,6},b[6]={3,5,7,9,10,-1},则输出3、5)。 5. 编写函数,处理n行、n列的二维数组:将每一行的元素同除以该行上绝对值最大的元素。 6. 编写函数,求m行、n列的二维数组全体元素中负数的个数。 7. 编写函数,返回在一个整数组中出现次数最多的数及其出现次数。 8. 编写函数,在n个元素的一维数组中,找出最大值、最小值并传送到调用函数。 9. 编写函数,统计m行n列二维数组中有多少正数、多少个负数,多少个零,并返回统计结果。 10. 编写一个函数print,打印一个学生的成绩数组,该数组中有5个学生的数据记录,每个记录包括num,name,score[3],用主函数输入这些记录,用print函数输出这些记录。 11. 把文本文件d1.dat复制到文本文件d2.dat中,要求仅复制d1.dat中的英文字符。 12. 编程,把文本文件d1.dat复制到d2.dat(其中大写英文字母要转换为小写字母)。 13. 求出1至100之间的素数(只能被1和自身整除的数)并顺序写入文件su.dat。 14.已知顺序文件C.DAT 存放着程序设计基础的考试成绩,每个记录包含学号(8位字符)和成绩(三位整数)两个数据。编程,从文件中读入学生成绩,将大于或等于60分的学生成绩再形成一个新的文件SCORE60.DAT保存在A盘上,并显示出学生总人数(少于1000)、平均成绩和及格人数。 C程序设计习题集 21 C语言程序设计复习题答案 1 单项选择题 1. B 2. D 3. C 4. D 5. B 6. B 7. D 8. A 9. C 10. D 11. B 12. C 13. D 14. A 15. A 16. D 17. C 18. B 19. B 20. A 21. C 22. B 23. D 24. B 25. D 26. C 27. C 28. A 29. A 30. C 31. C 32. D 33. C 34. C 35. A 36. D 37. B 38. D 39. A 40. C 41. B 42. C 43. A 44. C 45. D 46. C 47. A 48. B 49. B 50. A 51. D 52. D 53. C 54. D 55. B 56. B 2 填空题 1. 2.5 2. 16 3. 2 4. 0 5.0 6.sqrt(s*(s-a)*(s-b)*(s-c)) 7. (-b+sqrt(b*b-4*a*c))/2/a 8. p*pow(1+r,5) 9.(x+1)*exp(2*x) 10.ch>='A'&&ch<='Z' 11. abs(n)>9&&abs(n)<100 12. a!=0&&b!=0 13. a==-b 14. a==0&&b!=0||b==0&&a!=0 15. m%2==1&&m/10%2==0 16. 11、11、6 17. 4、4、10、6 18. 18、3、3 19. 20、15 20. (a>b)?a:b 21. –17 22. 'D' 23. 31 24. m=1b 25. small 26. 0 27.2 28. 30、0 29. s未定义初值0 30. jc存放10!字长不够 31. static int a[10]; 32. char a[10]=\34. int a[4][5],*p=a[0]; 35. windows 95 36. windows 95 37. 5 38. 7 39. windows 40. 8 41. printf(\44.1、7、1 45.0、707、-1 46.1、0、56 47. 值传递 48. 值传递 49. 地址传递 50. 值传递 51.7 52.17 53. 10、5 54. p=(int*)malloc(n*sizeof(int)); 55.free(p); 56.fseek(fp,25l,1); 3 写输出结果题 1. A C E G 2. K=8 3. 4 25 27 16 4. 1 0 2 2 5 7 13 20 5. SUM=2468 6. x|y&z=3 、x^y&~z=1、x&y&z=0、!x|x=1、~x|x=-1 22 C程序设计习题集 7. 2 4 6 9 20. 1 21. 256.000000 22. U=32.000v=18.000 23.a,d 24. 0 abc,def e ghi,mno 1 hi,no i 4 程序填空题 1. ⑴ \⑵ gbs%n!=0 ⑶ m*n/gbs; ⑷ printf(\ 2. ⑴ int i,n; float nox; ⑵ nmin=no1; ⑶ &nox ⑷ else if(nox ⑶ ||ch>='A'&&ch<='Z' ⑷ prnitf(\ 5. ⑴ #include 8. ⑴ printf(\⑵ s=find(a,7,-1); \也可以改为其它负数 ⑶ t=*p; ⑷ return t; 9. ⑴ sort(a,7); ⑵ float *p,int n ⑶ *(p+j)>*(p+k) ⑷ t=*(p+i); 10. ⑴ &time.hour,&time.minute,&time.second ⑵ time.second ⑶ time.minute++; ⑷ time.hour==24 11. ⑴ ip-=11; ⑵ jg=3; ⑶ m[i]!=m[1] ⑷ i==12 ⑸ num-1 12. ⑴ float t; ⑵ else fh=1 ⑶ j C程序设计习题集 23 13. ⑴ int i,flag=1; ⑵ if(fabs(s1-s2) 15. ⑴ flaot *a,int n,float x ⑵ int i; ⑶ t=t*x; ⑷ return y; 16. ⑴ float *p,float *max, float *min, int n ⑵ float t; ⑶ *min=*p; ⑷ t>*max 17. ⑴ flaot *a,int n ⑵ j=i+1;j 19. ⑴ FILE *fp; ⑵ int m,e,c,i,n; ⑶ fp=fopen(\⑷ fclose(fp); 5 编程题参考答案 1.编程,统计在所输入的50个实数中有多少个正数、多少个负数、多少个零。 #include \ #define N 50 void main() { float x; unsigned int s1,s2,s3,i; s1=s2=s3=0; for(i=1;i<=N;i++) { scanf(\ } printf(\负数%u个,零%u个,正数%u个\\n\ } 2..编程,找出1000以内的所有完数,并输出其因子。 #include \ void main() { int i,j,s=1; for(i=1;i<=1000;i++,s=1) { for(j=2;j<=i/2;j++) if(i%j==0) s+=j; // 求 i的因子和 if(s==i) { printf(\如果i 是完数则输出其各因子 for(j=2;j<=i/2;j++) if(i%j==0) printf(\ printf(\ } } } 3. 输入一个正整数,输出它的所有质数因子。 #include \ void main() { int m,i=2; 24 C程序设计习题集 printf(\请输入一个整数:\ while(m!=1) if(m%i==0){ printf(\ printf(\ } 4. 输入20个整数,输出其中能被数组中其它元素整除的那些数组元素。 #include \ #define N 20 void main() { int a[N],i,j; for(i=0;i if(a[i]%a[j]==0&&i!=j) { printf(\ } 5. 输入两个数组(数组元素个数自定),输出在两个数组中都出现的元素。 #include \ #define NA 6 #define NB 8 void main() { float a[NA],b[NB]; int i,j; for(i=0;i if(a[i]==b[j]) { printf(\ } 6. 编写函数,处理n行n列维数组:将每一行的元素同除以该行上绝对值最大的元素。 #include \ #include \ void div(float** a,int n) { int i,j; float x; for(i=0;i for(j=1;j return; } void main() // 函数引用示例 { float b[3][3]={{1,2,3},{4,5,6},{7,8,9}}; int i,j; float* c[3]; for(i=0;i<3;i++) c[i]=b[i]; div(c,3); for(i=0;i<3;i++) {
正在阅读:
浙工大C语言复习题与参考答案05-24
2022超星尔雅《诗经》导读课后作业答案04-19
安稳装置运行规程(修改) - 图文11-15
2017年江苏省高考数学卷及答案解析09-18
条据练习04-21
自主招生个人陈述范文05-31
施工方案培训讲议-单位工程(第二版)10-02
中国液氮服务行业市场前景分析预测年度报告(目录) - 图文05-22
地理人教版高中必修2人教课标版高中地理必修二第一章第三节《人口的合理容量》训练题12-06
插花学复习题库20111031 - 图文10-19
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 复习题
- 工大
- 答案
- 语言
- 参考
- 小议休闲度假区及移动酒店规划
- 公务员竞争上岗演讲稿
- 静吸复合气管插管全身麻醉在腹部腹腔镜手术中的应用
- 人卫版《正常人体学基础》复习题
- 临时用电方案 - 图文
- 南昊光标阅读机常见故障与排除
- 公共经济学课后复习思考题
- 行政管理学随堂练习
- 教师指导孩子做作业的心得体会
- “十三五”重点项目-新月型高速卫生纸机项目可行性研究报告 - 图
- 银行竞聘稿精选11篇
- 3 IS-LM模型习题(含投资函数和货币市场)2011-04-15
- 外美史试题及答案(1)
- 有机化学知识点全面总结
- 四川省绵阳市南山中学2016届高三零诊考试数学试题(文) Word版
- 2017威斯康星大学普拉特维尔分校教育认证 - 图文
- 自感现象
- 江苏省扩大儿童免疫规划实施方案
- 健康装修学习心得
- 研究生职业发展规划书