break; } } if(! flag)
printf(\
}
95.编写一个函数求给定字符串长度,主函数中输入一个字符串,调用该子函数,求出该字符串的长度,输出。 #include
int length(char*p); int len;
char str[20];
printf(\input string:\ scanf(\ len=length(str);
printf(\}
int length(char*p) { int n; n=0;
while(*p!='\\0') { n++; p++; } return(n); }
96.编写一个函数将给定字符串复制到另一个字符串中去,主函数中输入一个字符串,调用该子函数,复制出另一字符串,将两个串输出。 #include
void copystr(char*,char*,int); int m;
char str1[20],str2[20];
printf(\input string:\
gets(str1);
printf(\ scanf(\
if(strlen(str1) printf(\input error!\ else { copystr(str1,str2,m); printf(\ } } void copystr(char*p1,char*p2,int m) { int n; n=0; while(n while(*p1!='\\0') { *p2=*p1; p1++; p2++; } *p2='\\0'; } 97.写函数求Cos(x)=1+X2/2!-X4/4!+X6/6!- …+(-1)nX2n/(2n)!。 #include float x; printf(\请输入n,x值:\\n\ scanf(\ scanf(\ printf(\} float cos(int n,float x) { int i; float s=-1.0; for(i=1;i<=n;i++) s+=fun(-1.0,i-1)*fun(x,2*i)*term(2*i); return s; } float fun(float x,int n) { int i; float p=1.0; for(i=0;i float term(int n) { int i; float q=1.0; for(i=1;i<=n;i++) q/=i; return q; } 98.编写一个函数将给定字符串中的大写字母转换成小写字母,主函数中输入一个字符串,调用该子函数,进行转换,将原字符串及转换后的字符串输出。 #include for(i=0;i<10;i++) if(a[i]>=65&&a[i]<=90) a[i]=a[i]+32; puts(a); } 99.编写一个函数将给定的两个字符串连接成一个字符串: 格式为:strcat(ch1,ch2); 功能:将ch2复制到ch1的后面; 主函数中输入两个字符串,调用该子函数,求出连接之后的字符串,将两个原字符串及连接之后的结果串输出。 #include char str1[20],str2[8]; gets(str1); gets(str2); strcat(str1,str2); printf(\} 100.用40元钱买苹果、西瓜和梨共100个,且三种水果都有。已知苹果0.4元一个,西瓜4元一个,梨0.2元一个。问可以买多少个?编程输出所有购买方案。 #include double r; printf(\苹果 西瓜 梨\\n\ while (i<=100) { j=1; while(j<=(10-i)) { k=100-i-j; r=2*i/5+4*j+i/5; if(r<=40) printf(\ j++; } i++; } } 101.编程:建立一个3×3的二维整数数组,求两条对角线上元素值得和,并将结果输出。(用函数调用方式编程) 102.编程计算:1*2*3+3*4*5+……+99*100*101的值。 #include int i,j,k,sum=0; for(i=1,j=2,k=3;i<100,j<101,k<102;i+=2,j+=2,k+=2) sum=sum+i*j*k; printf(\} 103.有一个5×4的矩阵,编程实现:找出该矩阵中每行元素的最大值,并使该值成为该行的首列元素。 #include a[5][4]={6,7,8,9,2,7,8,7,4,8,9,5,2,4,6,7,2,4,1,2},b[5][4]={6,7,8,9,2,7,8,7,4,8,9,5,2,4,6,7,2,4,1,2},t,i,j,k,p; int max[5]={6,2,4,2,2}; for(i=0;i<5;i++) {for(j=1;j<4;j++) if(a[i][j]>max[i]) { max[i]=a[i][j]; } } for(k=0;k<5;k++) {for(p=1;p<4;p++) if(max[k]!=b[k][p]) {b[k][p]=b[k][p];} else { t=b[k][0]; b[k][0]=b[k][p]; b[k][p]=t; } } for(k=0;k<5;k++) for(p=0;p<4;p++) printf(\ printf(\}