
#include<stdioh>
void main(void)
{
int i,j,k;
for(i=0;i<=20;i++)
for(j=0;j<=33;j++)
/若各种孔雀的数量都不能为0,则给i,j赋初值1/
{k=100-i-j;
if(5i+3j+05k==100)
printf("大:%d 中:%d 小:%d\n",i,j,k);
}
}
楼上的和楼上的楼上的楼上是SB。
辽工大的吧。
需要盘文件输入输出、数组、循环、选择、除主函数外至少要用到3个自定义函数。
你这分给的也太少了吧
以下(COPY):
这个就可以:
咱班都看过了。。(底下都写上!!!!我记得有个地方他打错了,交之前让老师帮你改一改。这个交上去是很多个老师一起看!!)
1题目:学生信息管理系统
2程序要求:
学生信息录入功能
用户从键盘输入每个学生的信息:学号、姓名、性别、数学、英语、政治、语文四门课成绩。
可插入一个或多个学生信息到当前编辑的班级数据中。
文件保存功能
学生信息每一班存为一个数据文件,数据文件可在程序中打开、编辑和重新保存。
用户输入学生信息可随时保存数据文件。
文件打开功能
程序只能对当前打开的数据文件进行编辑。
查询功能
浏览所有学生信息。
按学号查询学生信息。
按姓名查询学生信息。
查询一个班总成绩和平均成绩。
查询一个班某一门课总成绩和平均成绩。
查询某一门课分数段(<60,60-69,70-79,80-89,>90)学生数。
报表输出功能
按学号输出一个班学生信息:学号、姓名、性别、数学、英语、政治、语文成绩、总成绩,到屏幕和文件。
按总成绩从高到低输出学号、姓名信息。
注:以上功能以菜单形式供用户使用,并有一定的容错功能。
3开发语言环境:Macrosoft VC++60或Turbo C20
4数据结构:数组或链表
5程序源代码要求:
函数名、变量名采用英文缩写,使用匈牙利命名法进行自说明。
源代码的书写采用递进格式。
程序行和程序段须有注释。
#include "stdioh" /I/O函数/
#include "stdlibh" /其它说明/
#include "stringh" /字符串函数/
#include "conioh" /屏幕 *** 作函数/
#include "memh" /内存 *** 作函数/
#include "ctypeh" /字符 *** 作函数/
#include "alloch" /动态地址分配函数/
struct score
{
int mingci;
char xuehao[8];
char mingzi[20];
float score[6];
}data,info[1000];
int i,j,k=0;
char temp[20],ch;
FILE fp,fp1;
void shuru()
{
if((fp=fopen("s_scoretxt","ab+"))==NULL)
{
printf("cannot open this file\n");
getch();exit(0);
}
for(i=0;i<=1000;i++)
{
printf("\nPlease shuru xuehao:");
gets(dataxuehao);
printf("Please shuru mingzi:");
gets(datamingzi);
printf("Please shuru yuwen score:");
gets(temp);datascore[0]=atof(temp);
printf("Please shuru shuxue score:");
gets(temp);datascore[1]=atof(temp);
printf("Please input yingyu score:");
gets(temp);datascore[2]=atof(temp);
printf("Please shuru wuli score:");
gets(temp);datascore[3]=atof(temp);
printf("Please shur huaxue score:");
gets(temp);datascore[4]=atof(temp);
datascore[5]=datascore[0]+datascore[1]+datascore[2]+datascore[3]+datascore[4];
fwrite(&data,sizeof(data),1,fp);
printf("anothery/n");
ch=getch();
if(ch=='n'||ch=='N')
break;
} fclose(fp);
}
void xianshi()
{
float s;int n;
if((fp=fopen("s_scoretxt","rb+"))==NULL)
{
printf("Cannot reading this file\n");
exit(0);
}
for(i=0;i<=1000;i++)
{
if((fread(&info[i],sizeof(info[i]),1,fp))!=1)
break;
}
printf("\nxuehao mingzi yuwen shuxue yingyu wuli huauxue zhongfen\n");
for(j=0,k=1;j<i;j++,k++)
{
info[j]mingci=k;
printf("%6s %8s %31f %31f %31f %31f %31f %31f\n",info[j]xuehao,info[j]mingzi,info[j]score[0],info[j]score[1],info[j]score[2],info[j]score[3],info[j]score[4],
info[j]score[5]);
}
getch();
fclose(fp);
}
void xiugai()
{
if((fp=fopen("s_scoretxt","rb+"))==NULL||(fp1=fopen("temptxt","wb+"))==NULL)
{
printf("Cannot open this file\n");
exit(0);
}
printf("\nPLease shuru xiugai xuehao:");
scanf("%d",&i); getchar();
while((fread(&data,sizeof(data),1,fp))==1)
{
j=atoi(dataxuehao);
if(j==i)
{
printf("xuehao:%s\nmingzi:%s\n",dataxuehao,datamingzi);
printf("Please shuru mingzi:");
gets(datamingzi);
printf("Please shuru yuwen score:");
gets(temp);datascore[0]=atof(temp);
printf("Please shuru shuxue score:");
gets(temp);datascore[1]=atof(temp);
printf("Please input yingyu score:");
gets(temp);datascore[2]=atof(temp);
printf("Please input wuli score:");
gets(temp);datascore[3]=atof(temp);
printf("Please input huaxue score:");
gets(temp);datascore[4]=atof(temp);
datascore[5]=datascore[0]+datascore[1]+datascore[2]+datascore[3]+datascore[4];
} fwrite(&data,sizeof(data),1,fp1);
}
fseek(fp,0L,0);
fseek(fp1,0L,0);
while((fread(&data,sizeof(data),1,fp1))==1)
{
fwrite(&data,sizeof(data),1,fp);
}
fclose(fp);
fclose(fp1);
}
void chazhao()
{
if((fp=fopen("s_scoretxt","rb"))==NULL)
{
printf("\nCannot open this file\n");
exit(0);
}
printf("\nPLease shuru xuehao chakan:");
scanf("%d",&i);
while(fread(&data,sizeof(data),1,fp)==1)
{
j=atoi(dataxuehao);
if(i==j)
{
printf("xuehao:%s mingzi:%s\nyuwen:%f\n shuxue:%f\n yingyu:%f\n wuli:%f\n huaxue:%f\n ",dataxuehao,datamingzi,datascore[0],datascore[1],datascore[2],datascore[3],datascore[4],datascore[5]);
}getch();
}
}
void shanchu()
{
if((fp=fopen("s_scoretxt","rb+"))==NULL||(fp1=fopen("temptxt","wb+"))==NULL)
{
printf("\nopen scoretxt was failed!");
getch();
exit(0);
}
printf("\nPlease input ID which you want to del:");
scanf("%d",&i);getchar();
while((fread(&data,sizeof(data),1,fp))==1)
{
j=atoi(dataxuehao);
if(j==i)
{
printf("Anykey will delet it\n");
getch();
continue;
}
fwrite(&data,sizeof(data),1,fp1);
}
fclose(fp);
fclose(fp1);
remove("s_scoretxt");
rename("temptxt","s_scoretxt");
printf("Data delet was succesful!\n");
printf("Anykey will return to main");
getch();
}
main()
{
while(1)
{
clrscr(); /清屏幕/
gotoxy(1,1); /移动光标/
textcolor(YELLOW); /设置文本显示颜色为**/
textbackground(BLUE); /设置背景颜色为蓝色/
window(1,1,99,99); / 制作显示菜单的窗口,大小根据菜单条数设计/
clrscr();
printf("welcome to use student manage\n");
printf("menu\n");
printf(" ========================================================= \n");
printf(" 1>shuru 2>xiugai \n");
printf(" 3>shanchu 4>chazhao \n");
printf(" 5>xianshi 6>exit \n");
printf(" \n");
printf(" --------------------------------------------------------- \n");
printf(" Please input which you want(1-6):");
ch=getch();
switch(ch)
{
case '1':shuru();break;
case '2':xiugai(); break;
case '3':shanchu(); break;
case '4':chazhao(); break;
case '5':xianshi(); break;
case '6':exit(0);
default: continue;
}
}
}
/13 bookc源程序/
#include <dosh>
#include <biosh>
#include <conioh>
#include <stdioh>
#include <stdlibh>
#include <mathh>
#define LEFT 0x4b00 /左/
#define RIGHT 0x4d00 /右/
#define DOWN 0x5000 /下/
#define UP 0x4800 /上/
#define SPACE 0x3920 /空格/
#define ESC 0x011b / ESC键/
#define ENTER 0x1c0d /回车键/
#define Backspace 0xe08 /擦除键/
#define ALT_B 12288 /组合键ALT_B /
#define ALT_M 12800/组合键ALT_M /
#define ALT_H 8960/组合键ALT_H /
int key;/按键变量/
int textx,texty;/光标坐标,x行,y列/
struct menustruct/菜单用的结构体/
{
char name[10];/主菜单名/
char str[10][20];/选项/
int n;/选项数/
}ml[3];/使用了3个,可根据需要增删/
typedef struct BookList/书的结构体/
{
char num[20];/图书编号/
char name[20];/书名/
int price;/书的价格/
char person[20];/借阅人/
int yes;/判断书是否存在或者已经借出,1存在,0借出/
struct BookList next;
}Book;
typedef struct MemberList/会员的结构体/
{
char name[20];/会员的姓名/
char sex[2];/会员的性别/
int age;/会员的年龄/
struct MemberList next;
}Member;
char save[4096];/保存文本区域空间/
/char sav1[4096];/
char c[4096];/清屏专用空间/
int i,j;/常用变量/
void Menu();/初始化界面/
void Selectitem();/定义菜单/
void DrawSelectitem();/显示主菜单/
void BlackText(int x,int y,char z);/选中菜单/
void RedText(int x,int y,char z);/正常菜单/
void Run();/具体 *** 作过程/
void DrawMl(int n);/显示下拉菜单/
void MoveMl(int n,int x);/菜单选项的控制/
void Enter(int m,int n);/菜单选项的具体功能/
void BookAdd();/添加图书/
void BookConsult();/图书查询/
void BookDel();/删除图书资料/
void BookBorrow();/借书/
void BookReturn(); /还书/
void MemberAdd(); /增加会员/
void MemberConsult();/查询会员/
void MemberDel(); /删除会员/
void MemberBook(); /查询会员借书信息/
void Help(); /帮助/
void Ver(); /版本信息/
void ClrScr();/自定义清屏函数/
void DrawFrame(int left,int up,int right,int down,int textcolor,int backgroundcolor);/画边框/
/主函数/
void main(void)
{
Menu();/初始化界面/
Run();/具体 *** 作过程/
}
/初始化界面/
void Menu()
{
system("cls"); /调用系统的清屏命令/
textbackground(BLUE);/将背景设置为蓝色/
window(1,1,25,80);
clrscr();
textx=3;/光标初始化位置/
texty=2;
gotoxy(1,2);
printf("%c",218);/画左上角/
for(i=0;i<78;i++)
printf("%c",196); /画水平直线/
printf("%c",191);/画右上角/
for(i=3;i<=23;i++)
{
gotoxy(1,i);
printf("%c",179); /画垂直线/
gotoxy(80,i);
printf("%c",179);
}
printf("%c",192); /画左下角/
for(i=0;i<78;i++)
printf("%c",196);
printf("%c",217); /画右下角/
gotoxy(1,1);
textcolor(7); /设置灰色/
for(i=0;i<80;i++)
cprintf("%c",219);/用符号实现画主菜单的灰色背景区/
Selectitem(); /调用选项函数/
DrawSelectitem(); /画选项/
gettext(2,3,78,23,c); /保存当前文本区域/
}
/定义菜单/
void Selectitem()
{
strcpy(ml[0]name,"Book");/下面的具体选项补空格是为了各菜单黑色背景相同/
strcpy(ml[0]str[0],"Add ");/添加图书/
strcpy(ml[0]str[1],"Consult ");/查询图书/
strcpy(ml[0]str[2],"Del ");/删除图书资料/
strcpy(ml[0]str[3],"Borrow ");/借书/
strcpy(ml[0]str[4],"Return ");/还书/
strcpy(ml[0]str[5],"Exit ");/退出系统/
ml[0]n=6; /保存菜单的项数/
strcpy(ml[1]name,"Member");
strcpy(ml[1]str[0],"Add ");/添加新会员/
strcpy(ml[1]str[1],"Consult ");/查询会员资料/
strcpy(ml[1]str[2],"Del ");/删除会员资料/
strcpy(ml[1]str[3],"Member&book ");
ml[1]n=4;
strcpy(ml[2]name,"Help");/系统帮助/
strcpy(ml[2]str[0],"This System ");
strcpy(ml[2]str[1],"Ver ");
ml[2]n=2;
}
/显示主单名/
void DrawSelectitem()
{
for(i=0;i<3;i++)
RedText(i,1,ml[i]name); /显示主菜单名,且首字母为红色/
}
/正常显示菜单/
void RedText(int x,int y,char z)
{
textbackground(7); /设置背景颜色为浅灰色/
gotoxy(3+x20,y);
for(j=0;z[j];j++)
{
if(j==0)
textcolor(RED);/第一个字母显示红色/
else
textcolor(BLACK); /设置黑色/
cprintf("%c",z[j]); /输出菜单名/
}
}
/显示选中菜单/
void BlackText(int x,int y,char z)
{
textbackground(0); /设置背景颜色为黑色/
textcolor(15); /设置文本颜色为白色/
gotoxy(3+20x,y);/定位坐标/
cputs(z); /输出菜单名字符串/
}
/按键 *** 作过程/
void Run()
{
while(1)
{
gotoxy(texty,textx);
key=bioskey(0);/接收按键/
switch(key)
{
case ALT_B:
case ESC: DrawMl(0);break; /显示下拉菜单1/
case ALT_M: DrawMl(1);break;/显示下拉菜单2/
case ALT_H: DrawMl(2);/显示下拉菜单3/
case UP: /上光标键的 *** 作控制/
{
if(textx==3)
textx=23;
textx--;
gotoxy(texty,textx);
}break;
case DOWN: /下光标键的 *** 作控制/
{
if(textx==23)
textx=3;
textx++;
gotoxy(texty,textx);
}break;
case LEFT: /左光标键的 *** 作控制/
{
if(texty==2)
texty=79;
texty--;
gotoxy(texty,textx);
}break;
case Backspace: /擦除键的设置/
{
if(texty==2&&textx==3)
continue;
else
{
if(texty!=2)
texty--; /擦除键的细节问题,先擦去东西,然后光标还要往后退一格/
else
if(texty==2)
{
texty=78;
textx--;
}
gotoxy(texty,textx);
printf(" ");
gotoxy(texty,textx);
}
}break;/end case 0xe08/
case RIGHT: /右光标键的 *** 作控制/
{
if(texty==79)
texty=2;
texty++;
gotoxy(texty,textx);
}break;
case SPACE: /空格键的 *** 作/
{
if(texty==79)
continue;
else
{
gotoxy(texty,textx); /空格的细节 *** 作/
printf(" ");
texty++;
gotoxy(texty,textx);
}
}break;
case ENTER: /回车的控制 *** 作/
{
if(textx==23)
continue;
textx++;
texty=2;
gotoxy(texty,textx);
}break;
default : /非控制键的结果/
{
if(texty==79&&textx==23)/到达最后就不再输出/
continue;
else
if(texty==79&&textx!=23) /到行的最后/
{
textx++;
texty=2;
}
gotoxy(texty,textx);/输出结果/
printf("%c",key);
if(texty==79) /如果texty==79就不执行/
continue;
else /如果没到行尾就继续执行,使光标向前移动一位/
texty++;
}
}
}/大循环的大括号/
}
/画边框函数/
void DrawFrame(int l,int u,int r,int d,int tcolor,int bcolor)
{
textbackground(bcolor); /背景颜色/
textcolor(bcolor); /文本颜色/
for(i=l;i<=r;i++) /输出背景区域/
{
for(j=u;j<=d;j++)
{
gotoxy(i,j);
printf("%c",219); /输出背景字符/
}
}
textcolor(tcolor);/边框颜色/
for(i=u+1;i<d;i++) /在背景区域内输出边框线/
{
gotoxy(l,i);
cprintf("%c",179); /垂直线/
gotoxy(r,i);
cprintf("%c",179);
}
for(i=l+1;i<r;i++)
{
gotoxy(i,u);
cprintf("%c",196); /水平线/
gotoxy(i,d);
cprintf("%c",196);
}
gotoxy(l,u);
cprintf("%c",218);/左上角/
gotoxy(r,u);
cprintf("%c",191);/右上角/
gotoxy(l,d);
cprintf("%c",192);/左下角/
gotoxy(r,d);
cprintf("%c",217); /右下角/
/ gettext(l+1,u+1,r-1,d-1,save1);//保存边框内区域/
}
/显示具体下拉选择项目/
void DrawMl(int n)
{
gettext(1,1,80,25,save);/保存被掩盖的地方/
BlackText(n,1,ml[n]name);/反选显示主菜单/
DrawFrame(3+20n-1,2,3+20n+19,3+ml[n]n,0,7);/下拉菜单的边框/
for(i=3;i<3+ml[n]n;i++)/输出所选菜单各选项/
{
if(i==3)
BlackText(n,i,ml[n]str[i-3]);/默认选中第一项/
else
RedText(n,i,ml[n]str[i-3]);/其余各项首字符红色显示/
}
gotoxy(79,1);
MoveMl(n,3);/菜单选项的控制/
}
/菜单选项的控制,n决定水平项,x决定下拉的选项/
void MoveMl(int n,int x)
{
int flag=1;
while(flag)
{
gotoxy(79,1);
key=bioskey(0);/接收按键/
gotoxy(79,1);
switch(key)
{
case ESC:/退出循环/
puttext(1,1,80,25,save);/恢复打开菜单前的样子/
flag=0;
break;
case LEFT:/移到左边的选项/
puttext(1,1,80,25,save);/恢复打开菜单前的样子/
if(n==0)/往左移动越界的话移到最后一个选项/
DrawMl(2);
else
DrawMl(n-1);
flag=0;
break;
case RIGHT:/移动右边的选项/
puttext(1,1,80,25,save);/恢复打开菜单前的样子/
if(n==2)/往右移动越界的话移到第一个选项/
DrawMl(0);
else
DrawMl(n+1);
flag=0;
break;
case UP:/具体选项往上移动/
RedText(n,x,ml[n]str[x-3]);/输出红色字体/
if(x==3)/移到最上面再按上键,就移到最下面/
x=3+ml[n]n-1;
else
x--;/移动到新的要显示的内容/
BlackText(n,x,ml[n]str[x-3]);/输出黑色字体/
flag=1;
break;
case DOWN:/具体选项往下移动/
RedText(n,x,ml[n]str[x-3]);
if(x==(3+ml[n]n-1))/移动到最底下再按下键就移到最上面/
x=3;
else
x++;/移动到新的要显示的内容/
BlackText(n,x,ml[n]str[x-3]);
flag=1;
break;
case ENTER:
puttext(1,1,80,25,save);/恢复打开菜单前的样子/
Enter(n,x-3);/菜单选项的具体功能/
flag=0;
break;
}
gotoxy(79,1);
}
}
/菜单选项的具体功能/
void Enter(int m,int n)
{
switch(m)
{
case 0:switch(n) /选择了图书菜单选项/
{
case 0:BookAdd();break;/添加图书/
case 1:BookConsult();break;/图书查询/
case 2:BookDel();break;/删除一本图书资料/
case 3:BookBorrow();break;/借书/
case 4:BookReturn();break;/还书/
case 5:exit(0);break;
} break;/退出系统/
case 1: switch(n) /选择了会员菜单选项/
{
case 0: MemberAdd();break;/添加会员/
case 1: MemberConsult();break;/会员查询/
case 2:MemberDel();break;/删除一个会员资料/
case 3:MemberBook();/查询某个会员所借图书情况/
}break;
case 2:switch(n) /选择了帮助菜单选项/
{
case 0:Help();break;
case 1:Ver();
}
}/结束外switch/
}
D
B
C
D
此题有歧意,本意可能让选C,但在标识符中间不得有注释;D又不对,起码得有个空main
C
D
A
一天了没人做,我来做做……
#define N 200
#include <graphicsh>
#include <stdlibh>
#include <dosh>
#define LEFT 0x4b00
#define RIGHT 0x4d00
#define DOWN 0x5000
#define UP 0x4800
#define ESC 0x011b
int i,key;
int score=0;/得分/
int gamespeed=50000;/游戏速度自己调整/
struct Food
{
int x;/食物的横坐标/
int y;/食物的纵坐标/
int yes;/判断是否要出现食物的变量/
}food;/食物的结构体/
struct Snake
{
int x[N];
int y[N];
int node;/蛇的节数/
int direction;/蛇移动方向/
int life;/ 蛇的生命,0活着,1死亡/
}snake;
void Init(void);/图形驱动/
void Close(void);/图形结束/
void DrawK(void);/开始画面/
void GameOver(void);/结束游戏/
void GamePlay(void);/玩游戏具体过程/
void PrScore(void);/输出成绩/
/主函数/
void main(void)
{
Init();/图形驱动/
DrawK();/开始画面/
GamePlay();/玩游戏具体过程/
Close();/图形结束/
}
/图形驱动/
void Init(void)
{
int gd=DETECT,gm;
initgraph(&gd,&gm,"c:\\tc");
cleardevice();
}
/开始画面,左上角坐标为(50,40),右下角坐标为(610,460)的围墙/
void DrawK(void)
{
/setbkcolor(LIGHTGREEN);/
setcolor(11);
setlinestyle(SOLID_LINE,0,THICK_WIDTH);/设置线型/
for(i=50;i<=600;i+=10)/画围墙/
{
rectangle(i,40,i+10,49); /上边/
rectangle(i,451,i+10,460);/下边/
}
for(i=40;i<=450;i+=10)
{
rectangle(50,i,59,i+10); /左边/
rectangle(601,i,610,i+10);/右边/
}
}
/玩游戏具体过程/
void GamePlay(void)
{
randomize();/随机数发生器/
foodyes=1;/1表示需要出现新食物,0表示已经存在食物/
snakelife=0;/活着/
snakedirection=1;/方向往右/
snakex[0]=100;snakey[0]=100;/蛇头/
snakex[1]=110;snakey[1]=100;
snakenode=2;/节数/
PrScore();/输出得分/
while(1)/可以重复玩游戏,压ESC键结束/
{
while(!kbhit())/在没有按键的情况下,蛇自己移动身体/
{
if(foodyes==1)/需要出现新食物/
{
foodx=rand()%400+60;
foody=rand()%350+60;
while(foodx%10!=0)/食物随机出现后必须让食物能够在整格内,这样才可以让蛇吃到/
foodx++;
while(foody%10!=0)
foody++;
foodyes=0;/画面上有食物了/
}
if(foodyes==0)/画面上有食物了就要显示/
{
setcolor(GREEN);
rectangle(foodx,foody,foodx+10,foody-10);
}
for(i=snakenode-1;i>0;i--)/蛇的每个环节往前移动,也就是贪吃蛇的关键算法/
{
snakex[i]=snakex[i-1];
snakey[i]=snakey[i-1];
}
/1,2,3,4表示右,左,上,下四个方向,通过这个判断来移动蛇头/
switch(snakedirection)
{
case 1:snakex[0]+=10;break;
case 2: snakex[0]-=10;break;
case 3: snakey[0]-=10;break;
case 4: snakey[0]+=10;break;
}
for(i=3;i<snakenode;i++)/从蛇的第四节开始判断是否撞到自己了,因为蛇头为两节,第三节不可能拐过来/
{
if(snakex[i]==snakex[0]&&snakey[i]==snakey[0])
{
GameOver();/显示失败/
snakelife=1;
break;
}
}
if(snakex[0]<55||snakex[0]>595||snakey[0]<55||
snakey[0]>455)/蛇是否撞到墙壁/
{
GameOver();/本次游戏结束/
snakelife=1; /蛇死/
}
if(snakelife==1)/以上两种判断以后,如果蛇死就跳出内循环,重新开始/
break;
if(snakex[0]==foodx&&snakey[0]==foody)/吃到食物以后/
{
setcolor(0);/把画面上的食物东西去掉/
rectangle(foodx,foody,foodx+10,foody-10);
snakex[snakenode]=-20;snakey[snakenode]=-20;
/新的一节先放在看不见的位置,下次循环就取前一节的位置/
snakenode++;/蛇的身体长一节/
foodyes=1;/画面上需要出现新的食物/
score+=10;
PrScore();/输出新得分/
}
setcolor(4);/画出蛇/
for(i=0;i<snakenode;i++)
rectangle(snakex[i],snakey[i],snakex[i]+10,
snakey[i]-10);
delay(gamespeed);
setcolor(0);/用黑色去除蛇的的最后一节/
rectangle(snakex[snakenode-1],snakey[snakenode-1],
snakex[snakenode-1]+10,snakey[snakenode-1]-10);
} /endwhile(!kbhit)/
if(snakelife==1)/如果蛇死就跳出循环/
break;
key=bioskey(0);/接收按键/
if(key==ESC)/按ESC键退出/
break;
else
if(key==UP&&snakedirection!=4)
/判断是否往相反的方向移动/
snakedirection=3;
else
if(key==RIGHT&&snakedirection!=2)
snakedirection=1;
else
if(key==LEFT&&snakedirection!=1)
snakedirection=2;
else
if(key==DOWN&&snakedirection!=3)
snakedirection=4;
}/endwhile(1)/
}
/游戏结束/
void GameOver(void)
{
cleardevice();
PrScore();
setcolor(RED);
settextstyle(0,0,4);
outtextxy(200,200,"GAME OVER");
getch();
}
/输出成绩/
void PrScore(void)
{
char str[10];
setfillstyle(SOLID_FILL,YELLOW);
bar(50,15,220,35);
setcolor(6);
settextstyle(0,0,2);
sprintf(str,"score:%d",score);
outtextxy(55,20,str);
}
/图形结束/
void Close(void)
{
getch();
closegraph();
}
第一题:
#include <stdioh>
#include <timeh>
#include <stdlibh>
int main()
{
int i,j, a,b, res, sum=0;
char ch;
printf("Now ready to answer!\nEvery question you have 3 chances to answer, first chance you answer right you can got 10, second got 7, third got 5 Otherwise can not got score!\n");
for(i=0; i<10; i++)
{
printf("%dth question:", i+1);
srand(time(NULL));
a = rand()%50;
b = rand()%(a>25(50-a):a);
ch = rand()%2;
if(ch) ch='+';
else ch='-';
printf("%d %c %d = ", a, ch, b);
for(j=0; j<3; j++)
{
scanf("%d", &res);
if(ch=='+')
if(res==a+b){
printf("right!\n");
switch(j){
case 0: sum+=10;break;
case 1: sum+=7; break;
case 2: sum+=5; break;
}
break;
}
else{
printf("wrong!\n");
if(j!=2)printf("try again:");
}
else
if(res==a-b){
printf("right!\n");
switch(j){
case 0: sum+=10;break;
case 1: sum+=7; break;
case 2: sum+=5; break;
}
break;
}
else{
printf("wrong!\n");
if(j!=2)printf("try again:");
}
}
}
printf("your score is : %d\n", sum);
return 0;
}
以上就是关于C语言程序设计作业(帮帮忙)全部的内容,包括:C语言程序设计作业(帮帮忙)、c语言程序设计,大学生作业,急需,老师这周四就要,高手们帮帮忙啊!、求-c语言程序设计作业。请大家帮帮忙-_-~等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)