首页 > 其他 > 详细

实验三

时间:2019-11-20 01:01:51      阅读:135      评论:0      收藏:0      [点我收藏+]
// 一元二次方程求解
// 重复执行, 直到按Ctrl+D或Ctrl+E结束
//  
#include <math.h>
#include <stdio.h>
#include <stdlib.h>
int main() {
    float a, b, c, x1, x2;
    float delta, real, imag;
    
    printf("Enter a, b, c:  ");
    
    while(scanf("%f%f%f", &a, &b, &c)) {
        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 = %f, x2 = %f\n", x1, x2);
            }
            else {
                real = -b/(2*a);
                imag = sqrt(-delta) / (2*a);
                printf("x1 = %f + %fi, x2 = %f - %fi\n", real, imag, real, imag);
            }
        }
        
        printf("Enter a,. b, c:\n");
    }
    system("pause");
    return 0;

 

 

 技术分享图片

// 程序运行时自动生成1~100之间的随机数,提示用户猜
// 如果用户猜的数等于随机数,提示用户猜对了,程序结束
// 否则,如果用户猜的数小于随机数,提示用户低了,用户继续猜
// 如果用户猜的数大于随机数,提示用户高了,用户继续猜 
// 程序循环运行直到用户猜对为止

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

int main() {
    int guessNumber; // 存放程序运行时生成的1~100之间的随机整数 
    int ans;     // 存放用户猜的数字 
    
    srand((time(0)));  // 以时间函数作为随机种子 
    guessNumber = 1 + rand()%100;  // 生成1~100之间的随机数 
    
    do {
        printf("your guess number is(1~100): ");
        scanf("%d", &ans);
        if(ans < guessNumber)
            printf("%d is lower than the number.\n", ans);
        else if(ans > guessNumber) 
            printf("%d higher then the number.\n", ans); 
    }while(ans != guessNumber);
    
    printf("Congratulations. you hit it~\n");    
    
    system("pause"); // 在devc中运行时,这一行可以去掉
     
    return 0;
} 

技术分享图片

 

 

/* 
编程找出5个整数的最大数和最小数 
《C语言程序设计教程学习指导》p122实验内容(3) 
*/ 

#include <stdio.h>
#include <stdlib.h>
int main() {
    int number, max, min, n;
    
    n=1;
    printf("输入第%d个数: ", n);
    scanf("%d", &number);
    max = number;
    min = number;
    
    while(n<=4) {
        n++;
        printf("输入第%d个数: ", n);
        scanf("%d", &number);    

        if(number>max)
            max = number;
        else if(number<min)
            min = number;
    }
    
    printf("最大数为: %d\n", max);
    printf("最小数为: %d\n", min);
    
    system("pause");
    
    return 0;
} 

技术分享图片

 

 

#include<stdio.h>
#include<math.h>
int isPrime(int n);
int main(){
    int i,n=0;
    for(i=101;i<=200;i++)
     if(isPrime(i)){
        n++;
       printf("%5d",i);
        if(n%5==0)
          printf("\n");
      
       } 
       printf("\n101-200之间共有%d个素数",n);
    
} 
int isPrime(int j)
{
    int k;
    for(k=2;k<=sqrt(j);k++)
      if(j%k==0)
        return 0;
      return 1;
}

技术分享图片

 

 

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

技术分享图片

 

 实验结论:

1.对于循环语句的选用很纠结while还是for,并且编写时会向很复杂的方向编写,经过别人指教才稍微好一点

2.实验中总是忘记加分号,需要程序不断纠错

3.如何实现每五个换行?(舍友教的)

实验三

原文:https://www.cnblogs.com/ymj-1314/p/11894567.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!