源代码
- 格式:ppt
- 大小:1.27 MB
- 文档页数:18
C#语言100例经典源代码程序1】题目:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?1.程序分析:可填在百位、十位、个位的数字都是1、2、3、4。
组成所有的排列后再去掉不满足条件的排列。
2.程序源代码:main(){inti,j,k;printf("\n");for(i=1;i<5;i++)/*以下为三重循环*/for(j=1;j<5;j++)for(k=1;k<5;k++){if(i!=k&&i!=j&&j!=k)/*确保i、j、k三位互不相同*/printf("%d,%d,%d\n",i,j,k);}}==============================================================【程序2】题目:企业发放的奖金根据利润提成。
利润(I)低于或等于10万元时,奖金可提10%;利润高于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,可可提成7.5%;20万到40万之间时,高于20万元的部分,可提成5%;40万到60万之间时高于40万元的部分,可提成3%;60万到100万之间时,高于60万元的部分,可提成1.5%,高于100万元时,超过100万元的部分按1%提成,从键盘输入当月利润I,求应发放奖金总数?1.程序分析:请利用数轴来分界,定位。
注意定义时需把奖金定义成长整型。
2.程序源代码:main(){longinti;intbonus1,bonus2,bonus4,bonus6,bonus10,bonus;scanf("%ld",&i);bonus1=100000*0.1;bonus2=bonus1+100000*0.75;bonus4=bonus2+200000*0.5;bonus6=bonus4+200000*0.3;bonus10=bonus6+400000*0.15;if(i<=100000)bonus=i*0.1;elseif(i<=200000)bonus=bonus1+(i-100000)*0.075;bonus=bonus2+(i-200000)*0.05;elseif(i<=600000)bonus=bonus4+(i-400000)*0.03;elseif(i<=1000000)bonus=bonus6+(i-600000)*0.015;elsebonus=bonus10+(i-1000000)*0.01;printf("bonus=%d",bonus);}==============================================================【程序3】题目:一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少?1.程序分析:在10万以内判断,先将该数加上100后再开方,再将该数加上268后再开方,如果开方后的结果满足如下条件,即是结果。
#include 〈stdio.h〉void print_star(void){printf("*****************\n"); }void print_welcome(void){printf(”C language,welcome!\n");}void main(){print_star();print_welcome();print_star();getchar();}演示2#include "stdio。
h"int sum(int i,int j){return(i + j);}void main(){int n1,n2;printf("input 2 numbers:\n”);scanf("%d%d”,&n1,&n2);printf("the sum = %d\n",sum(n1,n2));getchar();}演示3#include "stdio。
h"int maxnum(int,int,int);main(){int a,b,c;printf("Please enter 3 numbers:\n");scanf(”%d,%d,%d”,&a,&b,&c);printf(”Maxnum is %d\n",maxnum(a,b,c));}int maxnum(int x,int y,int z){int max=x;if(y>max)max = y;if(z>max)max = z;return max;}演示4#include 〈stdio。
h〉int s1(int n){int j,s;s=0;for(j=1;j<=n;j++)s=s+j;return s;}int sum(int n){int i,s=0;for(i=1;i<=n;i++)s=s+s1(i);return s;}void main(){int n;printf(”n:”);scanf(”%d",&n);printf("s=%d\n”,sum(n));}演示5#include <stdio.h〉void func(int n){int i;for(i=n-1;i〉=1;i--)n=n+i;printf("n=%d\n",n);}void main(){int n;printf("Input n:");scanf("%d”,&n);func(n);printf(”n=%d\n",n);}演示6#include <stdio。
C++源代码#include <iostream>#include <fstream>#include <ctype.h>#include <cstring>using namespace std;//全局数据,对象double CSalary;double SSalary;double APSalary;int ID; //员工工号(要保证唯一)class Person //教师类{protected:int No; //编号char Name[20]; //姓名char Sex[10]; //性别char Tel[20]; //联系方式char Nation[30]; //国籍int Duty; //职位double Earning; //收入Person *next;public:Person(char ID,char *Name,int Duty) {this->Duty=Duty;strcpy(this->Name,Name);this->No=ID;}virtual void CalcSalary()=0;virtual void Output()=0;friend class College;};class Cservant:public Person //文员类{private:double Workload; //上个月完成工作量public:Cservant(char ID,char *Name,int Duty,double Workload):Person(ID,Name,Duty){this->Workload=Workload;}double GetWorkload(){return Workload;}void SetWorkload(double Amount){this->Workload=Amount;}void CalcSalary(){Earning=CSalary+(Workload-20)*20;}void Output(){CalcSalary();cout<<No<<"\t"<<Name<<"\t文员\t"<<"\t\t"<<Earning<<endl;}};class Salesman:public Person{private:double Workload;public:Salesman(char ID,char *Name,int Duty,double Workload):Person(ID,Name,Duty){this->Workload=Workload;}double GetWorkload(){return Workload;}void SetWorkload(double Amount){this->Workload=Amount;}void CalcSalary(){Earning=SSalary+(Workload-15)*20+150; //}void Output(){CalcSalary();cout<<No<<"\t"<<Name<<"\t教授\t"<<"\t\t"<<Earning<<endl;}};class ACman:public Person //助教类{private:double Workload; //上个月完成工作量public:ACman(char ID,char *Name,int Duty,doubleWorkload):Person(ID,Name,Duty){this->Workload=Workload;}double GetWorkload(){return Workload;}void SetWorkload(double s){Workload=s;}void CalcSalary(){Earning=250+APSalary+CSalary+(Workload-15)*20;}void Output(){CalcSalary();cout<<No<<"\t"<<Name<<"\t助教\t"<<Earning<<endl;}};class APman:public Person //副教授类{public:APman(char ID,char *Name,int Duty):Person(ID,Name,Duty){}void CalcSalary(){Earning=APSalary+250;//250为行政补贴}void Output(){CalcSalary();cout<<No<<"\t"<<Name<<"\t副教授\t\t"<<Earning<<endl;}};class CSman:public Person //讲师{private:double Workload;//public:CSman(char ID,char *Name,int Duty,doubleWorkload):Person(ID,Name,Duty){this->Workload=Workload;}double GetWorkload(){return Workload;}void SetWorkload(double Amount){this->Workload=Amount;}void CalcSalary(){Earning=(Workload-25)*20+CSalary+150+SSalary;}void Output(){CalcSalary();cout<<No<<"\t"<<Name<<"\t讲师\t"<<Earning<<endl;}};class College //{private:Person *Worker; //员工表void Clear(); //清除内存中数据public:College(){Worker=0;Load();}~College(){Person *p;p=Worker;while(p){p=p->next;delete Worker;Worker=p;}Worker=0;}void Find(char Name[20]);//按姓名查找void Find(int ID);//按编号查找void Add(); //增加人员void Delete(); //删除人员void Modify(); //修改人员void Query(); //查询人员void Set(); //基础数据设置void Save(); //数据存盘(包括基础数据,人员数据)void Load(); //数据装入(包括基础数据,人员数据)};void College::Clear() //清除内存中人员数据(内部使用) {Person* p=Worker;while(p){Worker=p->next;delete p;p=Worker;}}void College::Find(char Name[20]){}void College::Add(){Person *p; //新结点指针int Duty;char Name[20];char Sex[10]; //性别char Tel[20]; //联系方式char Nation[30]; //国籍double Workload;cout<<"\n** 新增员工 **\n";//输入员工信息cout<<"输入工号:"; cin>>ID;cout<<"输入职位(1-文员 2-助教 3-讲师 4-副教授 5-教授):"; cin>>Duty;cout<<"输入姓名:"; cin>>Name;cout<<"输入性别:"; cin>>Sex;cout<<"输入联系方式:"; cin>>Tel;cout<<"输入国籍:"; cin>>Nation;if(Duty!=4){cout<<"上个月完成工作量:"; cin>>Workload;}//创建新员工结点switch(Duty){case 1:p=new Cservant(ID,Name,Duty,Workload); break; case 2:p=new ACman(ID,Name,Duty,Workload); break; case 3:p=new CSman(ID,Name,Duty,Workload); break;case 4:p=new APman(ID,Name,Duty); break;case 5:p=new Salesman(ID,Name,Duty,Workload); break;}p->next=0;//员工结点加入链表if(Worker) //若已经存在结点{Person *p2;p2=Worker;while(p2->next) //查找尾结点{p2=p2->next;}p2->next=p; //连接}else //若不存在结点(表空){Worker=p; //连接}}void College::Delete() //删除人员{int No;cout<<"\n** 删除员工 **\n";cout<<"ID:"; cin>>No;//查找要删除的结点Person *p1,*p2; p1=Worker;while(p1){if(p1->No==No)break;else{p2=p1;p1=p1->next;}}//删除结点if(p1!=NULL)//若找到结点,则删除{if(p1==Worker) //若要删除的结点是第一个结点Worker=p1->next;delete p1;}else //若要删除的结点是后续结点{p2->next=p1->next;delete p1;}cout<<"找到并删除\n";}else //未找到结点cout<<"未找到!\n";}void College::Modify(){int No,Duty;char Name[20];double Workload;cout<<"\n** 修改员工 **\n"; cout<<"ID:"; cin>>No;//查找要修改的结点Person *p1,*p2; p1=Worker; while(p1){if(p1->No==No)break;elsep2=p1;p1=p1->next;}}//修改结点if(p1!=NULL)//若找到结点{p1->Output();cout<<"调整职位(1-文员 2-助教 3-讲师 4-副教授 5-教授):"; cin>>Duty;if(p1->Duty!=Duty) //若职位发生变动{//修改其它数据cout<<"输入姓名:"; cin>>Name;if(Duty!=4){cout<<"上个月完成工作量:"; cin>>Workload;}//创建新员工结点Person *p3;switch(Duty){case 1:p3=new Cservant(p1->No,Name,Duty,Workload); break; case 2:p3=new ACman(p1->No,Name,Duty,Workload); break;case 3:p3=new CSman(p1->No,Name,Duty,Workload); break;case 4:p3=new APman(p1->No,Name,Duty); break;case 5:p3=new Salesman(p1->No,Name,Duty,Workload); break;}//员工结点替换到链表p3->next=p1->next;if(p1==Worker) //若要替换的结点是第一个结点Worker=p3;else //若要删除的结点是后续结点p2->next=p3;//删除原来的员工结点delete p1;}else //若职位没有变动{cout<<"输入姓名:"; cin>>p1->Name;if(Duty==1){cout<<"上个月完成教学任务:"; cin>>Workload; ((Cservant *)p1)->SetWorkload(Workload);}else if(Duty==2){cout<<"上个月完成教学任务:"; cin>>Workload; ((ACman*)p1)->SetWorkload(Workload);}else if(Duty==3){cout<<"上个月完成教学任务:"; cin>>Workload; ((CSman*)p1)->SetWorkload(Workload);}else if (Duty==5){cout<<"上个月完成教学任务:"; cin>>Workload; ((Salesman *)p1)->SetWorkload(Workload);}}cout<<"修改成功!\n";}else //未找到结点cout<<"未找到!\n";}void College::Query(){int chet,count(0);cout<<"\n** 查询教职工信息以及本月教学任务 **\n";cout<<"编号"<<"\t"<<"姓名"<<"\t"<<"职位"<<"\t\t\t"<<"工资(元/月)"<<endl;Person *p=Worker;double sum2=0; //工资总和while(p){p->Output();sum2+=p->Earning;p=p->next;}cout<<"本月实发工资总数:"<<sum2<<"元"<<endl;cout<<"请输入你要查询人员的编号:"; cin>>chet; Person *p4=Worker;while(p4){if(p4->No==chet){if(p4->Duty==1){((Cservant*)p4)->Output();count++;break;}else if(p4->Duty==2){((ACman*)p4)->Output();count++;break;}else if(p4->Duty==3){((CSman*)p4)->Output();count++;break;}else if(p4->Duty==4){((APman*)p4)->Output();count++;break;}else if(p4->Duty==5){((Salesman*)p4)->Output();count++;break;}}else{p4=p4->next;}}if(count==0) cout<<"未找到!"<<endl;}void College::Set(){cout<<"\n** 设置基础数据 **\n";cout<<"文员基本工资["<<CSalary<<"元]:"; cin>>CSalary;cout<<"副教授基本工资["<<APSalary<<"元]:"; cin>>APSalary; cout<<"教授基本工资["<<SSalary<<"]:"; cin>>SSalary;cout<<"员工工号[>="<<ID<<"]:"; cin>>ID;}void College::Save() //数据存盘(包括基础数据,人员数据),均采用文本文件{ofstream fPerson,fBase;char c;cout<<"\n保存人员和基础数据,是否继续?[Y/N]:"; cin>>c; if(toupper(c)!='Y')return;//保存人员编号、姓名、职位fPerson.open("person.txt",ios::out);Person *p=Worker;while(p){fPerson<<p->No<<"\t"<<p->Name<<"\t"<<p->Duty<<"\t";if(p->Duty==1)fPerson<<((Cservant*)p)->GetWorkload()<<"\t";else if (p->Duty==2)fPerson<<((ACman*)p)->GetWorkload()<<"\t";else if (p->Duty==3)fPerson<<((CSman*)p)->GetWorkload()<<"\t";else if (p->Duty==5)fPerson<<((Salesman*)p)->GetWorkload()<<"\t";fPerson<<endl;p=p->next;}fPerson.close();//保存基础数据fBase.open("base.txt",ios::out);fBase<<"文员基本工资\t"<<CSalary<<endl;fBase<<"副教授基本工资\t"<<APSalary<<endl;fBase<<"教授基本工资\t"<<SSalary<<endl;fBase<<"ID\t"<<ID<<endl;fPerson.close();cout<<"\n保存人员和基础数据已经完成...\n";}void College::Load() //数据装入(包括基础数据,人员数据){//基础数据装入ifstream fBase;char buf[80]; //buf用于保存数据文件中的注释字符串fBase.open("base.txt",ios::in);fBase>>buf>>CSalary; //文员基本工资fBase>>buf>>APSalary; //副教授基本工资fBase>>buf>>SSalary; //教授基本工资fBase>>buf>>ID; //工号fBase.close();//清除内存人员数据Clear();//人员数据数据装入ifstream fPerson;Person *p=Worker;int No; char Name[20]; int Duty;double Workload;fPerson.open("person.txt",ios::in);//读一条记录fPerson>>No>>Name>>Duty;if(Duty!=4)fPerson>>Workload;while(fPerson.good()){//创建员工结点switch(Duty){case 1:p=new Cservant(No,Name,Duty,Workload); break; case 2:p=new ACman(No,Name,Duty,Workload); break; case 3:p=new CSman(No,Name,Duty,Workload); break;case 4:p=new APman(No,Name,Duty); break;case 5:p=new Salesman(No,Name,Duty,Workload); break;}p->next=0;//员工结点加入链表if(Worker) //若已经存在结点{Person *p2;p2=Worker;while(p2->next) //查找尾结点{p2=p2->next;}p2->next=p; //连接}else //若不存在结点(表空){Worker=p; //连接}//读下一条记录fPerson>>No>>Name>>Duty;if(Duty!=4)fPerson>>Workload;}fPerson.close();cout<<"\n人员和基础数据已经装入...\n"; }void main(){char c;College a;do{cout<<"\n*** 教师信息管理系统 ***\n"; cout<<"1-增加人员\n";cout<<"2-删除人员\n";cout<<"3-修改人员\n";cout<<"4-查询职工信息\n";cout<<"5-基础数据设置\n";cout<<"6-数据存盘\n";cout<<"7-数据装入\n";cout<<"8-退出\t请选择(1-8):";cin>>c;switch(c){case '1': a.Add(); break; case '2': a.Delete();break; case '3': a.Modify();break; case '4': a.Query(); break; case '5': a.Set(); break; case '6': a.Save(); break; case '7': a.Load(); break; }}while(c!='8');}。
源代码是什么源代码(也称源程序),是指一系列人类可读的计算机语言指令。
在现代程序语言中,源代码可以是以书籍或者磁带的形式出现,但最为常用的格式是文本文件,这种典型格式的目的是为了编译出计算机程序。
计算机源代码的最终目的是将人类可读的文本翻译成为计算机可以执行的二进制指令,这种过程叫做编译,通过编译器完成。
代码组合源代码作为软件的特殊部分,可能被包含在一个或多个文件中。
一个程序不必用同一种格式的源代码书写。
例如,一个程序如果有C语言库的支持,那么就可以用C语言;而另一部分为了达到比较高的运行效率,则可以用汇编语言编写。
较为复杂的软件,一般需要数十种甚至上百种的源代码的参与。
为了降低种复杂度,必须引入一种可以描述各个源代码之间联系,并且如何正确编译的系统。
在这样的背景下,修订控制系统(RCS)诞生了,并成为研发者对代码修订的必备工具之一。
还有另外一种组合:源代码的编写和编译分别在不同的平台上实现,专业术语叫做软件移植。
质量对于计算机而言,并不存在真正意义上的“好”的源代码;然而作为一个人,好的书写习惯将决定源代码的好坏。
源代码是否具有可读性,成为好坏的重要标准。
软件文档则是表明可读性的关键。
作用源代码主要功用有如下2种作用:生成目标代码,即计算机可以识别的代码。
对软件进行说明,即对软件的编写进行说明。
为数不少的初学者,甚至少数有经验的程序员都忽视软件说明的编写,因为这部分虽然不会在生成的程序中直接显示,也不参与编译。
但是说明对软件的学习、分享、维护和软件复用都有巨大的好处。
因此,书写软件说明在业界被认为是能创造优秀程序的良好习惯,一些公司也硬性规定必须书写。
计算机里面运行的所有东西都是用程序编出来的(包括操作系统,如Windows,还有Word等,网络游戏也一样),而编写程序要用到计算机语言,用计算机语言直接编出来的程序就叫源码,比如用VisualBasic编写的源码文件一般为.bas文件,而用C++编写的一般为.cpp文件,源代码不能直接在Windows下运行,必须编译后才能运行。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "/TR/xhtml1/DTD/xhtml1-transitional.dtd">(“!”定义源代码注释内容,在浏览器中,注释内容会被忽略)<html xmlns="/1999/xhtml"> (“html”文档的开始点“xmlns”定义整个文档所使用的主要命名空间)<head>(定义文档的开头)<meta http-equiv="Content-Type" content="text/html; charset=gb2312" /><link rel="stylesheet" href="index.css" type="text/css" media="screen" /><title>(定义文档的标题)机电学院2011年暑期社会实践投稿网站</title>(文档标题结束)</head>(开头结束)<body>(定义文档主体)<div id="container"><div id="logo"><img src="image/logo.jpg" width="800" height="190" />(img 定义插入图片“SCR”定义图片地址“width= ”图片宽度“height”图片高度)</div><div id="content">(一个ID是“content”的分区)<div id="note">(一个ID是“note”的分区)<p(段落开始)style=(定义字样信息)"font-size(设置字体尺寸):24px; color(设置字体颜色):#FF0000;">投稿须知:</p>(段落结束)<p style="font-size:20px;"> 网站投稿直接点击链接即可投稿。
C#语言100例经典源代码程序1】题目:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?1.程序分析:可填在百位、十位、个位的数字都是1、2、3、4。
组成所有的排列后再去掉不满足条件的排列。
2.程序源代码:main(){int i,j,k;printf("\n");for(i=1;i<5;i++) /*以下为三重循环*/for(j=1;j<5;j++)for (k=1;k<5;k++){if (i!=k&&i!=j&&j!=k) /*确保i、j、k三位互不相同*/printf("%d,%d,%d\n",i,j,k);}}==============================================================【程序2】题目:企业发放的奖金根据利润提成。
利润(I)低于或等于10万元时,奖金可提10%;利润高于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,可可提成7.5%;20万到40万之间时,高于20万元的部分,可提成5%;40万到60万之间时高于40万元的部分,可提成3%;60万到100万之间时,高于60万元的部分,可提成1.5%,高于100万元时,超过100万元的部分按1%提成,从键盘输入当月利润I,求应发放奖金总数?1.程序分析:请利用数轴来分界,定位。
注意定义时需把奖金定义成长整型。
2.程序源代码:main(){long int i;int bonus1,bonus2,bonus4,bonus6,bonus10,bonus;scanf("%ld",&i);bonus1=100000*0.1;bonus2=bonus1+100000*0.75;bonus4=bonus2+200000*0.5;bonus6=bonus4+200000*0.3;bonus10=bonus6+400000*0.15;if(i<=100000)bonus=i*0.1;else if(i<=200000)bonus=bonus1+(i-100000)*0.075;else if(i<=400000)bonus=bonus2+(i-200000)*0.05;else if(i<=600000)bonus=bonus4+(i-400000)*0.03;else if(i<=1000000)bonus=bonus6+(i-600000)*0.015;elsebonus=bonus10+(i-1000000)*0.01;printf("bonus=%d",bonus);}==============================================================【程序3】题目:一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少?1.程序分析:在10万以内判断,先将该数加上100后再开方,再将该数加上268后再开方,如果开方后的结果满足如下条件,即是结果。
经典C语言源代码1、(1)某年某月某日是星期几#include<stdio.h>int main(){int year, month, day;while (scanf_s("%d%d%d", &year, &month, &day) != EOF){if (month == 1 || month == 2)//判断month是否为1或2{year--;month += 12;}int c = year / 100;int y = year - c * 100;int week = (c / 4) - 2 * c + (y + y / 4) + (13 * (month + 1) /5) + day - 1;while (week<0) { week += 7; }week %= 7;switch (week){case 1:printf("Monday\n"); break;case 2:printf("Tuesday\n"); break;case 3:printf("Wednesday\n"); break;case 4:printf("Thursday\n"); break;case 5:printf("Friday\n"); break;case 6:printf("Saturday\n"); break;case 0:printf("Sunday\n"); break;}}return 0;}1、(2)某年某月某日是第几天(一维数组)#include "stdio.h"void main() {int i, flag, year, month, day, dayth;int month_day[] = { 0,31,28,31,30,31,30,31,31,30,31,30,31 };printf("请输入年/月/日:\n");scanf_s("%d/%d/%d", &year, &month, &day);dayth = day;flag = (year % 400 == 0) || (year % 4 == 0 && year % 100 != 0);if (flag)month_day[2] = 29;for (i = 1; i < month; i++)dayth = dayth + month_day[i];printf("%d/%d/%d是第%d天\n", year, month, day, dayth); }2、30个数中找最小的数及其位置#include "stdio.h"# define SIZE 30void main() {int i;float data[SIZE];int min;printf("请输入%d个浮点数:\n",SIZE);for (i = 0; i < SIZE; i++) {//scanf_s("%f", &data[i]);data[i] = rand() % 30 + 1;printf("%f、", data[i]);}min = 0;for (i = 1; i < SIZE; i++) {if (data[i] < data[min])min = i;}printf("最小值是%5.2f,位置是%5d\n", data[min], min); }3、30个数从小到大排序(1)#include "stdio.h"# define SIZE 30void main() {int i,j;float data[SIZE],temp;int min;printf("请输入%d个整型数:\n",SIZE);for (i = 0; i < SIZE; i++) {scanf_s("%f", &data[i]);}for (i = 0; i < SIZE; i++) {min = i;for (j = i + 1; j < SIZE; j++)if (data[j] < data[min])min = j;temp = data[min];data[min] = data[i];data[i] = temp;}printf("\n排序后的结果是:\n");for (i = 0; i < SIZE; i++)printf("%5.2f", data[i]);}(2)模块化程序(数组名作为函数参数)#include "stdio.h"# define SIZE 5void accept_array(float a[], int size); void sort(float a[], int size);void show_array(float a[], int size);void main() {float score[SIZE];accept_array(score, SIZE);printf("排序前:");show_array(score, SIZE);sort(score, SIZE);printf("排序后:");show_array(score, SIZE);}void accept_array(float a[], int size) {int i;printf("请输入%d个分数:", size);for (i = 0; i < size; i++)scanf_s("%f", &a[i]);}void show_array(float a[], int size) { int i;for (i = 0; i < size; i++)printf(" %5.2f", a[i]);printf("\n");}void sort(float a[],int size) {int i, min, j;float temp;for (i = 0; i < SIZE; i++) {min = i;for (j = i + 1; j < SIZE; j++)if (a[j] < a[min])min = j;temp = a[min];a[min] = a[i];a[i] = temp;}}4、(1)指针加减:#include "stdio.h"#define SIZE 10void main() {int a[SIZE] = { 1,2,3,4,5,6,7,8,9,10 };int *pa, i;pa = &a[0];//pa=a;printf("\n");for (i = 0; i < SIZE; i++) {printf(" %d", *pa);//printf(" %d", *(pa+1));pa++;}}(2)指针比较:#include "stdio.h"#define SIZE 10void main() {int a[SIZE] = { 1,2,3,4,5,6,7,8,9,10 };int *pa, i;int *qa;pa = qa = &a[0];printf("请输入%d整型数:",SIZE);for (; pa < qa + SIZE; pa++)scanf_s("%d", pa);for (pa--; qa <= pa; pa--)printf(" %d", *pa);}5、两字符串相连:#include "stdio.h"#include "string.h"void str_cat(char str1[], char str2[]); void main() {int i, j;char str1[160];char str2[80];printf("请输入第一个字符串:");gets(str1);printf("请输入第二个字符串:");gets(str2);str_cat(str1, str2);puts(str1);}void str_cat(char str1[], char str2[]) { int i, j;i = 0;while (str1[i] != '\0')i++;j = 0;while (str2[j] != '\0') {str1[i] = str2[j];i++; j++;}str1[i] = '\0';}6、二维数组(a,b转置)#include "stdio.h"void main() {int i, j, b[2][3];int a[3][2] = { {1,2},{3,4},{5,6} }; for (i = 0; i < 2; i++) {for (j = 0; j < 3; j++)b[i][j] = a[j][i];}printf("\na:\n");for (i = 0; i < 3; i++) {for (j = 0; j < 2; j++)printf("%5d", a[i][j]);printf("\n");}printf("\nb:\n");for(i = 0; i < 2; i++) {for (j = 0; j < 3; j++)printf("%5d", b[i][j]);printf("\n");}7、输入一个二维数组并输出(指针)#include "stdio.h"void main() {int x[2][3];int i, j;for (i = 0; i < 2; i++)for (j = 0; j < 3; j++)scanf_s("%d", *(x + i) + j);putchar('\n');for (i = 0; i < 2; i++){for (j = 0; j < 3; j++)printf("%d ", *(*(x + i) + j));putchar('\n');}8、冒泡法排序一个数组#include "stdio.h"#define size 10void maopao(int a[]);void main() {int a[10];int i;printf("请输入10个整数:\n");for (i = 0; i < 10; i++)scanf_s("%d", &a[i]);maopao(a);}void maopao(int a[]) {int i, j, temp;for (i = 0; i < 9; i++) {//进行9轮排序for (j = 0; j < 9 - i; j++)//每轮进行9-i次交换{if (a[j] > a[j + 1]){temp = a[j];a[j] = a[j + 1];//大的沉底,小的上浮a[j + 1] = temp;}}}printf("排序结果:\n");for (i = 0; i < 10; i++)printf("%4d", a[i]);}9、两数组A,B,要求A<B,如A:4,7,9B:1,3,5,8,9变换后A:1,3,5B:4,7,8,9,9#include <stdio.h>void ReArranger(int* A, int* B, int m, int n) //A和B是各有m个和n个整数的非降序数组,本算法将B数组元素逐个插入到A 中,使A中各元素均不大于B中各元素,且两数组仍保持非降序排列。
源代码是什么意思
源代码是指原始代码,可以是任何语言代码。
源码就是指编写的最原始程序的代码。
运行的软件是要经过编写的,程序员编写程序的过程中需要他们的“语言”。
1.计算机里面运行的所有东西都是用程序编出来的(包括操作系统,如Windows,还有Word等,网络游戏也一样),而编写程序要用到计算机语言,用计算机语言直接编出来的程序就叫源码,比如VisualBasic编写的源码文件一般为.bas文件,而用C++编写的一般为.cpp文件,源代码不能直接运行,必须编译后才能运行。
源码经过编译处理后就可以直接在操作系统下运行了。
2.很多的站长都喜欢使用建网站的程序源码,因为可以很方便的修改,对于任何一个seo人员来说,都是非常好的一个切入点。
3.从字面意义上来讲,源文件是指一个文件,指源代码的集合.源代码则是一组具有特定意义的可以实现特定功能的字符(程序开发代码)。
4.“源代码”在大多数时候等于“源文件”。