实验三
// 生成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;
}

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

#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define N 2
int main()
{
int n,x,a;
srand(time(0));
x=rand()%32; // 生成一个1~31之间的随机整数
printf("猜猜2021年5月哪一天会是你的luck day\n开始咯,你有三次机会,猜吧(1~31):");
for(n=1; n<=N; n++){
scanf("%d",&a);
if(a==x){
printf("猜对啦!");
break;
}
else if(a<x) printf("你猜的日子早了,luck day还没到呢\n再猜(1~31):");
else if(a>x) printf("你猜的日子晚了,luck day悄悄溜到前面了\n再猜(1~31):");
}
scanf("%d",&a);
if(a==x) printf("猜对啦!");
else printf("次数用完啦,偷偷告诉你,5月,你的luck day是:%d号",x);
return 0;
}

#include <stdio.h>
int main(){
long s,y;
int x,n,t,a,i;
while(1){
printf("Enter a number:");
scanf("%d",&s);
y=s;
for(n=0;s>0;n++){
s=s/10;
}//求s一共有多少位数
for(t=0,x=0,i=1;t<n;t++){
a=y%10;y=y/10;
if(a%2){
x=x+a*i;i=i*10;
}
}
printf("New number is:%ld\n",x);
}
return 0;
}

// 一元二次方程求解(函数实现方式)
// 重复执行, 直到按下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 x;
double y=0;
for(i=1,j=1;i<=n;i++){
j=j*i;
if(i%2) x=1/(double)j;
else x=-1/(double)j;
y=y+x;
}
return y;
}

#include<stdio.h>
#include<math.h>
int isPrime(int x);
int main(){
int x;
int count=0,a=0;
for(x=101;x<=200;x++){
if(isPrime(x)==1){
a++;
count++;
printf("%d ",x);
if(count % 5==0) printf("\n");
}
}
printf("\n101~200之间素数的个数为:%d",a);
return 0;
}
int isPrime(int x){
int i;
for(i=2;i<=sqrt(x);i++){
if(x%i==0) return 0;
}
return 1;
}


浙公网安备 33010602011771号