printf(\ printf(\}
int func(int x,int y) { int i, s=1;
for(i=1;i<=y;i++) s=s*x; return(s); }
2.编写函数,要求去掉字符串中所有空格。 # include
while(s[i])
{if(s[i]!=' ')s[j++]=s[i]; i++; } s[j]='\\0'; }
void main() {
char s[80]; gets(s); f(s); puts(s); }
3.编写函数,判断一个字符串是否是回文,如是返回1,否则返回-1(回文是指这个字符串逆置后不变,如aba就是回文。) # include
int i,f; f=1; i=0;
while(f&&i } return f; } void main() { char s[80]; gets(s); if(f(s,strlen(s))==1) printf(\es \ else printf(\} 4.编写函数fun求1!+2!+3!+…+n! 的和,在main函数中由键盘输入n值,并输出运算结果。 #include printf(\ number: \\n\ scanf(\ c=fun(n); printf(\ printf(\} int fun(int n) {int i,a,s; s=1; a=0; for(i=1;i<=n;i++) { s=s*i; a=a+s; } return(a); } 5.编写两个函数,分别求两个整数的最大公约数和最小公倍数,用主函数调用这两个函数并输出结果。两个整数由键盘输入 #include printf(\ numbers: \\n\ scanf(\ c=func(x,y); d=fun(x,y); printf(\ printf(\ printf(\} int func(int x,int y) { int t; t=x%y; while(t) { x=y; y=t; t=x%y; } return(y); } int fun(int x,int y) { return (x*y/func(x,y)); } 第七章 一、选择题 1. D 2. B 3. D 4. D 5. A 二、阅读程序写出结果 1. 答案:1 2. 答案:12345 3. 答案: t*M 4. 答案:7078 9198 三、程序填空 1. 答案:(1) i—(2) i>=1(3) i 2. 答案:(1) i<=9(2) i<=9(3) i%3==0 四、程序改错 1.答案:(1) int a[3]={0};(2) for(i=1;i<3;i++) a[0]=a[0]+a[i]; 2. 答案:(1) for(i=0;i 1. 答案:(1). 升序 (2). 1 2 3 4 5 5 6 7 8 9 2. 答案: (1). 33 33 27 22 12 11 -1 -8 (2). -8 -1 11 12 22 27 33 33 六、编程 1. 在一组数中找出最大与最小值之差。 #include int a[10],i,x,y; printf(\ for(i=0;i<10;i++) scanf(\ x=a[0]; y=a[0]; for(i=1;i<10;i++) {if(a[i]>x) x=a[i]; if(a[i] printf(\} 2. 用选择法将一组整数按降序排序。 #include int a[10],i,j,k,t; printf(\ for(i=0;i<10;i++) scanf(\ for(i=0;i<=8;i++) { k=i; for(j=i+1;j<=9;j++) if(a[j]>a[k]) k=j; t=a[k]; a[k]=a[i]; a[i]=t; } for(i=0;i<=9;i++) printf(\ %d\} 3. 在一个按升序排列的数组中插入一个数,使数组仍有序。 #include int a[7]={3,5,7,9,11,23}; int b,i,k; scanf(\ a[6]=b; i=5; while(b=0) { a[i+1]=a[i]; a[i]=b; i--; } printf(\ ru hou de shu zu \\n\ for(i=0;i<7;i++) printf(\ } 4. 用―顺序‖查找法,在一组数中查找一个值为K的元素。若有,输出YES;若无,输出NO。 #include int a[10],i,j,k; printf(\ for(i=0;i<10;i++) scanf(\ printf(\ scanf(\ for(i=0;i<=9;i++) if(a[i]==k) break; if(i>9) printf(\ else printf(\} 5. 输出以下形式的图案: ******* ***** *** * #include int i,j; for(i=1;i<=4;i++) { for(j=1;j<=i-1;j++) printf(\ for(j=1;j<=9-2*i;j++) printf(\ printf(\