Chinaunix首页 | 论坛 | 博客
  • 博客访问: 106490
  • 博文数量: 20
  • 博客积分: 506
  • 博客等级: 下士
  • 技术积分: 216
  • 用 户 组: 普通用户
  • 注册时间: 2011-01-08 21:10
文章分类

全部博文(20)

文章存档

2011年(20)

我的朋友

分类: C/C++

2011-03-27 16:17:56

题目1:把一串英文句子按单词反序输出。如:"i love you,you love me" -> "me love you,you love i"
 
  1. /*----------------------------------
  2.  by zx_ace@sina.com
  3. ----------------------------------*/
  4. #include <stdio.h>
  5. #include <string.h>

  6. char *ni(char *a)
  7. {
  8.     int l=strlen(a);
  9.     int i,j=0,x=0,t=0;
  10.     char b[30][30];
  11.     for(i=0;i<l;i++)
  12.     {
  13.         if(a[i]!=' ')
  14.         {
  15.             b[x][j]=a[i];
  16.             j++;
  17.         }
  18.         if(a[i]==' ')
  19.         {
  20.            b[x][j]='\0';
  21.          j=0;
  22.             x++;
  23.             t++;
  24.         }
  25.     
  26.     }
  27.     //    printf("t=%d ",t);

  28.     b[x][j]='\0';    
  29.        for(x=t;x>=0;x--)
  30.     {    
  31.     printf("%s ",b[x]);
  32.     }
  33.     printf("\n",b[x]);
  34. }

  35.  int main()
  36.  {
  37.     char a[30]="i love you,you love me";
  38.      ni(a);         
  39.      return 0;
  40.  }

 

题目2:输入一个整数,计算出比该整数大的最小的质数。

  1. /*----------------------------------
  2.          by zx_ace@sina.com
  3. ----------------------------------*/
  4. #include <stdio.h>
  5. #include <string.h>
  6. #include <math.h>
  7. int bigprimer(_int64 num)
  8. {
  9.   int k=0;
  10.   _int64 i,j;
  11.   for(i=num;i<=2*num;i++)
  12.   {

  13.     for(j=2;j<=sqrt(i);j++)
  14.     {
  15.         if(i%j==0)
  16.         {
  17.             k=1;
  18.             break;
  19.         }
  20.     }
  21.   if(i%j!=0&&k==0&&i!=num)
  22.   {
  23.    printf("大于%I64d的最小的质数是%I64d\n",num,i);    
  24.    return i;
  25.   }
  26.   k=0;
  27.   }

  28.   return num;
  29. }

  30.  int main()
  31.  {
  32.     _int64 k=9551;
  33.     bigprimer(k);    
  34.     return 0;
  35.  }
阅读(1975) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~