博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
第四次作业
阅读量:5051 次
发布时间:2019-06-12

本文共 5070 字,大约阅读时间需要 16 分钟。

1.编写程序,输入一个整数x,按照下式输出对应的y值。

      

# include 
int main (){ int saber,lancer,sum=0; printf("输入整数\n"); scanf("%d",&a); if(saber<=0) { printf("输入错误\n"); } if (saber%2==0) { for(lancer=2;lancer<=saber;lancer=lancer+2) { sum=sum+lancer; } { printf("输出为%d\n",sum); } } else if(saber%2!=0) { for(lancer=1;lancer<=saber;lancer=lancer+2) { sum=sum+lancer; } { printf("输出为%lancer\n",sum); } } return 0;}

 

 注:声明变量的值,

2.编程求11/2+1/31/4+1/5-  +1/991/100,结果保留两位小数。

# include 
int main(){ int saber; float lancer,sum=0; for (saber=1;saber<=100;saber++) { if (saber%2!=0) { lancer=1/(float)saber; } else { lancer=-1/(float)saber; } sum=sum+lancer; } printf("和为%.2f",sum); return 0;}

 注:分母不能为零,for循环后加大括号;

 

3.输出2000年至3000年所有闰年的年号,每输出10个年号换一行。最后统计一共有多少个闰年。

# include
int main(){ int saber,lancer=0; for (saber=1900;saber<=3000;saber++) { if((saber%4==0&&saber%100!=0)||(saber%400==0)) { { printf(" %d",saber); lancer++; } if(lancer%10==0) { printf("\n"); } } } printf("\n"); printf("共有%d",lancer); return 0; }

注意:十个一换行,在判断年之后并且最好嵌套在一起;

4.输入一个实数x和一个整数m,计算xm,不允许调用pow()函数。

 

 注意:整形和实数的区别,加分号,

#include 
int main(){ int a,b,d; float c,sum,sun=1.0; printf("输入一个实数一个整数\n"); scanf("%f%d",&c,&a); if(a==0&&c!=0) { printf("输出为1\n"); } else if(c==0&&(a!=0||a==0)) { printf("输出为0\n"); } else if(a>0) { for (b=1,sum=1.0;b<=a;b++) { sum=sum*c; } printf ("输出为%f\n",sum); } else if(a<0) { d=-1*a; for (b=1;b<=d;b++) { sun=(sun*c); } sum=1/sun; printf ("输出为%f\n",sum); } return 0;}

 

 

5.输入一串字符,分别统计其中字母、空格、数字和其他字符的个数。

# include
int main(){ int caster=0,lancer=0,archer=0,rider=0; char saber; printf("输入一串字符判断\n"); while(1) { scanf("%c",&saber); if ((saber>='A'&&saber<='Z')||(saber>='a'&&saber<='z')) { caster++; } else if(saber>='0'&&saber<='9') { lancer++; } else if(saber==' ') { archer++; } else if(saber!='\n') { rider++; } if(saber=='\n') { break; } } printf("字母有%d个,数字有%d个,空格有%d个,其他有%d个\n",caster,lancer,archer,rider); return 0;}

 

 注:在字符型中回车也是字符,在字符A与z间有其他字符;

6.输入一批数(正数和负数),输入0结束,分别计算其中正数的平均值和负数的平均值,

# include 
int main (){ int saber,archer=0,Lancer=0,caster=0,rider=0; float sum,sun; while (1) { printf("输入\n"); scanf("%d",&saber); if(saber/1>0) { archer=archer+saber; ++rider; } else if(saber/1<0) { caster=caster+saber; ++Lancer; } if(saber==0) break; } if(rider==0) { rider=1; } if(Lancer==0) { Lancer=1; } sum=(float)archer/rider; sun=(float)caster/Lancer; printf("正数平均%f负数平均%f",sum,sun); return 0;}

 

 注:分母不能为零,运行注意结束加break;

7.输出1000以内的所有素数,每行10个,最后输出一共有多少个素数。(每列对齐)

# include 
int main(){ int saber,archer,lancer=0,flag; for (saber=2;saber<=1000;saber++) { flag=0; for(archer=2;archer<=saber-1;archer++) { if (saber%archer==0) { flag=1; break; } } if (flag==0) { { printf (" %03d",saber); lancer++; } if (lancer%10==0) { printf("\n"); } } } printf("\n"); printf("一共有%d",lancer); return 0; }

 注:数字对齐可以在d前面补0;在嵌套循环时注意声明变量的位置;

8.打印下列图形

# include 
int main(){ int saber,archer,lancer,caster; for(saber=1;saber<=5;saber++) { for(archer=1;archer<=saber;archer++) { printf(" "); } for(archer=1,lancer=10;archer<=lancer-2*saber+1;archer++) { printf("*"); } printf ("\n") ; } return 0;}

 注:寻找规律,注意对齐;

     知识点总结:

1.  for循环为for(表达式1;表达式2;表达式3)表达式中用逗号分开,while与for相似只是while后只有表达式2其他两个分别在其内外,而do....while中while后必须加入分号

for适合已知的循环就是知道循环执行的次数,而while与do....while适合不只带次数的循环,三种循环必须注意都要声明变量,

2.    break为跳出此循环,continue为不执行此次循环,

3.   累加型初始值为0,累乘和累除初始值为1;

 

实验总结:

遇到无法输出时寻找输出变量是否正确,注意变通,在分母为零时在最后更改变量的值,

在字符型中有时忘记在%c前加入空格,字符型为单引号;

转载于:https://www.cnblogs.com/saber114567/p/5998007.html

你可能感兴趣的文章
吴裕雄 python 机器学习——数据预处理嵌入式特征选择
查看>>
Centos6.4安装JDK
查看>>
201521123069 《Java程序设计》 第4周学习总结
查看>>
线性表的顺序存储——线性表的本质和操作
查看>>
【linux】重置fedora root密码
查看>>
pig自定义UDF
查看>>
输入名字显示其生日,没有则让输入生日,做记录
查看>>
Kubernetes 运维学习笔记
查看>>
并查集 经典 畅通工程
查看>>
Spark MLlib 之 Naive Bayes
查看>>
php修改SESSION的有效生存时间
查看>>
spring security 11种过滤器介绍
查看>>
Hibernate一对多、多对一关联
查看>>
一、记录Git使用中遇到的问题及解决方法
查看>>
学习网址
查看>>
前端表格插件datatables
查看>>
内部类
查看>>
树链剖分入门
查看>>
图解算法时间复杂度
查看>>
UI_搭建MVC
查看>>