当前位置:首页 » 编程语言 » c语言猜平均数游戏
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

c语言猜平均数游戏

发布时间: 2022-08-06 02:12:32

① 求c语言程序,猜数游戏。

#include<stdlib.h>
intmain()
{
intn,g,d,t;
n=156;
printf("请输入一个数字: ");
scanf("%d",&g);
while(1)
{
if(g<n)
{
d=g;
printf("太小了, 在输入一个数字:");
scanf("%d",&t);
g=t;
}
if(g>n)
{
d=g;
printf("太大了, 再输入一个数字:");
scanf("%d",&t);
g=t;
}
if(g==n)
{
printf("你猜对了!就是156。 ");
break;
}
}
return0;
}

② 用C语言求平均数,尽量用简单的程序和结构解答

#include"stdio.h"
intmain()
{
intscore1,score2,score3,score4,score5;
floatava;
printf("按从大到小的顺序输入5个0~100之间的整数: ");
scanf("%d%d%d%d%d",&score1,&score2,&score3,&score4,&score5);
ava=(score2+score3+score4)/3;
printf("小明获得的总评分为:%f",ava);
return0;
}

直接写的所以没有排版 提供一个思路没有具体调试运行 不过应该不会出错

③ 用c语言编写一个猜数游戏

#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define Range 100
int guess(int k){
int input;
printf("请输入数字:\t");
scanf("%d",&input);
if(input==k)return 1;
if(input>k)return -1;
if(input<k)return -2;
}
void score(int time){
if(time<5){printf("恭喜! Score: 100\n");return;}
if(time>=5&&time<11){printf("超过时间~ Score: 80\n");return;}
else{printf("笨! Score: 50\n");}
}
int main(){
int aim;
srandom((unsigned)time(0));
aim = random()%Range;
int i,flag;
i=flag=0;
while(flag!=1){
flag=guess(aim);
if(flag==-1)printf("大了!\n");
if(flag==-2)printf("小了!\n");
if(flag==1)printf("恭喜答对! 此数是:%d\n",aim);
i++;
}
score(i);
return 0;
}

④ c语言求n个数的平均数

求n个数平均数源程序如下:

#define _CRT_SECURE_NO_WARNINGS

#include<stdio.h>

int main(void)

{

int a[100] = { NULL };//初始化数组元素

int i = 0, n;//定义循环变量和正整数变量n

float sum = 0.0;//定义和变量为float型,注意计算的数据类型

float average = 0.0;//定义平均数变量为float型,注意计算的数据类型

printf("Please input n (n<100) :");

scanf("%d", &n);//输入正整数n

printf("Please input %d integers:", n);//提示输入几个正整数

for (i = 0; i < n; i++)//循环输入元素

{

scanf("%d", &a[i]);//输入整形变量

sum += a[i];//循环输入的时候同时进行求和

}

//for (i = n - 1; i >= 0; i--)

printf("the a[n] number: ");//倒叙输出数组元素

for (i = 0; i < n; i++)//循环输入元素

printf("%d ", a[i]);//倒叙输出数组元素

printf(" ");

average = sum / (float)n;//注意不同类型之间的计算,这里加了类型强制转换

printf("averge=%.2f ", average);//输出平均数

return 0;

}

程序运行结果如下


(4)c语言猜平均数游戏扩展阅读:

其他实现方式:

#include <iostream>

int main()

{

int i;

double sum = 0;

int count = 0;

scanf("%d", &i);

while (i != -1)

{

sum = sum + i;

count++;

scanf("%d", &i);

}

printf("%.2f", sum / count);

return 0;

}

⑤ C语言编程 猜数游戏

