实验三
Posted gebilaowangfangruidong
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了实验三相关的知识,希望对你有一定的参考价值。
Part1:验证性内容
1.一元二次方程求解
通过 while(scanf("%f%f%f", &a, &b, &c))进行多次输入操作,直到输入其他格式的三项(例如,abd)或ctrl+D/E.
2.猜数字
运用do-while语句,先执行后判断。
Part2: 补足程序,使程序符合题目要求并正确运行
1、编程找出5个整数中的最大数和最小数,并输出找出的最大数和最小数
#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(5-n) { n++; printf("输入第%d个数: ", n); scanf("%d", &number); if(max<=number) max = number; else if(min>=number) min = number; } printf("最大数为: %d ", max); printf("最小数为: %d ", min); system("pause"); return 0; }
运行结果
Part3: 编程练习
1、编程输出101-200之间所有素数,并输出这一区间内素数个数
#include<stdio.h> #include<math.h> int sushu(int x); int main() { int i,l; l=0; for(i=100;i<=200;i++) { if(sushu(i)) { l+=1; printf("%5d",i); if(l%5==0) printf(" "); } } printf(" 101~200之间共有%d个素数",l); return 0; } int sushu(int x) { int y; for(y=2;y<=sqrt(x);y++) if(x%y==0) return 0; return 1; }
运行结果:
2、将一个长整型数s的每一数位上的奇数依次取出来,构成一个新的数,起高位仍在高位,低位仍在低位
不会---求教QAQ
3、编写程序,实现从键盘上输入n和a,根据公式s=1/a+2/aa+3/aaa+…+n/(a..a)计算s的值,并输出。
#include <stdio.h> #include <math.h> float fenmu(int n,int a) { int i; float t=0; for(i=0;i<n;i++) { t+=a*pow(10,i); } return t; } float fenshu(int n,int a) { int i; float t=0; float sum=0; float s=0; for(i=1;i<=n;i++) { s=fenmu(a,i); t=i/s; sum+=t; } return sum; } int main() { int a,n; printf("Enter n and a:"); while(scanf("%d%d",&n,&a)!=EOF) { float k=fenshu(n,a); printf("%f ",k); }
return 0; }
存在错误
但是没找出来QAQ。
运行结果:
实验总结与体会:
做完这一次试验,我感觉自己的头发,在高数和C语言的共同努力下,摇摇欲坠,性命垂危。
1、基本小问题已经不犯了,但是面对题目总感觉找不到突破口,可能是知识没有真正掌握吧。
2、对一些小细节理解不到位,比如for循环中y++是啥时候进行的,y++和++y在运行时的区别······
3、希望能通过多看看大佬们的作业,瞻仰的同时提高下自己的思维水平,扩展解题思路。
以上是关于实验三的主要内容,如果未能解决你的问题,请参考以下文章