c语言第四次作业
c第四次(2)上上机

第四次上上机(二)1.将两个字符串连接起来,不用strcat函数#include<stdio.h>void main( ){char str1[20],str2[10];int i=0,j=0;printf("enter str1 and str2:");scanf("%s%s",str1,str2); //两个字符串之间用空格分隔while(str1[i] !='\0') i++; //找串str1中的串结束符'\0'while(str2[j] !='\0')str1[i++]=str2[j++]; //将串str2中的字符连接到串str1之后str1[i]='\0'; //将串结束符放在str1之后printf("str1 is:%s\n",str1);}2.输入一行字符,统计其中字母、数字和其它字符的个数。
#include<stdio.h>#include<string.h>void main( ){ int i,k,a[3]={0,0,0}; char str[40];printf("请输入一个字符串:");gets(str);k=strlen(str);for(i=0;i<k;i++){ if(str[i]>='a' && str[i]<='z' || str[i]>='A' && str[i]<='Z')a[0]++; //是字母,则字母的个数加一else if (str[i]>='0' && str[i]<='9')a[1]++; //是数字,则数字的个数加一elsea[2]++;//既不是字母,也不是数字,则其它字符的个数加一}printf("字母的个数:%d,数字的个数:%d,其它字符的个数:%d\n",a[0],a[1],a[2]);}3.将字符串中所有的小写字母转换为大写字母#include <stdio.h>void mystrupr(char string[]){int i = 0;while(string[i]!=0){if(string[i]>='a' && string[i]<='z')string[i] = string[i]-'a'+'A';i = i+1;}}void main(){char str[] = "This is a sample.";mystrupr(str);printf("%s\n",str);}4.求字符串的长度#include <stdio.h>#include <string.h>int mystrlen(char string[]){int len = 0;while(string[len]!='\0')len = len+1;return len;}void main(){char string[81];int len = 0;printf("输入一个字符串: ");gets(string);printf(" The length of string :%d\n",mystrlen(string));}5..第七章数组课后作业7.2采用选择法对10个整数按升序的顺序排序。
电大《C++语言程序设计》第1、2、3、4次作业及答案