#include
#include
//用到了rand函数,所以要有这个头文件
#include
//用到了time函数,所以要有这个头文件
int
main()
{
int
number;
//number用于存储随机数
int
guess=0;
//guess用于存储玩家猜的数
srand((unsigned)
time(null));//用系统时间作为rand函数使用的种子
number=rand()%100;
//随机除以100,取余数
number++;
//余数加1
printf("猜数字游戏\n");
printf("该数字在1到100之间\n");
while(guess!=number)
{
printf("请输入您所猜的数:");
scanf("%d",&guess);
//如果玩家猜的数较小,给予提示
if
(guess
number)
{
printf("大了\n");
}
}
//猜中则循环结束,输出猜中的数字
printf("猜对了,这个数字就是:%d\n",number);
return
0;
}

⑥ C语言编程题(设计一个猜数字的小游戏)满意再加200分!!!!

我看了楼上几个的答案,功能均不是很完善,所以我决定来试一试
,应该是今天最迟是明天可以贴出来了.希望不要那么快就结贴....

哈哈.....经过了几个小时的奋战.. 终于搞出来了!!!!!!!!!!!!!!!!!!! 你题目要求的功能几乎全部实现.希望你认真调试一下!!!!!!

调试环境.vc++ 6.0. 支持中文编译的编译器都可以调试运行的.

注意事项:如果编译器是不支持中文显示的就会出现乱码的,所以最好是在支持中文显示的编译器上面编译运行.例如:vc++ 6.0以上的版本!!!!

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

#define MAX 5

struct record
{
char name[10];
int sorce;
}rec[MAX],Rec;

int n; //记录行数
int num; //输入的数字

void display(); //开始界面
void xuanze(); //选择函数
void sys(int a); //操作函数
void newgame(); //新游戏
void vdisplay(); //浏览记录界面
void vxuanze(); //浏览选择函数
void help(); //帮助说明
void vsys(int a); //浏览操作函数
void viewsorce(); //按记录的顺序浏览
void viewname(); //按记录的姓名浏览
void viewsname(); //按记录和姓名浏览
void delrec(); //删除记录
int qushu(); //取数函数
int tishi(int aa); //提示函数
void addrec(int a); //判断并且增加记录
void recread(); //读取记录文件
void recwrite(); //写入记录文件

///////////////////////////////////////////////////////////////////////////////////////////////
////////////////////函数定义//////////////

void display() //开始界面
{
system("cls"); //清屏

printf(" ============================================\n");
printf(" ================数字竞猜游戏================\n");
printf(" ============================================\n");
printf("\n");
printf(" 1: 新游戏\n");
printf("\n");
printf(" 2: 浏览记录\n");
printf("\n");
printf(" 3: 帮助说明\n");
printf("\n");
printf(" 4: 清除记录\n");
printf("\n");
printf(" 5: 退出\n");
printf("\n");
printf(" ============================================\n");
xuanze();
}
void xuanze() //选择函数
{
int a;
printf("请输入你所选择的操作数:\n");
scanf("%d",&a);
if(a==1||a==2||a==3||a==4||a==5)
{
sys(a);
}//选择相应的操作数执行函数
else
{
printf("错误的操作数!\n");;
printf("\n");
printf("请按任意键继续...\n");
getchar();
getchar();
display();
}
}
void sys(int a) //操作函数
{
switch(a)
{
case 1:newgame();break;
case 2:vdisplay();break;
case 3:help();break;
case 4:delrec();break;
case 5:exit(0);break; //退出
}
}
void newgame() //新游戏
{
recread();
system("cls"); //清屏
printf("\n");
printf("记录列表显示如下:\n");
printf("\n");
for(int i=0;i<MAX;i++)
{
if(rec[i].sorce==0)printf(" <---空记录--->\n");
else
printf(" 第 %d 名: 姓名: %s 分数 %d\n",i+1,rec[i].name,rec[i].sorce);
}

printf("\n");
printf("请按任意键继续...\n");
getchar();
getchar();//////////////上面列出记录文件中的记录

/////////////////////////////////////////////////////////////////////////////
int snum; //输入的数字
int sn=10; //机会次数
num=qushu(); //取数
L: system("cls"); //清屏

printf(" ============================================\n");
printf(" ================数字竞猜游戏================\n");
printf(" ============================================\n");
printf("\n");
printf(" 1: 显示答案\n");
printf(" ============================================\n");
printf("\n");
printf("请输入你猜想的四个数字(格式为9999样式)你还有 %d 次机会:\n",sn);
scanf("%d",&snum);
if(snum<10000 && snum>1000 || snum==1)
{
if(snum==1)
{
printf("你放弃了本局游戏!该四个数字是: %d\n",num);
printf("\n");
printf("请按任意键继续...\n");
getchar();
getchar();
display();
}
else
{
int flag=tishi(snum);
if(flag!=0 && sn!=0)
{
sn--;
if(sn==0)
{
printf("真是遗憾!十次机会没有了!没有关系!下次继续!\n");
printf("\n");
printf("请按任意键继续...\n");
getchar();
getchar();
display();
}
printf("请按任意键继续猜...\n");
getchar();
getchar();
goto L;
}
else
{
if(sn!=0)addrec(sn);
else
{
printf("请按任意键继续...\n");
getchar();
getchar();
display();
}
}
}
}
else
{
printf("错误的操作数!\n");;
printf("\n");
printf("请按任意键继续...\n");
getchar();
getchar();
goto L;
}
}

