收藏 分销(赏)

C程序作业答案.doc

上传人:精**** 文档编号:1907824 上传时间:2024-05-11 格式:DOC 页数:6 大小:86.50KB 下载积分:6 金币
下载 相关 举报
C程序作业答案.doc_第1页
第1页 / 共6页
C程序作业答案.doc_第2页
第2页 / 共6页


点击查看更多>>
资源描述
什么是程序及程序设计 程序(program)是为实现特定目标或解决特定问题而用计算机语言编写的命令序列的集合。为实现预期目的而进行 操作的一系列语句和指令。一般分为系统程序和应用程序两大类。程序设计(Programming)是指设计、编制、调试程 序的方法和过程。它是目标明确的智力活动。由于程序是软件的本体,软件的质量主要通过程序的质量来体现,在软 件研究中,程序设计的工作非常重要,内容涉及到有关的基本概念、工具、方法以及方法学等。 程序设计=数据结构+算法 正确理解以下名词及其含义 1、源程序 目标程序 可执行程序 2、程序编辑 程序编译 程序连接 3、程序 程序模 块 程序文件 4、函数 主函数 被调用函数 库函数 5、程序调试 程序测试 1、源程序:程序可以用高级语言或汇编语言编写,用高级语言或汇编语言编写的程序称 为源程序。 目标程序:源程序经过“编译程序”编译所得到的二进制代码称为目标程序。 可执行程序:目标程序与库函数连接,形成的完整的可在操作系统下独立执行的程序 称为可执行程序。 2、程序编辑:是指将完成一件工作所需要的步骤,也就是算法,用计算机所能识别的语言,按照一定的程序结构翻译出 来,并可被计算机执行的编写代码的全过程.该程序编辑形式(能通过编译、链接生成最终程序(一般是可执行文件) 的源代码文件。 用户使用编译程序对其个人编制的源程序进行编译的过程称为程序编译。 程序连接:编辑就是自己写代码,编译就是将你写的代码翻译成目标文件,连接是将你的目标文件与系统文件(资源 、模块等)组合生成可执行文件。 3、程序就是为使电子计算机执行一个或多个操作,或执行某一任务,按序设计的计算机指令的集合。 程序模块(program module)即可由汇编程序、编译程序、装入程序或翻译程序作为一个整体来处理的一级独立的、可 识别的程序指令。 程序以命令形式存储在磁盘上,称为:程序文件,文件扩展名为。PRG 4、库函数   由C系统提供,用户无须定义, 也不必在程序中作类型说明,只需在程序前包含有该函数原型的头文 件即可在程序中直接调用。 被调用函数:计算机编程术语,即由一个函数调用另一个函数,则称第二个函数为被调用函数。 主函数既是程序的入口,又是程序的出口。 函数:函数是C程序的基本单位,在设计良好的程序中,每个函数都用来实现一个或几个特定的功能。 5、程序调试:所谓程序调试,是将编制的程序投入实际运行前,用手工或编译程序等方法进行测试,修正语法错误 和逻辑错误的过程。这是保证计算机信息系统正确性的必不可少的步骤。 程序测试(program testing)   是指对一个完成了全部或部分功能、模块的计算机程序在正式使用前的检测,以确 保该程序能按预定的方式正确地运行。 为什么需要计算机语言?高级语言的特点 计算机语言(Computer Language)指用于人与计算机之间通讯的语言。计算机语言是人与计算机之间传递信息的媒 介。计算机系统最大特征是指令通过一种语言传达给机器。为了使电子计算机进行各种工作,就需要有一套用以编写 计算机程序的数字、字符和语法规划,由这些字符和语法规则组成计算机各种指令(或各种语句)。这些就是计算机 能接受的语言。高级语言独立于机器的特性是靠编译器为不同机器生成不同的目标代码(或机器指令)来实现的。 C程序设计答案:4-1有两个瓶子A和B分别盛放醋和酱油,将他们互换如果A瓶原来盛醋现改盛酱油,B瓶原来盛酱油 现改盛醋。 4-3开始输入A、B、C、如果a>b>c则输出A然后是B最后C b>a>c则输出b然后是a最后C c>a>b则输出c 然后是a最后C 4-5开始输入数N如果能被3整除而且能被5整除则算法结束。 4-7输入M和N找出M和N所有公有质因数, 然后将所有公有质因数相乘,其积即为M和N的最大公约数。 8设YEAR为被检测的年份 S1:1900=>year S2:若year不 能被4整除则输出year的值和“不是闰年”。然后转到S6检查一下年份。 S3:若year能被4整除不能被100整除,则输出 year的值和“是闰年”。然后转到S6 S4:若year能被400整除输出year的值和“是润年”然后转到s6 S5:输出year的值和“ 不是闰年” S6:year+1=>year S7:当year≤2000时,转S2继续执行,否则算法停止。 假如我国国民生产总值的年增长率r=9%,计算n=10年后我国国民生产总值与现在相比增长百分比p #include <stdio.h> int main(int argc, char *argv[]) { int n; float p1=1.0,p2=1.0,r=0.09,p; for(n=1;n<=10;n++) { p2+=p1*r; p1=p2; } p=p2/1.0; printf("10年后的比现在相对增长百分比为:%.2f%%\n",p*100) ; return 0; } 存款利息的计算。有1000元,想存5年,可按以下5种办法存: (1)一次存5年(2)先存2年,到期后将本息再存三年期(3)先存3年期,到期后将本息再存2年期(4)存1年期, 到期后将本息再存1年期,连续存5次(5)存活期存款。活期利息每一季度结算一次。 2007年12月的银行存款利息 是:1年期定期存款利息=4.14%;2年期=4.68%;3年期=5.4%;5年期=5.85% 活期存款利息为0.72%(活期存 款每一季度结算一次利息)。如果r为年利率,n为存款年数,则计算本息的公式如下。一年期本息和:P=1000* (1+r) n年期本息和:P=1000*(1+n*r) 存n次一年期的本息和:P=1000*(1+r)^n(n次方哦~~) 活期存款 本息和:P=1000*(1+r/4)^4n(4n次方哦!) (说明:1000*(1+r/4)是一个季度的本息和) #include<stdio.h> #include<math.h> #include<stdlib.h> #define b 1.0414 #define c 1.0018 main() { while (1) { int a; printf("Please return the way you want 1,2,3,4,5:"); scanf("%d",&a); switch (a) { case 1:printf("The money is:%f\n\n",1000+1000*0.0585*5);break; case 2:printf("The money is:%f\n\n",1000+(1000+1000*0.0468*2)*0.0540*3);break; case 3:printf("The money is:%f\n\n",1000+(1000+1000*0.0540*3)*0.0468*2);break; case 4:printf("The money is:%f\n\n",1000*b*b*b*b*b);break; case 5:printf("The money is:%f\n\n",1000*pow(c,20));break; } system("pause"); } } 分析下面的程序: #include<stdio.h> int main()........省略 1、运行时会出现什么信息为什么 2、如果将程序4、5行改 为 c1=197 c2=198 运行时会出现什么信息为什么 3、将3行给为 int c1,c2; 运行时会出现什么信息为什么 1,输出:c1=a,c2=b c1=97,c2=98 原因:因为输出为整型格式时,就输出对应的ASC代码值;字符格式就输出相应的 字符。 2,输出:c1=?,c2=? c1=-59c2=-58 原因:英文字母对应的asc值越界,所以输出?(不能输出对应的特殊 符号,应为格式是%c),至于后面输出的负数,是因为字符常量在内存中存储的时候实际上是以二进制形式存储的 ,197和198存储进去,内存中因为越界不能完整存储相应的二进制码,而存储的二进制码输出来的整数就是那二进 制码对应的负数了。 3,输出:c1=a,c2=b c1=97,c2=98 原因和1的问基本相同了。。 用下面的SCANF函数输入数据,使a=3,b=7,x=8.5,y=71.82,c1='A',c2='a',问在键盘上如何输入 #include<stdio.h> int main() { int a,b; char c1,c2; float x,y,z; scanf("%d%d",&a,&b); getchar(); scanf("%c",&c1); getchar(); scanf("%c",&c2); scanf("%f%f%f",&x,&y,&z); printf("%d %d %c %c %f %f %f\n",a,b,c1,c2,x,y,z); return 0; } C语言中如何表示“真”和“假”?系统如何判定一个量的“真”和“假... C语言编译系统在表示逻辑运算结果时,以数值1代表“真”,以0代表“假” 其实语句是否执行由用户的代码(即判断条件)决定的,而系统只用0和非0进行判断,当用户认为此句可执行,系统 判断为“真”,反之亦然 写出下面逻辑表达式的值,设a=3.b=4,c=5 0 1 1 0 1 有三个整数a,b,c,由键盘输入,输出其中最大值 方法一 #include <stdio.h> main() { int a,b,c; printf("请输入3个整数:"); scanf("%d,%d,%d",&a,&b,&c); if(a<b) if(b<c) printf("max=%d\n",c); else printf("max=%d\n",b); else if(a<c) printf("max=%d\n",c); else printf("max=%d\n",a); } 输入两个正整数m和n,求其最大公约数和最小公倍数。 main() {long m,n,i=1,j,s; scanf("%ld,%ld",&m,&n); for(;i<=m&&i<=n;i++) {if(m%i==0&&n%i==0) s=i;} if(m>=n) j=m; else j=n; for(;!(j%m==0&&j%n==0);j++); printf("s=%ld,j=%ld\n",s,j); } 求Sn=a+aa+aaa+…+aa…aaa(有n个a)之值,其中a是一个数字。例如:2+22+222+2222+22222(n=5),n由键 盘输入。 #include"math.h" main() {int n,sum=0,i=1,s=2; scanf("%d",&n); while(i<=n) {sum=sum+s;s=s+2*pow(10,i); i++;} printf("sum=%d\n",sum); } 打印以下图案 #include"math.h" main() {int i,j,k; for(i=0;i<=3;i++) {for(j=0;j<=2-i;j++) printf(" "); for(k=0;k<=2*i;k++) printf("*"); printf("\n"); } for(i=0;i<=2;i++) {for(j=0;j<=i;j++) printf(" "); for(k=0;k<=4-2*i;k++) printf("*"); printf("\n"); } } 打印出以下杨辉三角形(要求打印出10行)。 main() { static int m,n,k,b[15][15]; b[0][1]=1; for(m=1;m<15;m++) {for(n=1;n<=m;n++) { b[m][n]=b[m-1][n-1]+b[m-1][n]; printf("%-5d",b[m][n]);}printf("\n"); } } } 有一行电文译文下面规律译成密码: main() { int i;char str1[100],str2[100]; gets(str1); for(i=0;str1[i]!=’\0’;i++) if(str1[i]>=65&&str1[i]<=90) str2[i]=155-str1[i]; else if(str1[i]>=97&&str1[i]<=122) str2[i]=219-str1[i]; else str2[i]=str1[i]; printf("%s\n%s\n",str1,str2); } 写两个函数,分别求两个整数的最大公约数和最小公倍数,用主函数调用这两个函数,并输出结果两个整数由键盘输 入。 maxyueshu(m,n) int m,n; { int i=1,t; for(;i<=m&&i<=n;i++) {if(m%i==0&&n%i==0) t=i; } return(t); } minbeishu(m,n) int m,n; {int j; if(m>=n) j=m; else j=n; for(;!(j%m==0&&j%n==0);j++); return j; } main() {int a,b,max,min; printf("enter two number is: "); scanf("%d,%d",&a,&b); max=maxyueshu(a,b); min=minbeishu(a,b); printf("max=%d,min=%d\n",max,min); } 写一个判断素数的函数,在主函数输入一个整数,输出是否是素数的消息。 psushu(m) int m; {int i=2,t; for(;i<=m;i++) if(m%i==0&&i<m) break; if(m-i==0) t=1; else t=0; return m; } main() {int a,s; printf("enter sushu is \n"); scanf("%d",&a); s=psushu(a); if(s==1) printf("a is sushu\n"); else printf("s is not sushu\n"); } 编写一函数,由实参传来一个字符串,统计此字符串中字母、数字、空格和其它字符的个数,在主函数中输入字符串 以及输出上述结果。 char tongji(str0,b) char str0[100]; int b[4]; {int i; for(i=0;str0[i]!=’\0’;i++) {if(str0[i]>=65&&str0[i]<=90||str0[i]>=97&&str0[i]<=122) b[0]++; else if(str0[i]>=48&&str0[i]<=57) b[1]++; else if(str0[i]==32) b[2]++; else b[3]++;} } main() {char str1[100];static int i,a[4]; gets(str1); tongji(str1,a); printf("zimu Shuzi Kongge Qita\n"); for(i=0;i<4;i++) printf("%-8d ",a[i]);printf("\n"); } 其中专业理论知识内容包括:保安理论知识、消防业务知识、职业道德、法律常识、保安礼仪、救护知识。作技能训练内容包括:岗位操作指引、勤务技能、消防技能、军事技能。 二.培训的及要求培训目的 安全生产目标责任书 为了进一步落实安全生产责任制,做到“责、权、利”相结合,根据我公司2015年度安全生产目标的内容,现与财务部签订如下安全生产目标: 一、目标值: 1、全年人身死亡事故为零,重伤事故为零,轻伤人数为零。 2、现金安全保管,不发生盗窃事故。 3、每月足额提取安全生产费用,保障安全生产投入资金的到位。 4、安全培训合格率为100%。 二、本单位安全工作上必须做到以下内容: 1、对本单位的安全生产负直接领导责任,必须模范遵守公司的各项安全管理制度,不发布与公司安全管理制度相抵触的指令,严格履行本人的安全职责,确保安全责任制在本单位全面落实,并全力支持安全工作。 2、保证公司各项安全管理制度和管理办法在本单位内全面实施,并自觉接受公司安全部门的监督和管理。 3、在确保安全的前提下组织生产,始终把安全工作放在首位,当“安全与交货期、质量”发生矛盾时,坚持安全第一的原则。 4、参加生产碰头会时,首先汇报本单位的安全生产情况和安全问题落实情况;在安排本单位生产任务时,必须安排安全工作内容,并写入记录。 5、在公司及政府的安全检查中杜绝各类违章现象。 6、组织本部门积极参加安全检查,做到有检查、有整改,记录全。 7、以身作则,不违章指挥、不违章操作。对发现的各类违章现象负有查禁的责任,同时要予以查处。 8、虚心接受员工提出的问题,杜绝不接受或盲目指挥; 9、发生事故,应立即报告主管领导,按照“四不放过”的原则召开事故分析会,提出整改措施和对责任者的处理意见,并填写事故登记表,严禁隐瞒不报或降低对责任者的处罚标准。 10、必须按规定对单位员工进行培训和新员工上岗教育; 11、严格执行公司安全生产十六项禁令,保证本单位所有人员不违章作业。 三、 安全奖惩: 1、对于全年实现安全目标的按照公司生产现场管理规定和工作说明书进行考核奖励;对于未实现安全目标的按照公司规定进行处罚。 2、每月接受主管领导指派人员对安全生产责任状的落
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服