星空5G 导航

高手用C帮我编写几个程序,我学习参考。~!!-

2024-08-22编辑:本站
我想学用C或C++编写游戏程序~

额,被我看到这个问题,你就幸运囖。

我就是游戏软件开发专业的。。

首先你要用C C++做游戏,必须先学好C C++

市面上这些书太多了,自己选一部名气大的看看就可以了。

学完C++ 就可以做一些普通平面游戏了。

现在比较热门的 植物大战僵尸 只要会C++就可以做。


然后就要学习 directx 编程。这个比较重要
是图形编程,3D游戏不可或缺的技术

至于推进你看什么书,我就好难说了,我的书都是学校买的,书名就是 《游戏软件开发》

你可以搜搜

#include
#include
using namespace std;

int main()
{
// 定义一个2维字符型数组存放菜单,假设都是不超过四个汉字的菜名
char cMenu[][9] = {
"酸菜豆腐",
"红烧茄子",
"麻辣鸡丝",
"火爆腰花",
"水煮牛肉",
"吃什么呢",
"最讨厌了"
};

int iCountDishes = sizeof(cMenu)/9; // 菜单上一共有这么多道菜

// 遍历菜单
cout<<" 欢迎光临,请点菜"<<endl;
cout<<" 编号 菜名"<<endl;
for (int i = 0; i < iCountDishes; i++)
{
cout<<" "<<i+1<<" "<<cMenu[i]<<endl;
}

// 输入编号点菜
vector VBill; // 顾客的账单
int iTemp = 0; // 临时整形变量,用来存放顾客点菜的编号
bool bIsFirst = true; // 用来辅助进入点菜循环的布尔型变量
cout<<endl<<"请输入编号进行点菜,输入0则结束点菜:"<<endl;
while (iTemp||bIsFirst)
{
bIsFirst = false;
cin>>iTemp; // 用户输入
// 确定有这道菜
if ((iTemp > 0)&&(iTemp <= iCountDishes))
{
VBill.push_back(iTemp);
cout<<"您刚点了一道"<<cMenu[iTemp]<<endl;
}
else if (iTemp != 0)
{
cout<<"对不起,没有这道菜,请重新点菜。"<<endl;
}
}
cout<<endl<<"请确认!"<<endl;
for (unsigned int i = 0; i < VBill.size(); i++)
{
cout<<"第"<<i+1<<"道菜是:"<<cMenu[VBill[i]]<<endl;
}

system("pause");
return 0;
};

// 由于顾客点菜的数量不确定,所以顾客的选择那里我使用的是整形的
// vector,这是STL中的可扩展长度的数组,也算是数组吧。
// 不行的话换成int[]自己给定长度就是了。

第一题:
#include<stdio.h>
voidmain()
{
inta,b,c;
int*p;
printf("请输入需要交换的第1个数:");
scanf("%d",&a);
printf("请输入需要交换的第2个数:");
scanf("%d",&b);
p=&c;
printf("\n交换前的2个数分别是:%d,%d",a,b);
*p=a;
a=b;
b=*p;
printf("\n\n交换后的2个数分别为:%d,%d\n\n",a,b);
}

第二题:
冒泡法排序思路:从第一个数开始依次对相邻两数进行比较,如次序对则不做任何操作;如次序不对则使

这两个数交换位置。第一遍的(N-1)次比较后,最大的数已放在最后,第二遍只需考虑(N-1)个数,以

此类推直到第(N-1)遍比较后就可以完成排序。另外注意:c语言中的数组元素下标是从0开始的。
void sort(int a[],int n)
{
int i,j,t;
for(i=0;i<n-1;i++) //一共执行n-1次比较
{
for(j=0;j<n-1-i;j++) //第i次进行比较的数要进行n-i次比较,注意i,j是从0开始;
{
if(a[j]>a[j+1])
{
t=a[j+1];
a[j+1]=a[j];
a[j]=t;
}
}
}
printf("\n");
for(k=0;k<10;k++)
{
printf("a[%d]=%d\n",k,a[k]);
}
}
void main()
{
int k,a[10];
for(k=0;k<10;k++)
{
scanf("%d",&a[k]);
}
sort(a,10);
}

第三题:
#include<stdio.h>
void main()
{
float pi,s,c,r;
printf("请输入圆的半径:");
scanf("%f",&r);
s=3.14*r*r;
c=2*3.14*r;

printf("圆的面积为: %f,周长为: %f ",s,c);

}