void help() //帮助说明
{
system("cls"); //清屏
printf(" ============================================\n");
printf(" ==============数字竞猜游戏帮助==============\n");
printf(" ============================================\n");
printf("\n");
printf("1.新游戏中,你可以输入四位数,来竞猜系统自动生成的四个数字!,只有十次的机会,\n");
printf(" 每次机会都有相对应的提示,十次的机会利用完了还没有猜对的话就算失败!四个数字的\n");
printf(" 相应格式在游戏中会有提示!当成功猜出系统给定的数字时候,就会统计你的成绩.当你的\n");
printf(" 成绩比记录文件中的记录好的时候就会提示你是否把记录记录到记录文件中,当你选择是\n");
printf(" 的时候就会接着提示你输入你的名字.再按回车.没有意外就会提示保存成功!\n");
printf(" 还有要说明的是记录中的分数是越低就代表成绩越好!\n");
printf("2.浏览记录有三种方式!第一种只是列出记录中的姓名;第二种是列出记录中的成绩次序\n");
printf(" 第三种是姓名跟成绩一起列出来!\n");
printf("3.清除记录就是把记录文件初始化.即是让记录文件为空!\n");
printf("\n");
printf("请按任意键继续...\n");
getchar();
getchar();
display();
}

void vdisplay() //浏览记录界面
{
system("cls"); //清屏

printf(" ============================================\n");
printf(" ================数字竞猜游戏================\n");
printf(" ============================================\n");
printf("\n");
printf(" 1: 按记录的顺序浏览\n");
printf("\n");
printf(" 2: 按记录的姓名浏览\n");
printf("\n");
printf(" 3: 姓名记录全部浏览\n");
printf("\n");
printf(" 4: 返回上级\n");
printf("\n");
printf(" ============================================\n");
vxuanze();
}
void vxuanze() //浏览选择函数
{
int a;
printf("请输入你所选择的操作数:\n");
scanf("%d",&a);
if(a==1||a==2||a==3||a==4)
{
vsys(a);
}//选择相应的操作数执行函数
else
{
printf("错误的操作数!\n");;
printf("\n");
printf("请按任意键继续...\n");
getchar();
getchar();
vdisplay();
}
}
void vsys(int a) //浏览操作函数
{
switch(a)
{
case 1:viewsorce();break;
case 2:viewname();break;
case 3:viewsname();break;
case 4:display();break; //返回上级
}
}

