收藏 分享(赏)

。程序设计基础(C)离线作业.doc

上传人:dzzj200808 文档编号:2732365 上传时间:2018-09-26 格式:DOC 页数:65 大小:2.45MB
下载 相关 举报
。程序设计基础(C)离线作业.doc_第1页
第1页 / 共65页
。程序设计基础(C)离线作业.doc_第2页
第2页 / 共65页
。程序设计基础(C)离线作业.doc_第3页
第3页 / 共65页
。程序设计基础(C)离线作业.doc_第4页
第4页 / 共65页
。程序设计基础(C)离线作业.doc_第5页
第5页 / 共65页
点击查看更多>>
资源描述

1、1浙江大学远程教育学院程序设计基础(C)课程作业姓名: 韩骏波 学 号: 712100012031年级: 2012 年秋 学习中心: 西溪直属学习中心第章 语言的基本构成程序调试题1 编辑、调试以下程序步骤 1:在 Visual C+环境下新建文件可用 开始 程序Microsoft Visual C+6.0 Microsoft Visual C+6.0 文件 新建文件 C+ Sourse File,输入文件名 ex1-1.c,程序代码如下:include /*文件预处理,包含标准输入输出库,程序可调用输入、输出函数*/int add(int x,int y) int z; z=x+y; ret

