实验三

//生成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()%100;//生成一个0~99之间的随机整数
        printf("%3d",x); 
     } 
     
     printf("\n");
     
     return 0;
 } 

#include<stdio.h>
#include<time.h>
#include<stdlib.h>
int main()
{
    srand((unsigned)time(0));
    int num;
    int guess;//用户猜数 
    int right;//正确答案
    int count;//已猜次数
    while(1)
    {
        count=0;
        right=0;
        num=rand()%31;
        printf("猜猜2021年5月哪一天会是你的lucky day\n");
        printf("开始喽,你有三次机会,猜吧(1~31):\n"); 
        while(count++<3)
        {
            scanf("%d",&guess);//小于3次,不断猜数
            if(guess==num)
            {
                right=1;
                printf("恭喜猜对!\n");break;
            } 
            else if(guess>num)
            {
            printf("你猜的日期晚了,lucky day悄悄溜到前面啦\n");
            printf("再猜(1~31):\n");
            } 
            else
            {
            printf("你猜的日期早了,lucky day还没到呢\n");
            printf("再猜(1~31):\n"); 
            } 
        }    
    if(right==0)
    printf("次数用完啦。偷偷告诉你:五月,你的lucky day是%d\n",num);
    int c;
    fflush(stdin);
    c=getchar();
    if(c=='n'||c=='N')
    break;        
    } 
    return 0;
 } 

#include<stdio.h>
long fun(long int x)
{
    long b=0;
    while(x>0)
    {
        if((x%10)%2)
        b=b*10+x%10;
        x/=10;
    }
    return b;
}
int main()
{
    long a,b;
    while(1)
    {
        printf("Enter a number:");
        scanf("%d",&a);
        b=fun(a);
        printf("new number is:%ld\n",b);
    }
}

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

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

//函数声明
void 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为一元二次方程系数
 void 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)
 {
     int i,j;
     double sum=1,zi=1,mu=1;
     for(i=1;i<=n;i++)
     {
         zi=-1*i;
         for(j=1;j<=i;j++)
         mu=mu*j;
         sum=sum+zi/mu;
         mu=1;
     }
  } 

#include<stdio.h>
#include<math.h>
int main()
{
    int m,i,k,h=0,leap=1;
    printf("\n");
    for(m=100;m<200;m++)
    {
        k=sqrt(m+1);
        for(i=2;i<=k;i++)
        if(m%i==0)
        {
            leap=0;
            break;
        }
        if(leap)
        {
            printf("%-4d",m);
            h++;
            if(h%5==0)
            printf("\n");
        }
        leap=1;
    }
    printf("\n100~200之间素数个数为:",h);
}

#include<stdio.h>
#include<stdlib.h>
#include<windows.h>

void printCharMan(int line,int col);//函数声明
void printSpaces(int n);//函数声明

int main()
{
    int line,col;
    
    for(line=5,col=5;col<=60;col++)
    {
        printCharMan(line,col);
        Sleep(50);//暂停50ms
        system("cls");//清除屏幕 
    }
 } 
 
 //打印n个空格
 void printSpaces(int n)
 {
     int i;
     
     for(i=1;i<=n;i++)
     printf(" ");
  } 
  
  //在第line行第col列打印一个字符小人
  void printCharMan(int line,int col)
  {
      int i,j;
      //打印line-1行空行
      for(i=1;i<=line-1;i++)
      printf("\n");
      
      //打印col-1个空格 
      printSpaces(col-1);
      
      //在第line行、第col列打印字符小人的头
      printf("o\n");
      
      //打印col-1个空格
      printSpaces(col-1);
      
      //在第line行、第col列打印字符小人的身体
      printf("<H>\n");
      
      //打印col-1个空格
      printSpaces(col-1);
      
      //在第line行、第col列打印字符小人的腿
      printf("I I\n"); 
   } 

 

 

posted @ 2021-04-08 20:04  Hik~  阅读(98)  评论(1编辑  收藏  举报