程序设计3.doc_第1页
程序设计3.doc_第2页
程序设计3.doc_第3页
程序设计3.doc_第4页
程序设计3.doc_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

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

文档简介

实验1 数据类型、输入输出程序的建立及调试1.编写一个程序,输入华氏温度,输出相应的摄氏温度,转换公式是:c=(f-32)/1.8,c表示,摄氏温度,f表示华氏温度。#includevoid main()float f,c;printf(请输入华氏温度:);scanf(%f,&f);c=(f-32)/1.8;printf(对应摄氏温度为:%fn,c); return 0; 2. 输入一个圆的半径r 和一个字符k, 当k为1时,计算圆的面积;当k为2时,计算圆的周长;当k为3时,既要求出圆的面积也要求出圆的周长。#include #define PI 3.1416void main()int k;float r;printf(请输入k=); scanf(%d,&k);printf(请输入半径r=);scanf(%f,&r);if(k=1)printf(圆的面积为%.2fn,PI*r*r);elseif(k=2)printf(圆的周长为%.2fn,2*PI*r);elseprintf(圆的面积为%.2fn,PI*r*r); printf(圆的周长为%.2fn,2*PI*r);3.编写程序,读入一个字母,输出与之对应的ASCII码,输入输出都要有相应的提示。#includevoid main()char ch;printf(请输入一个字母:);ch=getchar();printf(该字母的ASCII码为%dn,ch);4.编写程序实现:输入一个整数,判断它能否分别被3、5、7整除,并输出以下信息之一: (1).能同时被3、5、7整除 (2).能被其中两数(要指出是哪两个数)整除 (3).能被一个数(要指出是哪个数)整除 (4).不能被3、5、7中任一个整除 #includevoid main()int i;printf(请输入一个整数:);scanf(%d,&i); if (i%3=0&i%5=0&i%7=0)printf(%d能同时被3,5,7整除n,i);else if(i%3=0&i%5=0&i%7!=0) printf(%d能被3和5整除n,i);else if(i%3=0&i%7=0&i%5!=0) printf(%d能被3和7整除n,i);else if(i%7=0&i%5=0&i%3!=0) printf(%d能被7和5整除n,i); else if(i%7=0&i%5!=0&i%3!=0) printf(%d能被7整除n,i);else if(i%7!=0&i%5=0&i%3!=0) printf(%d能被5整除n,i); else if(i%7!=0&i%5!=0&i%3=0) printf(%d能被3整除n,i);else printf(%d不能被3,5,7任一个整除n,i);实验2 结构化程序设计及三种结构的应用一以下共有5个实验,1,5题必做,其他选作,但是一共要做4道题目,如果做完并做对所有5道题目,酌情给本次实验成绩加分。1. 计算1-100之间的奇数之和及偶数之和。 #includevoid main()int i=1,a=0,b=0;while(i=100)if(i%2=1)a=a+i;elseb=b+i;i+;printf(1-100之间奇数和为:%dn,a);printf(1-100之间偶数和为:%dn,b);2 编程输出1-100之间满足每位数字的乘积大于每位数字的和的数。#includevoid main()int i=1,n=0,a,b;while(ia+b)printf(%dt,i); n=n+1; if(n%5=0) printf(n);i=i+1;printf(n);3 每个苹果0.8元,第一天买2个苹果,从第二天开始,每天买前一天的2倍,直至购买的苹果个数达到不超过100的最大值,编写程序求每天平均花多少钱。#includevoid main()int n=2,s=2,d=1;float p;while(2*n=100)n=2*n;s=s+n;d=d+1;p=(0.8*s)/d;printf(每天平均花%.2f元钱n,p);4 百钱买白鸡问题,公鸡5文钱一只,母鸡3文钱一只,小鸡3支1文钱,有100块钱,买100只鸡,请问公鸡,母鸡,小鸡各买几只,编程求出并输出所以的可能组和。 #includevoid main()int x,y,z;for(x=1;x=20;x+)for(y=1;y=33;y+)for(z=3;z=99;z+=3)if(5*x+3*y+z/3=100)&(x+y+z=100)printf(公鸡%d只,母鸡%d只,小鸡%d只n,x,y,z);5. 运费按计费标准计算,设: s :距离(km) p (price): 每公里每吨货物基本运费(元) w (weight): 货物重(吨) d (discount):折扣 f (freight): 总运费, f= p*w*s*(1-d) 折扣标准: s250: 无折扣 250s500: 2% 500s1000: 5% 1000s2000: 8% 2000s3000: 10% 3000s: 15% 编写程序实验以上计算要求,当用户输入负数时程序结束。#includevoid main()float s,p,w,d,f;printf(请输入距离(km):);scanf(%f,&s);printf(请输入每公里每吨货物基本运费(元):);scanf(%f,&p);printf(请输入货物重(吨):);scanf(%f,&w);if(s=0)&(s=250)&(s=500)&(s=1000)&(s=2000)&(s3000)d=0.1;else d=0.15;f=p*w*s*(1-d);printf(总运费为:%.2f元n,f);#includevoid main()float s,p,w,d,f;printf(请输入距离(km):);scanf(%f,&s);printf(请输入每公里每吨货物基本运费(元):);scanf(%f,&p);printf(请输入货物重(吨):);scanf(%f,&w);if(s=0)&(s=250)&(s=500)&(s=1000)&(s=2000)&(s3000)d=0.1;else d=0.15;f=p*w*s*(1-d);printf(总运费为:%.2f元n,f); 实验3 数组和函数一以下共有6个实验,1,3题必做,4题必做,其他选作,但是一共要做5道题目,如果做完并做对所有6道题目平时成绩加分。1 编写程序,求135799101的值。#include void main()int i=1,sum=0; while(i102)if(i%4=1) sum=sum+i;else sum=sum-i;i=i+2;printf(sum=%dn,sum);#include void main()int i=1,sum=0; while(i102)if(i%4=1) sum=sum+i;else sum=sum-i;i=i+2;printf(sum=%dn,sum);2 若一个三位数表示为ijk,,求出所有满足条件ijk+kji=1333的三位数。#includevoid main()int a3;for(a1=1;a110;a1+)for(a2=0;a210;a2+)for(a3=0;a310;a3+)if(a1*100+a2*10+a3+a3*100+a2*10+a1=1333)printf(%dn,a1*100+a2*10+a3);3 编写程序将用户从键盘上输入 的某个字符串中某个特定字符删除,字符串和要删除的特定字符都由用户输入,要求显示用户输入的字符串和删除字符后的字符串,例如:用户从键盘输入“I am a teacher“,要删除的字符为:a,删除字符a后的字符串为“I m techer”。#includevoid main()char c50,ch;int i,j;printf(请输入字符串:);gets(c);printf(请输入需要删去的字符:);ch=getchar();for(i=1;i=50;i+)if(ci=ch)for(j=i;j=50;j+)cj=cj+1;puts(c);4. 编写一个函数,使得它能够将一个有n个数的数组中的各个元素按逆序重新存放,例如原来的顺序为:8,6,5,4,1。要求改为:1,4,5,6,8, 并输出初始元素和逆序后的数组元素,并编写主程序,由用户输入数组中元素的个数以及数值元素的初始值,通过调用函数实现逆序排列。#includeint main()#define N 5 void invert(int aN); int aN,i; printf(Enter array a:n); for(i=0;iN;i+) scanf(%d,&ai); printf(array a:n); for (i=0;iN;i+) printf(%5d,ai); invert(a); void invert(int aN)int i,temp;for (i=0;iN/2;i+)temp=ai;ai=aN-i-1;aN-i-1=temp;printf(n Now,array a:n);for (i=0;iN;i+) printf(%5d,ai);printf(n);5 编一个函数,将两个字符串连接起来。不能使用strcat函数,并编写主程序调用这个函数,让用户从键盘输入两个字符串,输出连接后的字符串。#include int main()void concatenate(char string1,char string2,char string); char s1100,s2100,s100; printf(input string1:); scanf(%s,s1); printf(input string2:); scanf(%s,s2); concatenate(s1,s2,s); printf(nThe new string is %sn,s); return 0; void concatenate(char string1,char string2,char string)int i,j; for (i=0;string1i!=0;i+) stringi=string1i; for(j=0;string2j!=0;j+) stringi+j=string2j; stringi+j=0;6 有n个数按从小到大的顺序存放在一个数组中。输入一个数,要求找出该数是数组中的第几个元素,返回其所在的位置,如果该数不在数组中,输出“不在表中”。编写函数实现该功能,并编写主程序调用函数。#includevoid main()void rese

温馨提示

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

评论

0/150

提交评论