2《C语言程序设计》实验报告2-20140328_第1页
2《C语言程序设计》实验报告2-20140328_第2页
2《C语言程序设计》实验报告2-20140328_第3页
2《C语言程序设计》实验报告2-20140328_第4页
2《C语言程序设计》实验报告2-20140328_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

塔里木大学信息工程学院PAGE6塔里木大学计算机基础课程实验报告课程名称:C语言程序设计任课教师:杨全丽机房:逸夫楼209计算机编号:实验日期:20140328实验成绩:实验班级:通信17-1、2学生姓名:杜毅实验名称:实验二选择结构程序设计实验目的:1、掌握C语言中关系运算符和逻辑运算符的运算规则。2、掌握if-else语句的使用。3、掌握switch语句的使用。4、掌握break语句的使用。5、掌握选择结构的嵌套。实验步骤与内容:程序填空:输入正整数,判断是否既是5也是7的倍数,是,输出YES,否则,输出NO。#include<stdio.h>voidmain(){inta;scanf("%d",&a);if(a%5==0&&a%7==0){printf("YES");}else{printf("No");}}程序填空:从键盘输入一行字符,可以是数字、字母、或是其他字符,对输入的字符进行判断,统计字符串中数字字符、字母字符、空格字符及其他字符的个数,当输入换行符时结束循环。#include<stdio.h>main(){charc;intnum,letter,blank,others;letter=0,num=0,blank=0,others=0;while((c=getchar())!='\n'){if(c>='a'&&c<='z'||c>='A'&&c<='Z')letter++;elseif(c>='0'&&c<='9')num++;elseif(c=='')blank++;elseothers++;}printf("num=%d,letter=%d,blank=%d,others=%d\n",num,letter,blank,others);}程序改错:从键盘上输入三个整数,并比较大小,按照从小到大的顺序输出。#include"stdio.h"voidmain(){inta,b,c,t;scanf("%d%d%d",&a,&b,&c);if(a>b){t=a;a=b;b=t;}if(a>c){t=a;a=c;c=t;}if(b>c)t=b,b=c,c=t;printf("%d%d%d\n",a,b,c);}运行结果:程序出错分析:第一:scanf的括号里没有&。第二;if语句下没有{}。程序改错。#include<stdio.h>/********error**********/main(){intx,y,t;/********error**********/scanf("%d%d",&x,&y);if(x>=y){ t=x-y; printf("%d\n",t);}/********error**********/else{t=x+y; printf("%d\n",t);/********error**********/}}运行结果:程序出错分析:第一:main后不能有;。第二:scanf中的“”里不能有\n。第三:then应改为else。第四:最后应加上}。分析程序的运行结果。#include<stdio.h>#include<math.h>main(){ inta,gewei,shiwei,baiwei; scanf("%3d",&a);/*输入一个3位的整数*/ gewei=a%10; shiwei=a/10%10; baiwei=a/100; if(pow(gewei,3)+pow(shiwei,3)+pow(baiwei,3)==a) printf("YES\n"); else printf("NO\n");}运行结果(输入153和246):程序分析:以输入153为例分析,当输入153后,分别把个位、十位、百位给了gewei、shiwei、baiwei。然后,如果各位自乘3次之和等于输入之数,则输出YES,否则,输出NO。分析程序的运行结果。#include"stdio.h"voidmain(){intx=1,y=0,a=0,b=0;switch(x){ case1:switch(y) { case0:a++;break; case1:b++;break; } case2:a++;b++;break;}printf("%d%d\n",a,b);}运行结果:程序分析:对于switch(x)对应两条语句case1:switch(y)、case2:a++;b++;break;儿在case1:switch(y)中又有两条语句case0:a++;break;case1:b++;break;一个是对x,一个是对y,只要条件满足就得执行对应语句。局体分析:x满足case1所以执行switch(y)对应的两条语句,y满足case0所以执行其后语a++;break;,a等于1,后遇到break即结束该条对应语句,即switch(y)对应的语句结束。又由于case1:switch(y){case0:a++;break;case1:b++;break;}其花括号没有break语句,所以不管x是否满足case2都要执行其后语句a++;b++;break;所以a便成2,b便成了1。编写程序:铁路托运行李,假设每张车票可按每公斤0.5元托运50公斤以内的行李,如果超过50公斤时,超过的部分每公斤加价0.3元,试编写一道计算行李托运费的程序。设托运行李重为W公斤,托运费为X元,要求如下:①用if语句实现分支。自变量w与函数值x均采用实型。②自变量w值从键盘输入,且输入前要有提示信息。③数据的输出格式采用以下形式:w=输入值,x=计算值④分别以行李重30公斤,80公斤为自变量,运行该程序。记录运行结果。程序:#include"stdio.h"voidmain(){floatx,y;scanf("%f",&x);if(x>=0&&x<=50) {y=x*0.5;}else y=x*0.5+(x-50)*0.3;printf("%f",y);}运行结果:y=xy=x2+0.8x+6(x<-20)x2-0.47x+3.9(-20≤x<10)x3+2.6x-7(x≥10)程序:#include"stdio.h"voidmain(){floatx,y;scanf("%f",&x);if(

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论