void viewname() //按记录的顺序浏览
{
recread();
system("cls"); //清屏
printf("\n");
printf("记录列表显示如下:\n");
printf("\n");
for(int i=0;i<MAX;i++)
{
if(rec[i].sorce==0)printf(" <---空记录--->\n");
else
printf(" 第 %d 名: 姓名: %s\n",i+1,rec[i].name);
}

printf("\n");
printf("请按任意键继续...\n");
getchar();
getchar();
vdisplay();
}
void viewsorce() //按记录的姓名浏览
{
recread();
system("cls"); //清屏
printf("\n");
printf("记录列表显示如下:\n");
printf("\n");
for(int i=0;i<MAX;i++)
{
if(rec[i].sorce==0)printf(" <---空记录--->\n");
else
printf(" 第 %d 名: 分数 %d\n",i+1,rec[i].sorce);
}

printf("\n");
printf("请按任意键继续...\n");
getchar();
getchar();
vdisplay();
}
void viewsname() //按姓名和记录浏览
{
recread();
system("cls"); //清屏
printf("\n");
printf("记录列表显示如下:\n");
printf("\n");
for(int i=0;i<MAX;i++)
{
if(rec[i].sorce==0)printf(" <---空记录--->\n");
else
printf(" 第 %d 名: 姓名: %s 分数 %d\n",i+1,rec[i].name,rec[i].sorce);
}

printf("\n");
printf("请按任意键继续...\n");
getchar();
getchar();
vdisplay();
}
void delrec() //删除记录
{
recread();
for(int i=0;i<MAX;i++)
{
rec[i].sorce=0;
}
recwrite();
printf("删除成功!\n");
printf("\n");
printf("请按任意键继续...\n");
getchar();
getchar();
display();
}

int qushu() //取数函数
{
int a=0;
int i=0;

srand( (unsigned)time( NULL ) ); //随机数种子设置

while(i==0)
{
i=rand(); //这样做就是为了增加随机性
i=i%100;
}

L: for(int j=0;j<i;j++)
{
a=a+rand(); //判断随机数是否是四位数 如果不是继续取数
}
a=(a/i+rand())%10000;
if(a<1000)goto L;

return(a);
}

int tishi(int aa) //提示函数
{
int a,b,c,d;
int af,bf,cf,df;
if(aa==num)
{
printf("恭喜!你猜对了!四个数就是:%d\n",num);
return(0);
}
else
{
a=(num-num%1000)/1000;
b=(num%1000-(num%1000)%100)/100;
c=((num%1000)%100-((num%1000)%100)%10)/10; //获取默认四个数字
d=((num%1000)%100)%10;

af=(aa-aa%1000)/1000;
bf=(aa%1000-(aa%1000)%100)/100;
cf=((aa%1000)%100-((aa%1000)%100)%10)/10; //获取输入的四个数字
df=((aa%1000)%100)%10;

if(af>a)printf("\n第一个数应该比 %d 小一点!\n",af);
if(af==a)printf("恭喜!第一个数字对了!应该是: %d\n",af); //数字比较
if(af<a)printf("第一个数应该比 %d 大一点!\n",af);

if(bf>b)printf("第二个数应该比 %d 小一点!\n",bf);
if(bf==b)printf("恭喜!第二个数字对了!就是: %d\n",bf); //数字比较
if(bf<b)printf("第二个数应该比 %d 大一点!\n",bf);

if(cf>c)printf("第三个数应该比 %d 小一点!\n",cf);
if(cf==c)printf("恭喜!第三个数字对了!就是: %d\n",cf); //数字比较
if(cf<c)printf("第三个数应该比 %d 大一点!\n",cf);

if(df>d)printf("第四个数应该比 %d 小一点!\n",df);
if(df==d)printf("恭喜!第四个数字对了!就是: %d\n",df); //数字比较
if(df<d)printf("第四个数应该比 %d 大一点!\n\n",df);

return(1);
}
}

