#include \int main(){ int i=0; int a1=0; //首项 int t=0; //公差
int n=0; //求和项数
double sum=0;//数列的前n项之和
int item=0;
printf(\请输入首项、公差和求和项数n,用空格或回车分隔:\ scanf(\ item=a1; for(i=1;i<=n;i++){
sum=sum+item; item=item+t; }
printf(\首项为%d,公差为%d的等差数列前%d项之和为%E\\n\ return 0; }
16.编程输出1!+2!+3!...的前10项和。 方法之一
#include \int main(){
int i=0,n=1;
double fact=1;//求和的每一项(阶乘)
double sum=0;//前10项之和 while(n<=10){ sum=sum+ fact;
n++;
fact=fact*n;
}
printf(\的前10项和为%E\\n\ return 0; }
方法之二(利用循环嵌套)
#include \int main(){
int i=0,n=1;
double fact=1;//求和的每一项(阶乘)
double sum=0;//前10项之和
while(n<=10){ fact=1;
i=1;
while(i<=n){ // n的阶乘
fact=fact*i; } i++;
sum=sum+ fact; n++;
}
printf(\的前10项和为%E\\n\ return 0;
}
17.编写程序输出1~100之间不能被2除尽或不能被3除尽的数,并计算输出它们的和。
#include \int main(){
int i=0;
double sum=0,t=0; //满足条件的各项之和 for(i=0;i<=100;i++){ if( (i%2!=0) ||(i%3!=0)){
}
printf(\ \sum=sum+i;
}
printf(\满足条件的各项之和为%E\\n\
return 0;
}
18.编写程序输出如下排列格式的字符。
A BB CCC DDDD EEEEE
#include \int main(){
int i=0,j=0;
char ch='A';
for(i=1;i<=5;i++){ for(j=1;j<=i;j++){ printf(\ }
printf(\ ch=ch+1; }
return 0; }
19.改进例子6的猜数字游戏,使得具有如下功能:
? 当猜测次数操作10次时,禁止用户继续猜测(用break结束循环),并输出“你要好好想一想呀,要动脑呀!” ? 当猜测次数少于5次时,程序输出“你好聪明呀!”
#include
int randomNumber; //随机数 int guess; //用户的猜测
int count = 0; //记录用户的猜测次数 int ok = 0;
srand(time(NULL)); //用当前时间做随机种子
printf(\给你一个1至100之间的数,请猜测:\\n\ randomNumber = rand()0+1; ok = scanf(\ if(ok==0){ printf(\发生输入错误,程序退出\ exit(0); }
count++;
while(guess != randomNumber) { count++; if(guess > randomNumber){ printf(\猜大了,请再猜:\\n\ } else if(guess < randomNumber){ printf(\猜小了,请再猜:\\n\ }
if(count>10){ //判断是否超过10次 break; } ok =scanf(\ if(ok==0){ printf(\发生输入错误,程序退出\ exit(0); } }
//判断次数,决定如何输出 if(count<5){
printf(\您猜对了,共猜了%d次,这个数就是:%d\\n\ printf(\你好聪明呀!\ }
else if(count<=10)
printf(\您猜对了,共猜了%d次,这个数就是:%d\\n\ else printf(\你要好好想一想呀,要动脑呀!\ return 0; }
20.数学上有一个计算?的公式:
?1111?1?????
43579编写程序,计算并输出?的近似值,小数点保留12位。 #include
int main(){ double sum=0,fenzi=1,fenmu=1,dx=1;
while(fabs(dx)>1E-6){ //更换为1E-10可提高精度,但作者的机器稍有延迟出结果 sum=sum+dx; fenzi=-fenzi; fenmu=fenmu+2; dx= fenzi/fenmu; }
printf(\
return 0;
}
21.编写程序,输出100内具有10个以上(含10个)因子的整数,并输出它的全部因子(例如,60一共有1,2,3,4,5,6,10,12,15,20,30,60十二个因子)。
#include
int count=0;//因子个数 for(j=10;j<=100;j++){ count=0; for(i=1;i<=j;i++){ if(j%i==0){ count++; } } if(count>=10){
printf(\有\ for(i=1;i<=j;i++){ if (j%i==0) printf(\ } printf(\共%d个因子 \\n\ } }
return 0; }