C/C++
May 21
     这题实在无语,非常阴险,题目说的每组数据间的空行是输入空行,C中可以用getchar();
     我的C代码,题目还算简单,不过花了很长时间,很狡猾的题目:
  
Tags: ,
Mar 10
一、辗转相除法:
      大数除以小数    余数1
      小数除以余数1    余数2
      余数1除以余数2    余数3
      若余数3为0,则余数2为所求,否则一直辗转相除
int gys(int m,int n)
{
  int t,r;
  if(m<n)
  {t=m;m=n;n=t;}
  r=m%n;
  while(r!=0)
  {
    m=n;
    n=r;
    r=m%n;
  }
  return n;
}


二、更相减损法

int jsf(int a,int b)
{
  while(a!=b)
  {
    if(a>b)
      a-=b;
    else
      b-=a;
  }

  return b;
}
Jan 30

两数交换 不指定

wxxslt , 20:45 , C/C++ , Comments(1) , Trackbacks(0) , Reads(595) , Via Original
当然,不能用中间变量,方法如下:

x=x+y;
y=x-y;
x=x-y;

数字游戏,毫无意义。
Nov 1
不使用中间变量实现strlen函数,(strlen为c语言里面求字符串长度库函数)。给出了一个函数声明:
int strlen(const char *p);

#include<iostream.h>
int strlen_my(const char *p);
void main()
{  
    const char *p="wenxueba.net";
    int length=strlen_my(p);
cout<<length<<endl;
}  
int strlen_my(const char *p)
{
if(p==NULL)
    {
        return 0;
    }
    if(*p=='\0')
    {
        return 0;
    }
    else  
        return 1+strlen_my(++p);
}
Pages: 1/1 First page 1 Final page [ View by Articles | List ]