1.编写power函数,该函数的功能是得到从键盘输入的两个数的X值。要求在主函数中调用power函数,实现求解从键盘上输入二进制数字,要求将其转化成十进制形式。并在主函数中输出十进制数。 2.#include
6. int s=1, k;
7. for(k=1;k<=m;k++) 8. s=s*x; 9. return (s); 10.}
11.int f(char a[10]) 12.{ 13.
14. int i,j,sum=0; 15. j=strlen(a); 16. for(i=0;i 19. return (sum); 20.} 21. 22.main() 23.{ 24. char s1[10]; 25. int s; 26. gets(s1); 27. s=f(s1); 28. printf(\ 29.}//二进制转化成十进制 30. 附加:调用power函数实现一个从键盘输入十六进制数,输出十进制数。 #include double power(double x,double m) { double s=1; int k; for(k=1;k<=m;k++) s=s*x; return (s); } ydouble f(char a[10]) { int i,j; double sum=0; j=strlen(a); for(i=0;i main() { int c; char s1[10]={0}; gets(s1); c=f(s1); printf(\ }//十六进制转化成十进制 2.编写isprime函数,该函数的功能是判断某数字是否是素数。要求在主函数中调用isprime函数,输出200~500之间的所有素数,并输出8个素数进行换行。 3.#include 17. 18. 19. 20. return(k); 21.} 22.main() 23.{ 24. int isprime(); 25. int m,k,count; 26. for(m=200;m<=500;m++) 27. { 28. k=isprime(m); 29. if(k==1) 30. { 31. printf(\32. count++; 33. if(count%8==0) 34. { 35. printf(\36. } 37. } 38. } 39. 40.} 41. 3.编写huiw函数,该函数的功能是判断某数是否是回文数。所谓回文数是指该数和该数的逆序数是相等的,如121,其逆序数也是121,所以121是回文数。要求在主函数中调用huiw函数,并在主函数中输出10~999之间该数、其平方和立方也都是回文数,输出5个数进行换行。 4.#include 7. int huis(long n); 8. long m,j; 9. for(m=10;m<1000;m++) 10. { 11. if(huis(m)&&huis(m*m)&&huis(m*m*m)) 12. { 13. printf(\14. j++; 15. if(j%5==0) 16. printf(\17. } 18. } 19. 20. 21.} 22.int huis(long n) 23.{ 24. long i=n,m=0; 25. while(i) 26. { 27. m=m*10+i; 28. i=i/10; 29. 30. } 31. return(m==n); 32.} 4.用二分法实现查找数组中的元素。 算法思想:假如有一组数为3,12,24,36,55,68,75,88要查给定的值24.可设三个变量front,mid,end分别指向数据的上界,中间和下界,mid=(front+end)/2。 (1)开始令front=0(指向3),end=7(指向88),则mid=3(指向36)。因为mid>x,故应在前半段中查找。 (2)令新的end=mid-1=2,而front=0不变,则新的mid=1。此时x>mid,故确定应在后半段中查找。 (3)令新的front=mid+1=2,而end=2不变,则新的mid=2,此时a[mid]=x,查找成功。 如果要查找的数不是数列中的数,例如x=25,当第三次判断时,x>a[mid],按以上规律,令front=mid+1,即front=3,出现front>end的情况,表示查找不成功。 #include { end=mid-1; } else if(a[mid] 5 从键盘输入如下字符:******A*BC**D******,完成以下功能:1)当继续输入字符,输入的为L,删除左边的星号,将其放到右边,结果为: A*BC**D************;2)当继续输入字符,输入的为M,删除中间的星号,将其放到右边,结果为: ******ABCD*******;3)当继续输入字符,输入的为R,删除右边的星号,结果为: ******A*BC**D。 (1)#include 4. int main(void) 5. { 6. char s1[80] = \7. char s2[80]; 8. int i=0,j=0,countstar=0; 9. int nSize = strlen(s1); 10. 11. for (i=0; i s2[j]=0; 21. for (i = 0; s1[i] != '\\0'; i++) 22. { 23. if (s1[i] == '*') 24. { 25. countstar++; 26. }