第一次作业一、写出下列每个程序运行后的输出结果1。
#include〈stdio.h>void main(){int x=5;switch(2*x—3){case 4:printf(”%d ",x);case 7:printf(”%d ",2*x+1);case 10:printf(”%d ”,3*x-1);break;default:printf(”%s ”,”default\n");}printf(”%s\n","switch end。
");}2。
#include〈stdio.h>void main(){int i,s=0;for(i=1;i〈=6;i++)s+=i*i;printf(”s=%d\n”,s);}3。
#include〈stdio。
h〉void main(){int i,s1=0,s2=0;for(i=0;i〈10;i++)if(i%2)s1+=i;else s2+=i;printf(”%d %d\n”,s1,s2);}4. #include<stdio。
h〉void main(){int n=10,y=1;while(n——){y++;y++;}printf(”y=%d\n",y);}5。
#include〈stdio.h〉void main(){int f,f1,f2,i;f1=f2=1;printf(”%d %d ",f1,f2);for(i=3;i〈=10;i++){f=f1+f2;printf("%d ",f);if(i%5==0)printf("\n”);f1=f2;f2=f;}printf(”\n");}6。
#include<stdio。
h>#include〈math.h>void main(){int i,n;for(n=2;n〈=20;n++){int temp=(int)sqrt(n);//sqrt(n)求出n的平方根并取整for(i=2;i〈=temp;i++)if(n%i==0)break;if(i〉temp)printf(”%d ”,n);}printf(”\n”);}7。
c华科第四次作业讲解

华中科技大学《计算机基础与程序设计(C++ )》实验报告实验名称:第四次上机实验实验学时系别:专业:班级:姓名:马乾清学号:U201511417实验日期:教师批阅签字:一、实验内容1编程用随机函数产生10个互不相同的两位整数存放到一维数组中,并输出其中的素数。
2•编程将一组数据从大到小排序后输出,要求显示每个元素及它们在原数组中的下标。
3.编程输入10个字符到一维字符数组s中,将字符串逆序输出。
4 •编写程序将4阶方阵转置。
如下所示:5 •编程输出10行的杨辉三角形。
(使用二维数组并利用每个系数等于其上两系数之和。
)6•将一个字符串插入另一个字符串的指定位置。
7 •现有10个学生,期终考试有5门课程。
求每个学生总成绩、平均成绩,并按总成绩高分到低分输出。
&把有序的两个数组a和b合并,要求合并后的数组依然有序。
分析:两个数组合并时,可为每个数组安排一个指针,从第一个元素开始比较两个数组中对应的元素,将小的取出,顺序放入新的数组中;取出所指元素的指针,后移再比较,依次类推,直到其中一个数组的元素已全部放入新数组中,再把另一数组余下的元素全部顺序放入新数组中即可。
9•现有5个小朋友编号为1, 2, 3, 4, 5,他们按自己的编号顺序围坐在一张圆桌旁,身上都有若干个糖果,现在做一个分糖果游戏。
从1号小朋友开始,将他的糖果均分三份(如果有多余的,则将多余的糖果吃掉),自己留一份,其余两份分给相邻的两个小朋友。
接着2号、3号、4号、5号小朋友也这如果做。
问一轮后,每个小朋友手上分别有多少糖果。
10.从键盘输入2个字符串,45120判断其中较短的串是否是另一个串的子字符串。
11.修改例5.23 ,将其升序排序,然后折半查找是否有查找的书。
、算法说明(用文字说明)1①先用随即函数产生10个随机数②再用循环将这10 个数放到一个数组中③最后用循环对这个数组中的每个元素判定其是否是素数,并将素数输出。
2、直接使用选择排序10 个数字进行排序,并将其下标带出来一起输出。
c语言作业

1、用下面的scanf函数输入数据,使a=10, b=20, c1='A', c2='a', x=1.5, y=-3.75, z=67.8,请问在键盘上如何输入数据?scanf("%5d%5d%c%c%f%f%*f,%f", &a,&b,&c1,&c2,&x,&y,&z);2、设圆半径r=1.5,圆柱高h=3,求圆周长、圆面积、圆球表面积、圆球体积、圆柱体积。
用scanf函数输入数据,输出计算结果,输出时要求有文字说明,取小数点后2位数字第三次作业1、有3个整数a,b,c,由键盘输入,输出其中最大的数。
2、有一个函数:x x<1y= 2x-1 1<=x<103x-11 x>=10写一段程序,输入x,输出y的值。
3、给出一百分制成绩,要求输出成绩等级A、B、C、D、E。
90分以上为A,80-89分为B,70-79为C,60-69为D,60分以下为E。
4、给一个不多于5位的正整数,输出这个数是几位数。
第四次作业1、给一个不多于5位的正整数,要求:a.求出它是几位数;+b.分别输出每一位数字;c.按逆序输出各位数字,例如:原数为321,应输出123。
2、教材P112页第5.8题(if语句解法创建一个独立文件,switch语句解法创建一个独立文件第五次作业1、输入两个正整数m和n,求其最大公约数和最小公倍数。
(经典题)2、输入一行字符,分别统计出其中英文字母、空格、数字和其他字符的个数,并输出。
3、求s=a+aa+aaa+aaaa+....+(a...a)之值,其中a是一个数字,n表示a的位数。
1、输入两个字符串,使用指针p将两个字符串按次序复制到数组c中。
例:输入“zhe"和"jiang",将"zhejiang"保存在数组c中。
第四次c语言上机实验课

3 2 1 y=100*a+10*b+c;
百 十 个
第四次实验课要完成两个任务: 任务一:习题小测 任务二:编写程序 要求:1 要求:1、独立完成(打包文件,文件名为学号) 2、上交作业(右键点击电脑右下角小电脑 图标,提交作业,将作业拖入,点击提交即可)
任务一
独立 完成 “第一次小测” 第一次小测”
任务二
编写程序1 把数学算式转换成C 编写程序1:把数学算转换成C语言表达式。输入变
量x、y、z的值,根据以下算式求n的值。 的值,根据以下算式求n 其中x 其中x、y、z为整型变量,n为实型变量。 为整型变量,n
n=x +
2
yz 2
编写程序2 输入一个3 编写程序2: 输入一个3位整数,将这个数逆序组 成一个新的数输出。如输入“123”,输出“321”。 成一个新的数输出。如输入“123”,输出“321”。 百 十 个 分析: a=x%10; 输入数据(x): 输入数据(x): 1 2 3 b=x%100/10; c b a 或b=x/10%10; c=x/100; 输出数据(y): 输出数据(y):
C语言I博客作业04

C语⾔I博客作业041.作业头这个作业属于哪个课程这个作业要求在哪⾥这个作业的⽬标学习新的知识点,进⾏融汇贯通学号202090951.PTA实验作业(20分/题)从PTA题⽬集中选出2个你最满意的题⽬完成以下内容,选择题⽬难度越⼤,分值越⾼,每题20分(每项5分),内容要求如下:1.1 题⽬名1本题要求编写程序,输⼊N个学⽣的MOOC成绩,统计优秀、合格证书的数量,以及没有获得证书的数量。
学⽣修读程序设计MOOC,85分及以上获得优秀证书,不到85分但是60分及以上获得合格证书,不到60分则没有证书。
1.1.1数据处理介绍实现本题过程中,你的数据表达、数据处理是怎么做的。
注意:请务必按照以下⽅式书写。
数据表达:运⽤了整型变量amount1,amount2,amount3,n,a[n]数据处理:使⽤了for循环,if语句及其数组,本题使⽤for循环输⼊数组的各项的值函数参数:直接⽤主函数解决,未⾃定义函数1.1.2实验代码截图1.1.3 造测试数据输⼊数据输出数据说明3 25 28 190 0 3较⼩n15 12 15 16 18 19 34 35 16 15 12 14 36 35 34 310 0 15较⼤n1.1.4 PTA提交列表及说明有多道题⽬的,请分题⽬写好编程总结请按照如下要求说明提交列表,注意必须写明每个错误点,你是怎么解决的。
此项没写好,本题0分1.编译错误:第⼀次使⽤for循环嵌套做出来答案正确,后⾯尝试⽤数组做,有⼀个⼤括号没打上,出现错误1.2 题⽬21.2.1 数据处理数据表达:运⽤了整型变量N,n,h,i,a,sun数据处理:y运⽤了循环嵌套,在for循环中嵌套⼀个while语句,最后通过if语句判断进⾏输出函数参数:调⽤⾃定义函数求出每⼀位上的数字,再直接使⽤for循环求出sum1.2.2 实验代码截图1.2.3 造测试数据输⼊数据输出数据说明41634 8208 9474千位数的计算554748 92727 93084万位数的计算6548834⼗万位数的计算1.2.4 PTA提交列表及说明有多道题⽬的,请分题⽬写好编程总结请按照如下要求说明提交列表,注意必须写明每个错误点,你是怎么解决的。
C语言实验报告 实验四 参考答案
实验四循环结构程序设计2(参考答案)(1)编写程序sy4-1.c,输入n,计算并输出如下多项式的值:S n=1+1/2!+1/3!+1/4!+…+1/n!。
例如输入n为15时,输出1.718282。
算法分析:第一项可以看成1/1!,用循环控制累加n个分式,分式的分母是i!,分子固定为1。
参考答案:# include <stdio.h>void main(){double s=0,p=1;int i,n;scanf("%d",&n);for(i=1;i<=n;i++){p = p * i ; //计算分母i!s = s + 1 / p ; //累加}printf("s=%lf\n",s);}运行结果:(2)编写程序sy4-2.c,输入n,根据以下公式计算s:,例如当n=11时,结果为1.833333。
算法分析:该多项式的分母是累加。
参考答案:# include <stdio.h>void main(){double sn=0,s=0;int i,n;scanf("%d",&n);for(i=1;i<=n;i++){s = s + i ; //计算分母1~i的累加和sn = sn + 1 / s ;}printf("sn=%lf\n",sn);}运行结果:(3)编写程序sy4-3.c,计算3~n之间所有素数的平方根之和,要求:输入n,输出结果。
例如,输入n 的值是100,则输出结果是148.874270。
注意n应在2~100之间。
算法分析:穷举3~n之间的数找素数,若是素数则累加她的平方根。
参考答案:# include <stdio.h># include <math.h>void main(){int i,j,n,flag;double s=0;scanf("%d",&n);for(i=3;i<n;i++) //穷举3~n之间找素数{flag=1; //假设当前的i是素数,标志变量设为1for(j=2;j<i;j++) //穷举要判断是否是素数的i的除数,范围2~i-1if(i%j==0) //若i能被j整除,则不是素数{ flag=0; break; } //标志变量改为0,并终止循环if( flag == 1 )s = s + sqrt( i ); //若i是素数,则累加sqrt(i)}printf("s=%f\n",s);}运行结果:(4)编写程序sy4-4.c,根据以下公式求p的值,(m与n为两个正整数且m>n)。
高级语言程序设计A第4次作业
高级语言程序设计A第4次作业本次作业是本门课程本学期的第4次作业,注释如下:一、单项选择题(只有一个选项正确,共10道小题)1. 下列符号中,合法的C常量是(A) ‘\t’(B) 079(C) 3.5e2.1(D) 0xch正确答案:A解答参考:2. 以下所列的C语言常量中,错误的是。
(A) 0xFF(B) 1.2e0.5(C) 2L(D) '\72'正确答案:B解答参考:3. 能正确表示a和b同时为正或同时为负的逻辑表达式。
(A) (a>=0||b>=0)&&(a<0 ||b<0)(B) (a>=0 && b>=0)&&(a<0 && b<0)(C) (a+b>0) &&(a+b<=0)(D) a*b>0正确答案:D解答参考:4. 以下选项中,不能正确赋值的是___。
(A) char s[10];s="Hello";(B) char s[]={'H', 'e', 'l', 'l', 'o', '\0'};(C) char s[10]="Hello";(D) char *s="Hello\n";正确答案:A解答参考:5. 若有定义和语句:int a=10,b=20,*p=&a,**pp=&p;p=&b;pri ntf("%d %d\n",*p,**pp);,则输出结果是____。
(A) 10,20(B) 10,10(C) 20,10(D) 20,20正确答案:D解答参考:6. 以下对枚举类型名的定义中正确的是____。
(A) enum a={one,two,three};(B) enum b{one=9,two=-1,three};(C) enum c={"one","two","three"};(D) enum d{"one","two","three"};正确答案:B解答参考:7. 若有定义int a[] = {0 , 1 , 2 , 3 , 4 } , *p=a+1; 则表达式*++p 的值为。
C 第四次实验 专业实践报告
实验报告课程名称程序设计基础实验项目_实验仪器 vc6.0系别___ 光电专业测控技术与仪器班级/学号_学生姓名实验日期 ______成绩__ _指导教师北京信息科技大学计算机学院专业实践报告2.从键盘输入一个字符串,将其中的小写字母全部转换成为大写字母,然后输出到一个磁盘文件“test”中保存,输入的字符串以“!”结束。
程序及运行结果:#include <stdio.h>#include <stdlib.h>#include <string.h>int main(){FILE *fp;int i=0;char str[100];printf("请输入字符串,并且以感叹号!结束:\n"); if((fp=fopen("test.txt","w"))==NULL){printf("无法打开此文件!\n");exit(0);//退出程序}gets(str);while(str[i]!='!'){if(str[i]>='a'&&str[i]<='z')str[i]-=32;fputc(str[i],fp);i++;}fclose(fp);if((fp=fopen("test.txt","r"))==NULL){printf("File open falied!\n");exit(0);}printf("转换后的字符串是:\n");puts(fgets(str,strlen(str)+1,fp));fclose(fp);return 0;}。
C++语言程序设计实验报告 第四次实验
C++语言程序设计实验报告基础题一实验任务:设计并测试一个名为Rectangle的矩形类,其属性为矩形的左上角与右下角两个点的坐标,根据坐标能计算矩形的面积。
实验目的:根据两点坐标求出矩形的边长从而求出矩形的面积代码:#include<iostream.h>#include<math.h>class Rectangle{public:Rectangle(double,double,double,double);Rectangle();double Width();double Height();double Area();private:double x0,y0,x1,y1;};Rectangle::Rectangle(double a,double b,double c,double d){x0=a;y0=b;x1=c;y1=d;}Rectangle::Rectangle(){cout<<"输入矩形左下角坐标"<<endl;cin>>x0>>y0;cout<<"再输入矩形右上角坐标"<<endl;cin>>x1>>y1;}double Rectangle::Width(){return fabs(x1-x0);}double Rectangle::Height(){return fabs(y1-y0);}double Rectangle::Area(){return this->Width()*this->Height();}void main(){Rectangle test(12,37.7,56,99);cout<<"矩形长为:"<<test.Width()<<" "<<"矩形宽为:"<<test.Height()<<endl<<"矩形面积为:"<<test.Area()<<endl;}结果:基础题二实验任务:定义一个Circle类,有数据成员radius(半径),成员函数getArea(),计算圆的面积,构造一个Circle的对象进行测试。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
姓名:陈耀学号201510618425 第四次作业日期 2016-9-29
1.#include
void main()
{floata,b,c,t;
scanf("%f,%f,%f",a,b,c);
if(a>b) t=a;
else t=b;
if(t
2. #include
void main()
{
intm,w,x,y,z,n;
scanf("%d",&m);
if(m<10) printf("该数为%d位数,正序为%d,反序为%d",1,m,m);
else if(m<100) {w=m%10;x=m/10;n=w*10+x;
printf("该数为%d位数,正序为%d,反序为%d",2,m,n);}
else if(m<1000) {w=m%10;x=(m/10)%10;y=m/100;n=w*100+x*10+y;
printf("该数为%d位数,正序为%d,反序为%d",3,m,n);}
else if(m<10000)
{w=m%10;x=(m/10)%10;y=(m/100)%10;z=m/1000;n=w*1000+x*100+y*10+z;
printf("该数为%d位数,正序为%d,反序为%d",4,m,n);}
}
3.#include
void main()
{intq,w,e,r,t;
scanf("%d,%d,%d,%d",&q,&w,&e,&r);
if(q>w) {t=q;q=w;w=t;}
if(q>e) {t=q;q=e;e=t;}
if(q>r) {t=q;q=r;r=t;}
if(w>e) {t=w;w=e;e=t;}
if(w>r) {t=w;w=r;r=t;}
if(e>r) {t=e;e=r;r=t;}
printf("%d,%d,%d,%d",q,w,e,r);}
4.先说明要输入的数据,接着输入5个或6个数据,并且输入一个中间变量“t”,
运用if语句将5个数进行比较。具体处理为:先将第一个数a与b比较,如果
a>b,则将t赋值a,用t与其它几个数进行比较,最终将最大的数赋值于t,输
出t;如果a输出t。则这5个数或5个数的处理是输出最大的数。
5.n个数据的排序
先说明要输入的数据,接着输入n个数据(x1,x2,x3„xn),并且输入一个中
间变量“t”,运用if语句比较,先比较x1与x2,将它两个中大的值赋值于t,最
小的值赋值于x1,依次类推,x1最小,接着x2,x3„xn。则这n个数从小到大
排列输出。