① 怎样编写程序
在这里我们借助的软件是Visual C++6.0。
打开软件,先新建一个工程,在新建一个C++源文件,这些你听起来可能有点陌生,不要担心,你只需要按照下面的图片进行操作就好。
② 如何编程序
首先,设计算法。然后,写编程大纲,把程序编译出来。最后,优化,调试。
我给你个C++语言编写一个吧?
一个农场有头母牛,现在母牛才一岁,要到四岁才能生小牛,四岁之后,每年生一头小牛。假设每次生的都是母牛,并且也遵守4年才生育并生母牛的原则,并且无死亡,请问n年后共有多少头牛?
#include<iostream>
using namespace std;
void cows(int n){
int one , two ,three ,four ;
one=1;two=three=four=0;
for(int i=1;i<=n;i++){
four=three+four;
three=two;
two=one;
one=four;
}
cout<<"~~~~~~~~~~~~~~~~~~生成报告~~~~~~~~~~~~~~~~~~~~~~\n";
cout<<" "<<n<<"年以后共产生牛牛:"<<(one+two+three+four)<<"只\n";
cout<<" 其中有一岁的小牛:"<<one<<"只\n";
cout<<" 其中有两岁的小牛:"<<two<<"只\n";
cout<<" 其中有三岁的小牛:"<<three<<"只\n";
cout<<" 其中有牛牛究极体:"<<four<<"只\n";
cout<<"~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n";
}
int main(){for(;;){
cout<<" 牛生牛产业链计划正式启动\n";
cout<<"我们美丽的草原上有一只小母牛(一岁),它自愿的加入了牛牛产业计划。^_^让我们给它一些热烈的掌声,为它加油!\n";
cout<<"你想知道n年以后草原上的牛牛盛况吗?请输入n的值吧:";
int n;
cin>>n;
if(n>57){cout<<"(由于计算机整数上限问题,以及个人水平问题,该程序不能输出过大的n值)敬请原谅^_^\n";continue;}
if(n<0){cout<<"请输入合理的n的值\n";continue;}
cows(n);
cout<<"好一个美丽的大草原啊~~~~~~~~\n\n";
}
return 0;
}
③ 如何编程序
这段距离还很远,慢慢积累~
④ 怎样编程序
/*1、 编程解决如下数学问题:有12升水,怎样利用一个8升和一个5升的容器将水分为两个6升?要求以如下格式打印出分水步骤。(20分)
a12 b8 c5
12 0 0
* * * ( "*"表示当前状态下每个容器的盛水量)
......
6 6 0
# include <stdio.h>
# include <stdlib.h>
void move(int *x,int *y,int aMax,int bMax)
{
if(aMax>bMax)
{
if(*x+*y>bMax)
{
*x = *x-(bMax-*y);
*y = *y+(bMax-*y);
}
else
{
*y = *y+*x;
*x = *x-*x;//如果颠倒两个的顺序就会造成无法输出
}
}
else
{
*y = *y + *x;
*x = *x - *x;
}
}
main()
{
int aMax=12,bMax=8,cMax=5;
int a=12,b=0,c=0;
int i=1;
printf(" a12 b8 c5:\n");
printf("%7d%7d%7d\n",a,b,c);
while(i)
{
move(&a,&b,aMax,bMax);
printf("%7d%7d%7d\n",a,b,c);
if(a==6&&b==6)
goto step2;
move(&b,&c,bMax,cMax);
printf("%7d%7d%7d\n",a,b,c);
if(a==6&&b==6)
goto step2;
move(&c,&a,cMax,aMax);
printf("%7d%7d%7d\n",a,b,c);
if(a==6&&b==6)
goto step2;
move(&b,&c,bMax,cMax);
printf("%7d%7d%7d\n",a,b,c);
if(a==6&&b==6)
goto step2;
}
step2:
printf("the water has been sorted!\n");
return 0;
}*/
/*2、 编程实现:有二维数组a[3][3]={{5.4,3.2,8},{6,4,3.3},{7,3,1.3}},
将数组a的每一行元素均除以该行上的主对角元素(第1行同除以a[0][0],第2行同除以a[1][1],...),
按行输出新数组。(20分)
# include <stdio.h>
main()
{
double a[3][3]={{5.4,3.2,8},{6,4,3.3},{7,3,1.3}}; //可以在定义时初始化,在后来就不行了
int i,j;
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
{
if(i==j)
a[i][j]=a[i][j];
else
a[i][j]=a[i][j]/a[i][i];
}
a[i][i]=1;
}
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
printf("%6.2f",a[i][j]);
printf("\n");
}
}*/
/*3、编程:设x取值为区间[1,20]的整数,求函数f(x)=x-sin(x)- cos(x)的最大值,
要求使用自定义函数实现f(x)功能。(20分)
#include <stdio.h>
#include <math.h>
double f(long double x);
main()
{
double a[50];
int i,index,j;
long double temp;
for(i=0;i<20;i++)
a[i] = f(i+1);
for(i=0;i<19;i++)
{
index = i;
for(j=i+1;j<20;j++)
if(a[j]>a[index])
index = j;
temp = a[index];
a[index] = a[i];
a[i] = temp;
}
printf("the max is %6.2f",a[0]);
printf("\n");
return 0;
}
double f(long double x)
{
x = x - sin(x) - cos(x); //他输入的是弧度数,而我用计算器算的是角度值,所以结果会不一样
return x;
}*/
//冒泡排序
/*# include <stdio.h>
# include <math.h>
void swap(int *x,int *y);
main()
{
int i,j;
int a[50];
printf("please input the num:");
printf("\n");
for(i=0;i<10;i++)
scanf("%d",&a[i]);
for(i=1;i<10;i++)
for(j=0;j<10-i;j++)
if(a[j]>a[j+1])
swap(&a[j],&a[j+1]);
printf("after sorted the num is:");
printf("\n");
for(i=0;i<10;i++)
printf("%4d",a[i]);
printf("\n");]
return 0;
}
void swap(int *x,int *y)
{
int p;
p = *x;
*x = *y;
*y = p;
}
*/
//选择排序
/*# include <stdio.h>
# include <stdlib.h>
main()
{
int i,j,temp,index;
int a[50];
printf("input the num :");
printf("\n");
for(i=0;i<10;i++)
scanf("%d",&a[i]);
for(i=0;i<9;i++)
{
index = i;
for(j=i+1;j<10;j++)
{
if(a[j]<a[index])
index = j;
temp = a[index];
a[index] = a[i];
a[i] = temp;
}
}
for(i=0;i<10;i++)
printf("%4d",a[i]);
printf("\n");
return 0;
}*/
/*编写函反向。
要求主函数输入字符串,通过调用函数fun实数fun,通过指针实现将一个字符串现输入字符串反向。(20分)
# include<stdio.h>
# include<stdlib.h>
# include<string.h>
char *fun(char *q)
{
char temp;
int len=strlen(q);
int i;
for(i=0;len-i-1>i;i++)
{
temp = *(q+i);
*(q+i) = *(q+len-i-1);
*(q+len-i-1) = temp;
}
return q;
}
main()
{
char *q;
q=(char *)malloc(200*sizeof(char));
printf("please input the string:\n");
scanf("%s",q);
fun(q);
printf("after reverse the string is:\n");
printf("%s\n",q);
return 0;
}*/
/*5、已知学生三门课程基本信息如下。请使用结构体编程,计算学生三门课程平均成绩后,
列表输出学生的姓名、数学、英语、计算机、平均分信息,并按平均分排序。(20分)
姓名 数学 英语 计算机
Mary 93 100 88
Jone 82 90 90
Peter 91 76 71
Rose 100 80 92
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
struct student{
char name[20];
int math;
int english;
int computer;
double average;
};
main()
{
int i,j,index;
struct student a[4];
struct student temp;
strcpy(a[0].name,"mary"),a[0].math=93,a[0].english=100,a[0].computer = 88;
strcpy(a[1].name,"jone"),a[1].math=82,a[1].english=90,a[1].computer = 90;
strcpy(a[2].name,"peter"),a[2].math=91,a[2].english=76,a[2].computer = 71;
strcpy(a[3].name,"rose"),a[3].math=100,a[3].english=80,a[3].computer = 92;
for(i=0;i<4;i++)
a[i].average =(a[i].computer +a[i].english +a[i].math)/3 ;
for(i=0;i<3;i++)
{
index = i;
for(j=i;j<4;j++)
if(a[j].average <a[index].average )
index = j;
temp = a[i];
a[i] = a[index];
a[index] = temp;
}
printf("姓名 数学 英语 计算机 平均分\n");
for(i=0;i<4;i++)
{
printf("%6s%6d%6d%9d%9.1f",a[i].name ,a[i].math ,a[i].english ,a[i].computer ,a[i].average );
printf("\n");
}
}*/
/*6、附加题:编程实现输入一串英文,统计其中各单词出现的个数(不区分大小写字母),
以"000"作为字符串输入结束标志,例如:
Twinkle twinkle little star 000(回车)
twinkle little star
2 1 1 (50分)
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<ctype.h>
void main()
{
char string[400]; //装载输入的原始字符串
char temp[20][20]; //装载string中的各个子字符串
char str[20][20]; //装在string中的各个子字符串,不过不包括重复的字符串,只是把不同的字符串收录在str中
int num=0; //记录空格的个数
int order[20]; //记录各个空格的位置
int i,j,k;
int sum[20]; //记录子字符串出现的个数
int flag=0; //判断是否把子字符串输入到str中
for(i=0;i<20;i++)
memset(temp[i],'\0',20); //把那里面的元素清零,如果不清零会产生乱码
for(i=0;i<20;i++)
memset(str[i],'\0',20); //把那里面的元素清零,如果不清零会产生乱码
printf("please input the string:\n");
gets(string); //把字符串输入到字符数组string[400]中
for(i=0;string[i]!='0';i++)
string[i]=tolower(string[i]); //将字符串中的大写字母转化成小写字母
for(i=0;string[i]!='0';i++)
if(string[i]==' ')
{
order[num]=i; //记录空格的位置
num++; //空格的数目加1
}
for(i=0;i<order[0];i++)
temp[0][i]=string[i];//记录了第一个空格前的字符串,把它输入到temp[0][]中.
for(j=0;j<num;j++)
for(k=0,i=order[j]+1;i<order[j+1];i++)
temp[j+1][k++] = string[i]; //将string字符串分开后存在temp中,也就是把第一个空格之后的字符串分别存放在temp中。
//第一个字符串为temp[0],第二个字符串为temp[1],往后就一次类推了
for(k=0,i=0;i<num;i++)
{
flag=0;
for(j=0;j<k;j++)
if(!strcmp(temp[i],str[j]))
{
flag=1;
break;
}
if(flag==0)
strcpy(str[k++],temp[i]);//关于他的实现举例,第一遍时temp[0]=hello,str[0]=hello;但是当temp[1]=hello时,str[1]中不会
//在存储temp的值,而是把这个忽略掉,接着往下找。
}
for(i=0;i<k;i++) //k决定了输出的字符串的个数,从而避免了相同字符串的重复输入,通过flag的变化来实现
{
sum[i]=0;
for(j=0;j<num;j++)
if(!strcmp(str[i],temp[j]))
sum[i]++;
printf("%s %d\n",str[i],sum[i]);
}
}*/
⑤ 程序是如何编写的
设计环境 程序也就是指令的集合,它告诉计算机如何执行特殊的任务。
⑥ 手机如何编程序
1.python:这里推荐一个软件—QPython3,集成了Python3解释器、Console控制台和QEdit编辑器,可以直接编辑运行python代码,也可以进行简单的安卓开发,下面我简单介绍一下这个软件的安装和使用:
安装的话,直接在手机应用中搜索就行,如下:
打开软件,终端测试效果如下,就行电脑版的python shell:
QEdit编辑器,编辑完python代码后,可以直接运行:
效果如下:
2.java:这里推荐一个软件—AIDE,一个Java集成环境,可以直接新建Java项目,进行Java代码的编辑和运行,还可以进行游戏开发,功能强大,内置学习教程,很适合初学者学习掌握,下面我简单介绍一下这个软件的安装和使用:
安装的话,与上面一样,直接在手机应用中搜索就行:
打开软件如下,可以直接新建Java文件,编写Java代码并运行:
当然,也可以直接开发简单的安卓游戏,并直接在手机上安装运行:
游戏效果如下:
3.HTML:这里推荐一个软件—w3cschool编程学院,可以在线浏览查看前端开发的资料,包括html,css,javascript等,同时可以在线编辑代码并运行,是一个很不错的学习前端开发的软件,下面我简单介绍一下这个软件的安装和使用:
安装的话,直接在应用商店中搜索就行:
打开软件,就可以搜索前端编程的资料,如下:
在线编辑运行代码的效果如下:
4.C/C++:这里推荐一个软件—C++编译器(C4droid),一款很不错的C/C++编译器,安装完GCC插件后,可以直接编辑运行C/C++代码,是一款很不错的手机编程软件(这里也可以使用“C语言编译器”这个软件,效果也不错),下面我简单介绍一下这个软件的安装和使用:
⑦ 怎么编程序
朋友,你这个玩笑开大了,如果我这里三言两语就可以把你教会,那我一定可以得到诺贝尔了……或者说编程也太容易了。
踏踏实实去学学课程,或者你下教程自学,靠网络问会编程是绝对不现实的!
如果你碰到什么问题,具体的问题问出来,那倒是可以帮你解答。
⑧ 如何编写程序
编写程序是一项系统而繁琐的工作,它不仅需要程序设计人员具有一定的功底,更需要有良好的编程习惯和风格。良好的编程习惯和风格不仅可以使程序代码更易于读懂和修改,更重要的是,它可以使程序的结构更加合理,有助于提高程序的执行效率。下面是我在程序设计中总结的一些经验,供大家参考。
设计顺序
在我们刚开始学习程序设计的时候,要编写一个程序,总是先进行一番构思,然后就一边写代码一边调试。这种方法一般只适用于非常小的程序,根据软件工程的特点,如果对所有程序都还按这种方法进行设计,是不合理的。
其实,设计程序就像我们盖高楼大厦,首先要设计图纸,然后动工。所以,对于个人编写程序来说,应遵循以下步骤:
1、问题分析:对我们要使用程序设计手段去解决的问题进行系统地分析,了解程序是做什么的,要达到一种什么样的效果等。
2、结构设计:也就是对程序的整体框架进行设计,设计出我们需要使用的模块等等,并画出流程图。
3、用户界面设计:在此,我们要设计出用于与用户交互的输入输出界面。
4、代码设计:在这个步骤中,我们要进行代码的编写。
5、调试:对程序中正在发生或可能发生的各种错误进行处理。
6、维护:通俗地说,维护就是对程序进行升级,对原有错误进行修改。
对于以上几个步骤,我想大多数人会认为代码设计最为重要,但如果程序的结构尚未清楚,我们在编写代码的时候就会发生混乱,一个程序性能的好坏,主要还是取决于它的结构是否合理。因此,在程序设计中,我们要尽可能注意这一点,这样才能使我们的程序更加完善。
设计环境
一个良好的编程环境可以使我们在编写程序时,不至于造成各种资源的紊乱,还可以避免资源的丢失。建议大家要在放源程序的目录下建立“programs”文件夹;然后再以你要编写的程序名和版本为名建立一个文件夹,用于存放整个源程序以及各种资源;最后,分别建立几个文件夹,“documents”:用于存放程序文档,包括流程图等;“resource”:用于存放图片,声音,影片等资源;“debug”:用于存放调试的程序。“release”:用于存放最终释放的程序。
例如:我们要制作一个英语学习软件,名为“english”,版本为1.0,那么我们的编程环境中应存在以下文件夹:
[drive]:\\…\\programs\\english1\\debug\\
[drive]:\\…\\programs\\english1\\documents\\
[drive]:\\…\\programs\\english1\\resource\\
[drive]:\\…\\programs\\english1\\release\\
另外,最好再建立一个专门的文件夹,用于存放各种模块,以便能实现代码的重用,这样,我们就不用在每次写程序时,都重写所有的模块,编程速度会有很大的提高。
设计技巧
代码如果写得很乱,程序便不易被阅读与修改,所以,在编写代码时要注意以下几点:
(1)注释:写注释虽然要占用一定的时间,但在阅读和修改代码时却会节省很多的时间。所以,建议大家在定义一个函数时,在函数的第一行写出函数的作用,再用一行解释函数的参数,并在每个变量的定义语句后注释出其作用。
(2)变量和函数的命名:每个程序都会使用很多的变量和函数,如果随意命名变量与函数,每次使用时还得在变量或函数的定义语句处查出它的数据类型及名称,而且随意命名还会造成变量与函数重复定义。
建议大家使用匈牙利命名法,方法是:每个变量或函数的开头都以其数据类型的缩写命名,然后再加上代表这个变量或函数的作用的英文单词简写共同组成变量或函数的名称。例如:要定义用于计数的整型变量count,其定义语句为c\\c++:int icount; basic:dim icount as integer。以这种方法定义,不仅可以有效地避免变量与函数的混乱与重复定义,还可以保证数据类型的匹配。
(3)控件命名:如果在windows下编程,你有可能会大量地使用控件,如果不对控件名严加管理,会造成很大程度的混乱,因此,建议在给控件命名时,以控件类型缩写再加上代表这个控件作用的英文单词的简写共同组成此控件的名称。例如:你要命名一个按钮控件,作用是进行删除操作,那么控件名可以命名为cmddel。
并不是每个人都能成为顶级程序员,但我们都在程序员之路上不断进步,追求更完美、更专业化的程序。不妨好好改造一下你的程序,你会从中感受到很多好处。
⑨ 怎样编程序
所谓程序就是解决某一问题的方案,对于C语言来说,编写程序就是编写一个个功能模块,最后把这些功能模块组合起来,每个程序都应该有且唯一又一个称之为main的入口函数。
给一个示例:
int main(void)
{
// 做你要做的事情
return 0;
}