void addrec(int a) //判断并且增加记录
{
char c;
int flag=0; //标志位
a=11-a;
recread();
for(int i=0;i<MAX;i++)
{
if(a<rec[i].sorce || rec[i].sorce==0)
{
if(i==4 || rec[i].sorce==0)
{
printf("\n");
printf("恭喜!你的成绩 %d 分已经达到了前五名!\n",a);
printf("确认要保存记录请按'y',任意键返回...!\n");
scanf("%s",&c);
if(c!='y')display();
rec[i+1].sorce=rec[i].sorce; //记录后移
strcpy(rec[i+1].name,rec[i].name);
printf("请输入你的名字\n");
scanf("%s",&rec[i].name);
rec[i].sorce=a;
recwrite(); //写入
printf("恭喜!添加成功!\n",a);
flag++;
printf("\n");
printf("请按任意键继续...\n");
getchar();
getchar();
display();
}
else
{
printf("\n");
printf("恭喜!你的成绩 %d 分已经达到了前五名!\n",a);
printf("确认要保存记录请按'y',任意键返回...!\n");
scanf("%s",&c);
if(c!='y')display();
for(int j=i;j<MAX-1;j++)
{
rec[j+1].sorce=rec[j].sorce; //记录后移
strcpy(rec[j+1].name,rec[j].name);
if(rec[j+2].sorce==0)break;
}
printf("\n");
printf("请输入你的名字\n");
scanf("%s",&rec[i].name);
rec[i].sorce=a;
recwrite(); //写入
printf("恭喜!添加成功!\n",a);
flag++;
printf("\n");
printf("请按任意键继续...\n");
getchar();
getchar();
display();
}
}
}
if(flag==0)
{
printf("\n");
printf("请按任意键继续...\n");
getchar();
getchar();
display();
}
}

void recread() //读取记录文件
{
FILE *fp;
L: fp=fopen("E:\\rec.rec","rb");
if(fp==NULL)
{
recwrite();
goto L; //初始化
}
if(fread(&rec,sizeof(record),MAX,fp)==MAX)
{
}
else
{
printf("文件读取失败!");
}
fclose(fp);
}
void recwrite() //写入记录文件
{
FILE *fp;
fp=fopen("E:\\rec.rec","wb");
if(fp==NULL)
printf("写入失败!\n");
fwrite(rec,sizeof(record),MAX,fp);
fclose(fp);
}

void main()
{
display();
}

////////////////////////////////

⑦ 怎么用c语言计算平均数

1、新建一个求数组内所有元素的平均值项目。

⑧ 怎样用C语言求平均数

题目:计算键盘输入的整数的平均值。遇到输入数为负数时,结束程序,输出结果。
实现过程:

  1. 定义一个整形变量n,用来存储每次输入的整数

  2. 定义一个整形变量cnt,用来记录输入的整数的个数

  3. 定义浮点型变量sum保存整数的和,初始化为0.0

  4. 使用for循环,cnt为循环控制变量,输入一个整数n,若n<0结束循环,否则将输入的数据n累加到sum中

  5. 如果cnt大于0,则输出平均值sum/cnt ;

参考代码:

⑨ c语言猜数游戏,100以内!结束时输出玩家猜的次数,并询问玩家是否继续

#include<stdio.h>
#include<stdlib.h>
#include"time.h"
intmain(intargc,char*argv[])
{
intnum,n=-1,count=0,flag=0;
while(1)
{
if(flag==0)
{
system("cls");
count=0;
n=-1;
srand(time(0));
num=rand()%100+1;
flag=1;
}
printf(" 请输入你猜的数:");
scanf("%d",&n);
count++;
if(n>num)
{
printf("过大");
}
elseif(n<num)
{
printf("过小");
}
else
{
printf(" 正确,你共猜了%d次。 还要继续吗:[y/n]:",count);
intc;
fflush(stdin);
c=_getche();
if(c=='y'||c=='Y')
{
flag=0;
continue;
}
else
break;
}
}
return0;
}