实验三
//生成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; printf("%3d",x); } printf("\n"); return 0; }

思考
将line13改为x=rand()%31+1;
ex.2
#include <stdio.h> #include <stdlib.h> #include <time.h> #define N 3 int main() { int x, n, i=0; srand(time(0)); x = rand()%31+1; printf("猜猜2021年5月哪一天会是你的luck day\n开始咯,你有三次机会,猜吧(1~31): "); for(i = 1; i<=N; i++) { scanf("%d",&n); if(n>x) printf("你猜的日期晚了,luck day悄悄溜到前面啦\n"); else if(n<x) printf("你猜的日期早了,luck day悄悄溜到后面啦\n"); else printf("luck day"); printf("再猜一次\n"); } if(i>3) printf("次数用完了,偷偷告诉你;你的luck day是%d号\n",x); return 0; }

ex.3
#include<stdio.h> int main() { long i,t; printf("Enter a number:"); while(scanf("%ld",&i)!=EOF) { long n=1; long m=0; while(i!=0) { if((i%10)%2!=0)//判断奇数 { t=i%10; m=m+t*n; n=n*10; } i=i/10; } printf("New number is:%ld\n",m); printf("Enter a number:"); } return 0; }

#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; } 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){ double s=1,x=1; int i; if(n==1) return 1; else{ for(i=2;i<=n;i++){ x=-x*1/i; s=s+x; } return s; } }

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

#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"); }


浙公网安备 33010602011771号