2、urn z; int main( ) int add(int,int); /* 函数的说明,告诉系统在主函数中要调用 add 函数 */int a,b,c; /* 变量的定义*/scanf(“%d %dn“,c=add(a,b); /* 函数调用 */ printf(“%d+%d=%dn“,a,b,c); /* 调用系统输出函数 printf,%d 为格式控制符,依次用后面的变量值填充,以整数形式输出 */请思考文件 ex1-1.c 由几个函数构成?调用了那几个系统函数?此程序中用到了哪几个保留字?哪几个用户自定义标识符?答:文件 ex1-1.c 由两个函数构成,分别是 add()和主函数 m

3、ain()。调用了两个系统函数,分别为 scanf 和 printf。程序中用到如下几个保留字:int, return。使用了如下几个用户自定义标示符:x, y, z, a, b, c.2步骤 3:编译并运行程序,程序运行时输入两个整数,20 40 ,观察程序运行的结果。答:问题出在 main 函数第 5 行这句: scanf(“%d %dn“, 对于 scanf 函数内有”n”,直接回车是无效的,建议去掉“n”:变成: scanf(“%d %d“,重新运行再输入,回车,得出结果是 60程序运行结果,20+40=602 编辑、调试以下程序步骤 1:在 Visual C+环境下新建文件可用 开始

4、 程序Microsoft Visual C+6.0 Microsoft Visual C+6.0 文件 新建文件 C+ Sourse File,输入文件名 ex1-2.c步骤 2:在文本编辑器中输入以下 C 程序#include /*文件预处理,包含标准输入输出库,程序可调用输入、输出函数*/#includeint main( ) int and(int,int); /* 函数的说明,告诉系统在主函数中要调用 and 函数 */int or(int,int); /* 函数的说明,告诉系统在主函数中要调用 and 函数 */int a,b,c; /* 变量的定义*/scanf(“%d %d“,c

5、=and(a,b); /* 函数调用 */ printf(“%d 3/*调用系统输出函数 printf,%d 为格式控制符,依次用后面的变量值填充,以整数形式输出 */c=or(a,b); /* 函数调用 */ printf(“%d | %d=%dn“,a,b,c); 步骤 3:文件 新建文件 C+ Sourse File,输入文件名 ex1-2-2.c,源程序代码为:int and(int a,int b)int c;c=areturn c;步骤 4:文件 新建文件 C+ Sourse File,输入文件名 ex1-2-3.c,源程序代码为:int or(int a,int b)int c;

6、c=a|b;return c;步骤 5:点击编译图标 ,编译程序 1-2.c 步骤 4:点击执行图标 ,执行程序 1-2.c ,当程序运行时,键盘输入 20 40,按回车。20 4020 printf(“ * *n“); printf(“ * * n“); printf(“* * * * * *n“); printf(“ * *n“); printf(“ * * n“); printf(“ * * * n“); printf(“ * * * * n“); printf(“ * * * * n“); printf(“ * * n“); 2 仿照例子 2.2,定义一个字符数组,从键盘输入一字符串,

7、然后输出的程序。#includeint main()char xm80;printf(“请输入您的姓名: n“);scanf(“%s“,xm);printf(“ 您好, %s 同学,欢迎来到浙江大学。n“,xm);return 0; 3 从键盘输入十六进制整数,转化为八进制数输出。#includeint main()6int a;printf(“请输入一个十六进制整数: “);scanf(“%x“,printf(“ 转换成八进制输出为: %o n“,a); return 0; 4 只定义两个整型数据并赋值,实现两个整型数的互换。#includeint main()int x,x1=158,x2

8、=476;printf(“交换前 x1= %d ,x2=%d n“,x1,x2); x=x1;x1=x2;x2=x;printf(“交换后 x1= %d ,x2=%d n“,x1,x2);return 0; 75 从键盘上输入一个整数,分别输出 8、16 进制数的程序。86 从键盘上输入一个整数,分别输出它的个位数,十位数,百位数。#includeint main()int x,x0,y1,y2,y3;printf(“请输入一个三位整数: “);scanf(“%d“,x0=x;y1=x%10;x=x/10;y2=x%10;x=x/10;y3=x%10;printf(“ %d 的个位数为%d ,

9、十位数为%d,百位数为%d 。 n“,x0,y1,y2,y3); return 0; 97 以下程序输出结果是( )。#includevoid main()int i=010,j=10;printf(“%d,%dn“,+i,j- );答:结果是 9,108 运行程序,屏幕提示“您是一个学生吗”,您输入y或n 进行回答,屏幕输出您的选项。#includeint main()char x;printf(“您是一个学生吗?(请输入 y/n): “);scanf(“%c“,if(x=y)printf(“您是一个学生。 n“);elseprintf(“您不是一个学生。 n“); return 0; 10

10、9 从键盘输入一个角度 x,求 10*sin(x)的值。#include#includeint main()double x,y,z,pi=3.14159265358;printf(“请输入一个角度 x: “);11scanf(“%lf“,y=x*pi/180;z=10*sin(y);printf(“ 10*sin(x)值为 %lf 。 n“,z); return 0; 第章 循环程序设计1以下 for 语句的循环次数是多少?int i,j=3;for(;i=j;i-,j-) printf(“%d“,i);答:循环了3次#include int main() int i,j=3;for(;i=

11、j;i-,j-) printf(“%d“,i);return 0;2下面的语句显示输出 6 行 6 列的整数数组 h 的主对角线上的所有元素,请补充完整:for(int i=0;ivoid main() int a10=2,4,0,-5,10,6,-8,9,6,7;12int i, count=0;for(i=0;ivoid main()int a10=2,4,0,-5,10,6,-8,9,6,7,tmp,k;for (k=0;kvoid main()int i,j;for(i=0;ivoid main( )int i,s;i=1; s=0;while(ivoid main( )int i,s

12、;i=1;s=0;while(ivoid main( )14int i=1,s; int i=1,s=0;while(iint main()int x,i=1,s=1;printf(“请输入一个基数: “);scanf(“%d“,printf(“%d“,i);for(i=3;ivoid main() int i,n;long int a=1,sum=0;printf(“请输入一个 510 之间的整数 n:n“);scanf(“%d“,for(i=1;ivoid main() int i,j;for(i=0;ivoid main() int i,sum=0;for(i=2;ivoid main(

13、) int i,sum=0;for(i=1;ivoid main() char str100;int i,j,s=0;printf(“请输入一行字符:n“);for(i=1;i=aprintf(“请输入 x 值: “);scanf(“%d“,while(x)if(x0)printf(“ %d 的绝对值是%d 。 n“,x,x); elseprintf(“ %d 的绝对值是%d 。 n“,x,-x);printf(“请输入 x 值: “);scanf(“%d“,return 0; 202输入一批数,输出比相邻数大的数,当输入 0 时结束。#include#define N 1000void ma

14、in() int numN;int i = 0;int j=1;printf(“请输入需要比较的整数,以数字 0 结尾:n“);scanf(“%d“, while(numi!= 0)scanf(“%d“,printf(“比相邻数大的数字为:n“);if (i = 1)printf(“%d “, num0);if (i1for(; jnumj-121if(i1 printf(“n“);3将输入字符的大写字符转换成小写字符输出,小写字符原样输出。#includeint main()char s;printf(“请输入一串字符:n“);while(s=getchar()!=n)if(s=Aint d

15、x=0,xx=0,sz=0,qt=0;printf(“请输入一串字符:n“);while(s=getchar()!=n)if(s=Awhile(1)printf(“请输入 x 的值:“);scanf(“%lf“,if(xint main( )int n;while(1)printf(“请输入百分制成绩 :“);scanf(“%d“,while(n100)printf(“请重新输入分数(0100 之间):“);scanf(“%d“,if(n=90)printf(“%d 对应的五分制成绩为:5n“,n);else if(n=80)25printf(“%d 对应的五分制成绩为:4n“,n);else

16、 if(n=70)printf(“%d 对应的五分制成绩为:3n“,n);else if(n=60)printf(“%d 对应的五分制成绩为:2n“,n);elseprintf(“%d 对应的五分制成绩为:1n“,n);return 0;7、用 switch 完成:读入一个实数 x,再输入一整数,若输入是 1,则计算 sin(x),若输入2,则计算 cos(x),若输入 3,则计算 tan(x),若输入其他值,则显示错误信息。#include#includeint main( )float x;int n;doprintf(“请输入一个实数 x:“);scanf(“%f“,printf(“请输

17、入一个整数,选择运算方式(1.sinx,2.cosx,3.tanx):“);scanf(“%d“,26switch(n)case 1:printf(“x=%f,sinx=%fn“,x,sin(x);break;case 2:printf(“x=%f,cosx=%fn“,x,cos(x);break;case 3:printf(“x=%f,tanx=%fn“,x,tan(x);break;default:printf(“输入错误!n“);break;while(1);return 0;8、用 switch 完成:输入星期 1 到星期 5,输出它们对应的颜色星期 1:blue星期 2:red星期

18、3:white星期 4:yellow星期 5:greenincludeint main( )int x;doprintf(“请输入星期几(用数字 15 表示):“);scanf(“%d“,switch(x)27case 1:printf(“星期 1:bluen“);break;case 2:printf(“星期 2:redn“);break;case 3:printf(“星期 3:whiten“);break;case 4:printf(“星期 4:yellown“);break;case 5:printf(“星期 5:greenn“);break;default:printf(“输入错误!n

19、“);break;while(1);return 0;9、用 switch 完成:从键盘输入 A、B、C、D 四个等级中的一个,转化输出等级 输出A 优秀B 良好C 中等D 及格E 不及格#includeint main( )char degree;printf(“请输入等级(用 A、B、C、D 表示):“);scanf(“%c“,switch(degree)case A:printf(“优秀n“);break;28case B:printf(“良好n“);break;case C:printf(“中等n“);break;case D:printf(“合格n“);break;case E:pr

20、intf(“不及格n“);break;default:printf(“输入错误!n“);break;return 0;29第章 数组及其应用.从键盘输入 12 个数,分别为:900,2,3,58,34,76,87,72,90,20,78,30,找出最大和最小数。#includeint main( ) int a12;int i,min,max;printf(“请输入 12 个数:“);for(i=0;imax)max=ai;else if(aiint main( )30 int a10=2,3,20,58,72,76,78,87,90,900;int i;printf(“数组中的偶数为:“);for(i=0;iint main( ) int a10=2,3,20,58,72,76,78,87,90,900;int i,mid,low=0,high=9,found;printf(“输入要查找的数:“);scanf(“%d“,while(high=low)mid=(low+high)/2;if(amidfound)low=mid;

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 大学课件

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报