实验三

// 生成N个0~99之间的随机整数,并打印输出 
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define N 5

int main(){
    int x,n;
    
    srand(time(0));  //以当前系统时间作为随机种子
    
    for(n=1;n<=N;n++)
    {x=rand()%32;//生成一个0~99之间的随机整数
    printf("%3d",x) ;
}

printf("\n");

return 0;
}

#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int myrand();
int main()
{ int m,n,i;
    m=myrand();
    
    
    for(i=0;i<=2;i++)
    {
        scanf("%d",&n);
        
    if(n==m)
    {
    printf("恭喜您,猜中啦!\n");
    break;}
    else if(n<m)
    printf("您猜的日期有一点点早哦\n");
    else if(n>31)
    {
    printf("非法输入!\n");
    break;}
    else 
    printf("您猜的日期有一点点晚哦\n");}
    
    if(n!=m&&n<32)
     
     printf("正确的日期是%d呢!\n",m);
     
     
    return 0;
}

int myrand()
{
int x;
    
    srand(time(0));  //以当前系统时间作为随机种子
    x=1+rand()%31;
}

#include <stdio.h>
int main()
{
    long x,m,s;
    int x1,x2,i;
    
    printf("please give a number:");
    while(scanf("%ld",&x)!=EOF)
{
    s=0;
    i=1;
    while(x!=0)
    {
    x1=x%10;
    x2=x/10;
    x=x2;
    if(x1%2!=0)
    {
    m=x1;
    s=s+m*i;
    i=i*10;}
    }
printf("new number is %ld\n",s);
printf("please give a number:");
}


    return 0;
 } 

// 一元二次方程求解(函数实现方式)
// 重复执行, 直到按下Ctrl+Z结束 

#include <math.h>
#include <stdio.h>

// 函数声明
double solve(double a, double b, double c);

// 主函数 
int main() {
    double a, b, c;

    
    printf("Enter a, b, c: ");
    while(scanf("%lf%lf%lf", &a, &b, &c) != EOF) {
        solve(a, b, c);  // 函数调用 
        
        
        printf("Enter a, b, c: ");
    }
    
    return 0;
}

// 函数定义
// 功能:求解一元二次方程,打印输出结果
// 形式参数:a,b,c为一元二次方程系数 
double solve(double a, double b, double c) {
    double x1, x2;
    double delta, real, imag;
    
    if(a == 0) 
        printf("not quadratic equation.\n");
    else {
        delta = b*b - 4*a*c;
        
        if(delta >= 0) {
            x1 = (-b + sqrt(delta)) / (2*a);
            x2 = (-b - sqrt(delta)) / (2*a);
            printf("x1 = %.2f, x2 = %.2f\n", x1, x2);
        }
        else {
            real = -b/(2*a);
            imag = sqrt(-delta) / (2*a);
            printf("x1 = %.2f + %.2fi, x2 = %.2f - %.2fi\n", real, imag, real, imag);
        }
    }    
}

#include <stdio.h>
double fun(int n);  // 函数声明 
 
int main() {
    int n;
    double s;
    
    printf("Enter n(1~10): ");
    while(scanf("%d", &n) != EOF) {
        s = fun(n);  // 函数调用 
        printf("n = %d, s= %f\n\n", n, s);
        printf("Enter n(1~10): ");
    }
    
    return 0;
}

// 函数定义 
double fun(int n) {
    
    double sum,m;
    sum=0;
    m=1;
    int i;
    for(i=1;i<=n;i++)
    {
    sum=sum+m;
    m=(-1)*m/(i+1);
    }
    return sum;
    
}

#include <stdio.h>
#include <math.h>
int myprime(int a);
int main()
{
    int a,n,line,t;
        t=0;
        line=0;
        
    for(a=101;a<=200;a++)
    {
        if(myprime(a))
        {
        printf("%d     ",a);
    
        t=t+1;
        
        line=line+1;
        if (line%5==0)
        printf("\n");
        }    
    }
        printf("\n");
    printf("101~200之间的素数个数为:%d\n",t);
    return 0;
    }
int myprime(int n)
{  int i;
   for(i=2;i<=sqrt(n);i++)
   if(n%i==0)
    {
    return 0;
    break;
    } 
   return 1;
}
   
   
   

posted @ 2021-04-15 22:05  宋大壮  阅读(83)  评论(1)    收藏  举报