C可马编程
C语言我不会,下面这个是易语言的,希望你能借鉴一下:
熟悉国际象棋的人都知道,马在某个方格,可以在一步内到达的不同位置最多有8个。如图所示:
#4#3#
5#0#2
6###1
#7#8#
(1)对马走的方法可以设定一个顺序,如当前位置在棋盘的(i,j)方格,下一个可能的位置依次为(i+2,j+1),(i+1,j+2),(i-1,j+2),(i-2,j+1),(i-2,j-1),(i-1,j-2),(i+1,j-2),(i+2,j-1),实际可以走的位置很明显仅仅限于还未走过的和不越出边界的那些位置。
(2)这里我们定义马在一步内实际可以走的位置数为马在当前位置的出口数,此外,为便于程序的统一处理,这里引入两个数组“行变化数组”和 “列变化数组”,分别储存8种可能走法对马当前所在位置的横纵坐标的增量。
(3)本题用贪心法策略求解。 当马处于某一位置时,其选择下一位置的准则为:从马当前位置所允许走的位置中,选择出口数最少的哪个位置。如马的当前位置只有3个出口,它们的出口数分别为4,2,3,则程序就选择出口数为2的那个出口。 算法简单描述,马从棋盘第一行第一列位置开始出发;预设着法选择顺序控制变量“方法编号”为1;
{
循环判断首()
模拟棋盘数组初始化为0;
行号=起始行号;列号=起始列号;
计次循环首(63,当前遍历步数)
如果(马当前位置没有出口)
返回(-1)
否则 行号按返回方法改变;列号按返回方法改变。
在棋盘相对位置记录为第几步骤;
如果(找到解)
输出模拟棋盘数组;
终止循环;
否则 方法编号=方法编号+1;
循环判断尾(没有找到解)
}
上述算法在整个找解的过程一直向前,所以能非常快地找到解。但是对于某些开始位置,实际上有解可程序第一次找不到解,则程序只要变换8中可能出口的顺序,就能找到解。考虑到这种变换8种方法的情况,程序引用“方法编号“用于控制8种可能走法的顺序。开始为1时不能找到解,就让"方法编号"加1,重新找解。
B. 输入年份输出属相c语言,编写程序,输入一个年份,判断该年属相.(提示s
提起输入年份输出属相c语言,大家都知道,有人问关于c语言 已知1972年属鼠,输入一个四位的整数(1000-2999之间)代表年份,显示这一年属相是什么?另外,还有人想问C语言编程: 已知2015年是羊年,编程实现,输入任意年份,输出该年属相。(使用switch,你知道这是怎么回事?其实输入年份输出属相用c语言while语句,下面就一起来看看编写程序,输入一个年份,判断该年属相.(提示switch-case),希望能够帮助到大家!
输入年份输出属相c语言
int main(){
char p[12][4]={“鼠”,”牛”,”虎”,”兔”,”龙”,”蛇”,”马”,”羊”,”鸡”,”猴”,”狗”,”猪”};
int year0=; //年是鼠年,作为基准
int year,n;
printf(“请输入一个年份n”);
scanf(“%d”,&year);
n=year-year0;
n=n%12;
if (n<0) n+=12; //求余时,n可能是负数,如果是负数则加12
printf(“%d年属%sn”,year,p[n]);
关于c语言 已知年属鼠,输入一个四位的整数(-之间)代表年份,显示这一年属相是什么?
//c++的
#include
#include
usingnamespacestd;
intmain()//year用来记录输入的年份
intyear;
cin>>year;
//生肖相同的年份对于模12同余
//所以建立一个生肖数组
stringZodiacSigns[12]={“Rat”,”Ox”,”Tiger”,”Hare”,”Dragon”,”Snake”,”Horse”,”Sheep”,”Monkey”,”Cock”,”Dog”,”Boar”};
//(year-)对模12取余,即对应于数组中相应的生肖
//此处为防止(year-)为负数,给year加了
//其实加、等也都是可以的,只要是不小于的12的倍数即可
cout<<ZodiacSigns[((year+-)%12)];
return0;
C语言编程: 已知年是羊年,编程实现,输入任意年份,输出该年属相。(使用switch
int main() int year;
printf(“请输入年份:”);
scanf(“%d”,&year);
输入年份输出属相用c语言while语句
year=(year-)%12;
if(year<0) year+=12;
switch(year)
{
case 0:printf(“今年是羊年!n”);break;
case 1:printf(“今年是猴年!n”);break;
case 2:printf(“今年年!n”);break;
case 3:printf(“今年是狗年!n”);break;
case 4:printf(“今年是猪年!n”);break;
case 5:printf(“今年是鼠年!n”);break;
case 6:printf(“今年是牛年!n”);break;
case 7:printf(“今年是虎年!n”);break;
case 8:printf(“今年是兔年!n”);break;
case 9:printf(“今年是龙年!n”);break;
case 10:printf(“今年是蛇年!n”);break;
case 11:printf(“今年是马年!n”);break;
}
return 0;
以上就是与编写程序,输入一个年份,判断该年属相.(提示switch-case)相关内容,是关于关于c语言 已知1972年属鼠,输入一个四位的整数(1000-2999之间)代表年份,显示这一年属相是什么?的分享。看完输入年份输出属相c语言后,希望这对大家有所帮助!
C. C语言编程:100匹马驼100担货,大马一匹驼3担,中马一匹驼2担,小马两匹驼一担。
大马最多33匹,中马最多50匹,小马最多100匹。
#include<stdio.h>
void main(void){
int a=0; //大马
int b=0; //中马
int c=0; //小马驮货数
int d; //小马
int n=0; //个数
do{
c=c+1;
if(3*a+2*b+c==100&&a+b+2*c==100){
d=2*c;
printf("大马、中马、小马分别为:%d,%d,%d\n",a,b,d);
n=n+1;
}
if(c==100){
c=0;
b=b+1;
}
if(b==50){
b=0;
a=a+1;
}
}while(a<=33);
printf("共有%d种方法。\n",n);
}
输出屏幕是放不下结果的,建议你改成向文件输出。
D. 学编程到底是学C语言、C++、VB、jave中的哪种比较好
我的回答完全针对LZ的问题:
编程是不分语言的,数据结构和算法思想跟语言无关。如果是初学者,建议从C学起,因为C语言是一门面向过程的语言,当然C比较难学,安全性也不是很好,但是C语言一旦学习到一定层次,学习其他语言就能很快上手。有了C的基础,C++就能够很快地掌握了。关于黑客和大型软件项目的问题,C语言并不是一门好的开发大型项目的语言,因为语言本身是面向过程的,开发效率不高。C++则非常适合开发大型项目,它的封装性和面向对象特性完全是面向大型项目的。当初把C升级为C++也就是鉴于C的开发效率不高这一点。如果LZ想学黑客这种东西的话,随便去问问有经验的人,他都会让你从windows编程学起,windows编程也主要是基于C和C++的。因此C和C++是我比较推荐的两门语言。
C和C++都是需要花费很多心血才能学好的,大型软件适合用C++开发,而一些面向硬件的编程则属于C的天地。推荐用一些外国的经典,比如C++primer和the C++ programming language。
至于Java,也是目前比较流行的语言,它的类其实和C++的STL有些类似。有了C或者C++的基础,相信Java上手也很快。Java同样应用非常广泛,很有前途,如果不想学C++的话,学Java也可以。
总而言之学习语言很辛苦,任何一门语言都要付出艰苦努力。你看得越多,编的越多,对语言的理解也就越多。
E. c语言的网络编程特点有哪些(在线等待,答得好马上给分!)
1. C语言的特点
C语言是一种广受欢迎的结构化程序设计语言,具有极强的生命力.
"C语言无所不能!" :适用面比较广,具有高级语言的优点和低级语言特点
与硬件无关,可移植性强
C语言是一门简洁语言:仅有32个关键字,9种控制语句
在所有高级语言中,目标代码质量高,运行效率最高
结构化,模块化语言,非常适合结构化程序设计.
2.结构化程序设计方法
结构化程序设计方法强调程序设计风格和程序结构的规范化,提倡清晰的结构.
特点:
自顶向下,逐步细化:将问题分解为子问题,将子问题分解为再小的模块.直到该模块我们可以很容易地求解为止.
模块化设计:对每个模块,用结构化的方法加以设计.
结构化编码:对每个模块,分别编写对应的函数.
目标:
便于多人分工协作完成大型软件;便于代码维护;
C语言的编程
3. C语言基本概念
Hello World! 示例
int main()
{ printf("Hello, world!");
return 0; }
函数 结构化,模块化的基础
主函数main()
库函数:数学函数,字符串函数,io函数,内存分配函数
scanf, printf,…
C语言的编程
C语言基本概念(数据表达)
数据类型:整型,实型,字符型
数组:同种数据类型的元素的集合;下标引用
指针: (基本要求:看懂别人的程序)
注:建议掌握计算机硬件工作原理,如直接寻址,间接寻址;至少掌握变量的存储方式 (《C程序设计》p201)
1) 指针即地址;指针变量是用于存放地址的变量
2) 指针可以与整型变量一样运算;
3)★ 指针必须具备合法地址才可用;
C语言的编程
C语言基本概念(数据表达)
结构 (构造类型)
是由不同数据类型的数据组成的集合体;
struct student /*定义结构体类型*/
{ char name[20];
int sex;
int age;
char addr[100]; };
注:结构体变量不能作为一个整体参加数据处理;
struct student Wang2;
Wang2.age=22;
C语言的编程
C语言基本概念(程序结构)
表达式:算术,关系,逻辑,赋值,函数
语句
顺序结构,选择结构(if语句,switch语句),
循环结构(while语句,for语句与do while语句)
函数:输入输出函数
文件:永久保存数据的方式
流式文件;FILE结构体;文件io函数;(p309)
C程序的编写与上机调试
4. C程序的编写与上机调试
Hello World! 示例
cl
tc2.0 (略)
vc6.0: 规范的project操作示范
(1) new一个空的基于console的project;
(2) 创建c文件,并输入代码;
(3) 将c文件加入project;
(4) 编译,调试,运行;
对软件开发成本高和进度估计不准确.
用户对已完成的"软件系统"不满意.
软件产品的质量不可靠.
软件的维护困难,维护的人员与费用不断增加.
缺乏完整,正确的文档资料.
软件成本在计算机系统中所占比例逐年上升.
软件的发展跟不上硬件的发展和用户的要求.
软件的规模非常庞大,多人共同开发,必须有严格和科学的管理.
软件开发过分依赖于个人的智力劳动和经验.
学习指针最好是先学些计算机硬件工作的原理,例如:直接寻址,间接寻址等,只有了解了这些内容以后,你再学指针就比较容易理会,毕竟C语言是一门介于机器语言与高级语言中间的语言,没有一些硬件工作知识是很难领悟它的真谛的.
1.指针是地址变量:它的值有两种:其一是地址,其二是内容.不同的表达方式可以取不同的值,这有点象一个家庭地址在不同的场合标识的人物也不同.例如:父母亲在他们的单位所登记的家庭地址就代表他们自己,而你在学校中登记的同样的家庭地址就代表你自己.
2.指针是可以运算的,它的运算法则与变量是一致的.
另外,在编写一个程序时,除非万不得已,一般不要使用指针变量.建议各位对于指针只要能看懂就行!
对软件开发成本高和进度估计不准确.
用户对已完成的"软件系统"不满意.
软件产品的质量不可靠.
软件的维护困难,维护的人员与费用不断增加.
缺乏完整,正确的文档资料.
软件成本在计算机系统中所占比例逐年上升.
软件的发展跟不上硬件的发展和用户的要求.
软件的规模非常庞大,多人共同开发,必须有严格和科学的管理.
软件开发过分依赖于个人的智力劳动和经验.
学习指针最好是先学些计算机硬件工作的原理,例如:直接寻址,间接寻址等,只有了解了这些内容以后,你再学指针就比较容易理会,毕竟C语言是一门介于机器语言与高级语言中间的语言,没有一些硬件工作知识是很难领悟它的真谛的.
1.指针是地址变量:它的值有两种:其一是地址,其二是内容.不同的表达方式可以取不同的值,这有点象一个家庭地址在不同的场合标识的人物也不同.例如:父母亲在他们的单位所登记的家庭地址就代表他们自己,而你在学校中登记的同样的家庭地址就代表你自己.
2.指针是可以运算的,它的运算法则与变量是一致的.
另外,在编写一个程序时,除非万不得已,一般不要使用指针变量.建议各位对于指针只要能看懂就行!
操作系统,科学计算,自然语言处理…….
C语言是一门简洁语言
简单:仅有32个关键字,9种控制语句(参见附录2).在所有高级语言中,关键字最少的.
简练:在C程序中一行代码可以表达的内容,在别的语言中可能要用好几行代码
C语句: int a[10];
PASCAL:VAR a:ARRAY[1..10] OF INTEGER
生成机器码质量高. 程序执行效率高.仅比汇编程序生成的代码效率低10%~20%.在所有高级语言中,代码执行效率最高的.
学习C语言的难点
C语言:
限制少,灵活性大.使程序设计人员有较大的自由度,以适应宽广的应用面.
引出的问题:
容易出错
技巧性强
因此,C语言虽然很简洁,但学习起来,比Fortran, Basic等高级语言要困难.
怎样学好C语言
多阅读别人书写的结构良好的程序
操作系统,科学计算,自然语言处理…….
C语言是一门简洁语言
简单:仅有32个关键字,9种控制语句(参见附录2).在所有高级语言中,关键字最少的.
简练:在C程序中一行代码可以表达的内容,在别的语言中可能要用好几行代码
C语句: int a[10];
PASCAL:VAR a:ARRAY[1..10] OF INTEGER
生成机器码质量高. 程序执行效率高.仅比汇编程序生成的代码效率低10%~20%.在所有高级语言中,代码执行效率最高的.
学习C语言的难点
C语言:
限制少,灵活性大.使程序设计人员有较大的自由度,以适应宽广的应用面.
引出的问题:
容易出错
技巧性强
因此,C语言虽然很简洁,但学习起来,比Fortran, Basic等高级语言要困难.
怎样学好C语言
多阅读别人书写的结构良好的程序
操作系统,科学计算,自然语言处理…….
C语言是一门简洁语言
简单:仅有32个关键字,9种控制语句(参见附录2).在所有高级语言中,关键字最少的.
简练:在C程序中一行代码可以表达的内容,在别的语言中可能要用好几行代码
C语句: int a[10];
PASCAL:VAR a:ARRAY[1..10] OF INTEGER
生成机器码质量高. 程序执行效率高.仅比汇编程序生成的代码效率低10%~20%.在所有高级语言中,代码执行效率最高的.
学习C语言的难点
C语言:
限制少,灵活性大.使程序设计人员有较大的自由度,以适应宽广的应用面.
引出的问题:
容易出错
技巧性强
因此,C语言虽然很简洁,但学习起来,比Fortran, Basic等高级语言要困难.
怎样学好C语言
多阅读别人书写的结构良好的程序
操作系统,科学计算,自然语言处理…….
C语言是一门简洁语言
简单:仅有32个关键字,9种控制语句(参见附录2).在所有高级语言中,关键字最少的.
简练:在C程序中一行代码可以表达的内容,在别的语言中可能要用好几行代码
C语句: int a[10];
PASCAL:VAR a:ARRAY[1..10] OF INTEGER
生成机器码质量高. 程序执行效率高.仅比汇编程序生成的代码效率低10%~20%.在所有高级语言中,代码执行效率最高的.
学习C语言的难点
C语言:
限制少,灵活性大.使程序设计人员有较大的自由度,以适应宽广的应用面.
引出的问题:
容易出错
技巧性强
因此,C语言虽然很简洁,但学习起来,比Fortran, Basic等高级语言要困难.
怎样学好C语言
多阅读别人书写的结构良好的程序
操作系统,科学计算,自然语言处理…….
C语言是一门简洁语言
简单:仅有32个关键字,9种控制语句(参见附录2).在所有高级语言中,关键字最少的.
简练:在C程序中一行代码可以表达的内容,在别的语言中可能要用好几行代码
C语句: int a[10];
PASCAL:VAR a:ARRAY[1..10] OF INTEGER
生成机器码质量高. 程序执行效率高.仅比汇编程序生成的代码效率低10%~20%.在所有高级语言中,代码执行效率最高的.
学习C语言的难点
C语言:
限制少,灵活性大.使程序设计人员有较大的自由度,以适应宽广的应用面.
引出的问题:
容易出错
技巧性强
因此,C语言虽然很简洁,但学习起来,比Fortran, Basic等高级语言要困难.
怎样学好C语言
多阅读别人书写的结构良好的程序