Part2: 补足程序,使程序符合题目要求并正确运行
/* 编程找出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(n<=4) { n++; printf("输入第%d个数: ", n); scanf("%d", &number); if(max<=number) max = number; else if(min>=number) min = number; } printf("最大数为: %d\n", max); printf("最小数为: %d\n", min); system("pause"); return 0; }
Part3: 编程练习
1 编程输出101-200之间所有素数,并输出这一区间内素数个数
#include<stdio.h> #include<math.h> int main(){ int i,n,m; int sum=0; for(n=101;n<=200;n++){ m=sqrt(n); for(i=2;i<=m;i++){ if(n%i==0){ break; } } if(i>m){ printf("%5d",n); sum++; if(sum%5==0) printf("\n"); } } printf("\n"); printf(" 101~200之间共有%d个素数.\n",sum); return 0; }
2 将一个长整型数s的每一数位上的奇数依次取出来,构成一个新的数,起高位仍在高位,低位仍在低位,例如, s=20199102时,t中的值为1991。
#include<stdio.h> int main(){ long int s; long int t=0,m; int sign=1; printf("Enter a number:"); scanf("%ld",&s); while(s!=0){ if(s%2==1){ m=s%10; t=t*10+m; s=s/10; } else s=s/10; } int x,y=0; while(t!=0){ x=t%10; y=y*10+x; t=t/10; } printf("New number is:%ld",y); return 0; }
3 编写程序,实现从键盘上输入n和a,根据公式s=1/a+2/aa+3/aaa+…+n/(a..a)计算s的值,并输出。 预期输出结果如下:
#include<stdio.h> int main(){ float n,a; float y,i; float s=0; printf("Enter n and a:"); scanf("%f %f",&n,&a); y=a; for(i=1;i<=n;i++){ s=s+i/y; y=y*10+a; } printf("s = %f",s); return 0; }
实验总结:所学新内容 (1)循环语句的使用及嵌套(2)如何实现多组输入
所踩的坑(1)与循环有关的要写在循环里面(2)数据类型(3)循环次数
问题 算法想的的如何又快又有条理
理解 多试总能搞出来
原文:https://www.cnblogs.com/squidward/p/11880866.html