第四题:

参考:http://zhidao.baidu.com/question/24889050.html

第五题:
#include <stdio.h>

int main()
{
int x,y,z,result;
scanf("%d", x);
scanf("%d", y);
scanf("%d", z);
result = x*x*x + y*y*y + z*z*z;
return result;
}

第六题:
#include <stdio.h>
#define N 10

int b(char c[N])
{
int i,j=0;
for(i=0;i<N;i++)
if(c[i]>'a'&&c[i]<'z') j++;

return j;
}
void main()
{
int i,j;
char a[N];
printf("请输入10个字符:");
for(i=0;i<N;i++)
scanf("%c",&a[i]);
j=b(a);
printf("小写字母的个数为:%d",j);

}

第七题:
#include<stdio.h>
#include<string.h>
void main()
{
char city[15];

printf("请输入您所在的城市:\t");
gets(city);

if(strcmp(city,"bei jing")==0)
printf("\n您来自纽约,我也是"!!\n\n");
else
printf("\n我们居住在不同的城市!!\n\n");

}

第八题:
#include <stdio.h>
int main()
{
char str[100];
int n=0,i=0;
gets(str);
while(str[i]!=0)
{
if(str[i++]=='x') n++;
}
printf("共有%d个x\n",n);
}

第九题:
#include <stdio.h>
#define N 5
struct student
{
int num;
char name[20];
float scoreC;
float scoreJava;
};

void ave(struct student *);

void main()
{
struct student students[N];
int i;
for(i=0;i<N;i++)
{
printf("\n请输入第%d个学生的数据:\n",i+1);
printf("学号:");
scanf("%d",&students[i].num);
printf("姓名:");
fflush(stdin);
gets(students[i].name);
printf("C课程成绩:");
scanf("%f",&students[i].scoreC);
printf("Java课程成绩:");
scanf("%f",&students[i].scoreJava);
}
ave(students);
}

void ave(struct student *p)
{
float ave[N];
int i;
for(i=0;i<N;i++,p++)
{
ave[i]= (p->scoreC + p->scoreJava)/2;
printf("\n学号: %d 姓名: %s C课程成绩: %6.2f Java课程成绩: %6.2f 平均成绩:

%.2f\n",p->num,p->name,p->scoreC,p->scoreJava,ave[i]);
}
}

第十题:
#include <stdio.h>
struct base
{
int a;
int b;
int c;
};

void fun(struct base *);

void main()
{
struct base triangle;
printf("输入三角形的信息:\n\n");
printf("请输入第一条边:");
scanf("%d",&triangle.a);
printf("请输入第二条边:");
scanf("%d",&triangle.b);
printf("请输入第三条边:");
scanf("%d",&triangle.c);
fun(&triangle);
}

void fun(struct base *p)
{
if(((*p).a + (*p).b) <= (*p).c||((*p).a + (*p).c) <= (*p).b||((*p).b + (*p).c) <=

(*p).a)
{
printf("\n输入有误!这三条边不能组成三角形。\n");
}
else if(((*p).a==(*p).b && (*p).a != (*p).c)||((*p).a == (*p).c && (*p).a != (*p).b)||

((*p).b == (*p).c && (*p).b != (*p).a))
{
printf("\n这三条边组成的是等腰三角形。\n");
}
else if((*p).a == (*p).b && (*p).b == (*p).c)
{
printf("\n这三条边组成的是等边三角形。\n");
}
else
{
printf("\n这三条边组成的是不等边三角形。\n");
}

}

1,#include "stdio.h"

void change(int *p1,int *p2)
{
int tmp;
tmp=*p1;
*p1=*p2;
*p2=tmp;
}
main()
{
int a=1,b=2;
change(&a,&b);
printf("%d,%d\n",a,b);

}
2,指针好像在这里没有意义
void paosort()
{
int i,j;
int tmp;

for(i=0;i<num-1;i++)
{
for(j=1;j<num-i;j++)
{
if(data[j]>data[j+1])
{
tmp=data[j];
data[j]=data[j+1];
data[j+1]=tmp;
}
}
}
}
3,#include "stdio.h"

void c(int denth,int longth,int *zhouchang,int *mianji)
{
*zhouchang=2*(denth+longth);
*mianji=denth*longth;

}
int main()
{
int zhouchang,mianji;
int denth,longth;

scanf("%d%d",&denth,&longth);
c(denth,longth,&zhouchang,&mianji);
printf("%d,%d",zhouchang,mianji);
}

  • 跪求各位高手帮忙编个C语言程序
  • 答:我真的很想帮你,但是我没有时间,我建议你还是自己做一做这里是我以前刚学C语言时的一个学员管理系统有人员信息的增删改查,可以用两中不同方法排序数据退出时自动保存数据,保存在C盘根目录下分两级菜单,是中文的,使用方便代码共500行左右,记得当时只用了几小时时间,为了省事没有分文件,也没有加注释,但是这些问题...

  • 请高手们帮我编写一个C程序,输入a,b,c,d四个值,输出其中最大者。
  • 答:include<stdio.h> void main(){ int a,b,c,d,max;printf("请输入四个数");scanf("%d,%d,%d,%d",&a,&b,&c,&d);if(a<b)max=b;else max=a;if(max<c)max=c;if(max<d)max=d;printf("最大值为%d",max);}

  • C语言高手帮我写个简单的程序
  • 答:using namespace std;int main(){ cout<<"今天天气是否很热?Y代表是,N代表否"<<endl;char n;cin>>n;if(n=='Y'||n=='y')cout<<"去游泳"<<endl;else if(n=='N'||n=='n')cout<<"看书"<<endl;esle cout<<"我不知道今天天气是不是很热"<<endl;return 0;} 这个程序就可以...

  • 用c语言编写一个程序
  • 答:应该多给几个例子,n=10的时候如何处理?得到10,110,210,1210等等?若是这样的,试试下面程序:/ 用c语言编写一个程序:对于一个自然数n(n<=50),统计具有下列数字的个数,并输出所有符合条件的数字:自然数n,在n的左边加上一个自然数,但该自然数不能超过原数的一半;继续按此规则进行处理,...

  • c语言帮我在1小时内写一段程序,编译通过我加分
  • 答:随便贴一下:include <stdio.h> include <string.h> include <malloc.h> include <stdlib.h> include <ctype.h> define MAXSIZE 1000 define MAXWORD 100 int IsLetter(char c);void main(){ char list[30][30];char some[][10] = {"int", "float", "char", "double", "short", ...

  • 求高手用c语言编写两个程序(数据结构)
  • 答:if(j>=a.l)c.data[c.l++]=b.data[i];else continue;} } void xianshi(Lc c){ int i;for(i=0;i<c.l;i++)printf("%d ",c.data[i]);} void main(){ La a;Lb b;Lc c;chushihua(a,b,c);qiujie(a,b,c);xianshi(c);} 对C中的元素我没有排序,你自己看看吧!

  • 求大神帮忙,帮我编一个C语言程序
  • 答:include <stdio.h> include <stdlib.h> include int sum(int a,int b){return a+b;} int main(){int a,b,c;srand(time(0));a = rand()%100+1;b = rand()%100+1;printf("%d+%d=",a,b);scanf("%d",&c);while(c-sum(a,b)){printf("Not correct! Try againt!\n");...

  • C语言高手帮着编一个程序吧,需要用
  • 答:printf(" 出现次数第三的字母:%c 出现次数为:%d\n",alp[n],max);return 0;} 不知道我是否理解正确了你的意思。程序输入:ym name si english.输出:排列后的字符:my aemn is eghilns.出现次数最多的字母:e 出现次数为:2 出现次数最多的字母:i 出现次数为:2 出现次数最多的...

  • C语言高手进,帮我编一道程。
  • 答:不是吧你,这么少的分,我给你个c#写的好了,你自己该该 using System;using System.IO;namespace Bank { /// /// Class1 的摘要说明。/// class BANK { /// /// 应用程序的主入口点。/// [STAThread]public static void Main( ){ int forever=1;int money=1;int password=12...

  • 麻烦C语言高手帮我写个程序~~谢谢啊!
  • 答:if(G.vexs[i]==c) return i;return -1;} void CreateUDN(Graph &G){ int i,j,w,s1,s2;char a,b,temp;printf("输入顶点数和边数:");scanf("%d%d",&G.vexnum,&G.arcnum);temp=getchar();G.vexs=(char *)malloc(G.vexnum*sizeof(char));printf("输入%d个顶点.\n",G.vexnum...

    相关内容

    首页 新知 身健
    返回顶部

    © 星空5G w.xkyn.com