//prog1.cpp
//设计一个程序,从键盘输入三个整数,按由小到大的顺序输出。
#include"stdio.h"
main()
{
int a[3],i,j,t;
for(i=0;i<3;i++)
{
scanf("%d",&a[i]);
}
for(i=0;i<9;i++) /*此处的i可以小于任意一个大于6的整数*/
{
for(j=0;j<2;j++)
{
if(a[j]>a[j+1])
t=a[j],a[j]=a[j+1],a[j+1]=t;
}
}
printf("The three data from small to big is:");
for(i=0;i<3;i++)
printf("%d ",a[i]);
}
//vc1
//prog2.cpp
//求1+3+5+...+95+97+99的和。
#include"stdio.h"
main()
{
int i,sum=0;
for(i=1;i<100;i=i+2)
sum+=i;
printf("1+3+5+....+99=%d\\n",sum);
}
//vc1
//prog3.cpp
//写一个函数,从键盘输入一个整数,如果该整数为素数,则输出“此整数为素数”,否则输出“整数非素数”。(注:要求从主函数输入整数)
#include"stdio.h"
main()
{
int i,j,k,l=2;
printf("输入一个大于3的整数:");
scanf("%d",&i);
for(j=2;j {
k=i%j;
if(k==0) break;
else l++;
}
if(l==k)
printf("这是个素数!!\\n");
else
printf("这不是素数!!\\n");
}
//vc2
//prog1.cpp
//从键盘输入10个整数,保存在一个数组中,将这10个数逆序输出,然后求这10个数的和然后输出。
#include"stdio.h"
main()
{
int a[10],i,sum=0;
printf("输入10个整数:");
for(i=0;i<10;i++)
scanf("%d",&a[i]);
for(i=9;i>=0;i--)
printf("%d ",a[i]);
for(i=0;i<10;i++)
sum+=a[i];
printf("The total is:%d\\n",sum);
}
//vc2
//prog2.cpp
//输入N个国家的英文名,要求按字母的先后顺序排列,并按照顺序输出。
#include #include void main() { char a[100][100]={0},b[100]={0}; int n,i,j; for(n=0;n<100;n++) { gets(a[n]); if(a[n][0]=='0') break; } for(i=1;i<=n;i++) for(j=0;j if(strcmp(a[j],a[j+1])) { strcpy(b,a[j]); strcpy(a[j],a[j+1]); strcpy(a[j+1],b); } } for(i=0;i } //vc2 //prog2.cpp //输入N个国家的英文名,要求按字母的先后顺序排列,并按照顺序输出。 #include #include void main() { char a[100][100]={0},b[100]={0}; int n,i,j; for(n=0;n<100;n++) { gets(a[n]); if(a[n][0]=='0') break; } for(i=1;i if(strcmp(a[j],a[j+1])>0) { strcpy(b,a[j]); strcpy(a[j],a[j+1]); strcpy(a[j+1],b); } } for(i=0;i } //vc2 //prog3.cpp /*某年级共有4个班,每班各有30名学生, 有6个科目的考试成绩,要求输出每门课程最高分的学生、 学号和姓名,并计算各班每个学生的平均成绩并输出。*/ #include #define cla 4 #define stu 30 #define sub 6 main() { int i,j,k,m,n,h; float a[cla][stu][sub],ave[cla][stu],t,max; for(i=0;i for(j=0;j t=0; for(k=0;k { printf("请输入第%d个班学号为%d的学生的第%d科的成绩\\n",i+1,j+1,k+1); scanf("%f",&a[i][j][k]); t=t+a[i][j][k]; } ave[i][j]=t/sub; } } for(k=0;k { max=0.0; for(i=0;i for(j=0;j if(a[i][j][k]>max) { max=a[i][j][k]; m=i,n=j,h=k; } } } printf("第%d科成绩的最高分是第%d个班学号为%d的人,成绩为%f",h+1,m+1,n+1,max); } for(i=0;i for(j=0;j printf("第%d班学号为%d的学生的平均分为%f",i+1,j+1,ave[i][j]); } } } //vc3 //prog1.cpp //求从键盘上输入的10个数据(实数)中的最大值,并求和。 #include main() { int a[10],i,m=0,s=0; for(i=0;i<10;i++) { scanf("%d",&a[i]); if(m m=a[i]; s+=a[i]; } printf("最大值是%d\\n总和是%d\\n",m,s); } //vc3 //prog2.cpp //给出三角形的三边A,B,C,求三角形的面积。(应先判断三边是否构成三角形) #include #include int check(float a,float b,float c) { int j; if((a+b>c)&&(a-b else j=0; return j; } main() { float a,b,c; float s,p; scanf("%f%f%f",&a,&b,&c); if(check(a,b,c)) { p=(a+b+c)/2; s=sqrt(p*(p-a)*(p-b)*(p-c)); printf("%f\\n",s); } else printf("不能构成三角形"); } //vc3 //prog3.cpp //编写程序求一个字符串的第n个字符开始、长度为m的子串 #include main() { char a[100],b[100]={'0'}; int m,n,i,j; gets(a); printf("请输入首位数,位数\\n"); scanf("%d%d",&m,&n); for(i=m-1,j=0;i puts(b); } //vc4 //prog1.cpp //猜数游戏,假如设定一个整数m=123,然后让其他人从键盘上猜该数字,如果猜对,输出“RUGHT”,如果猜错,则输出“WRONG”,并且指出设定的数字比输入的数字大还是小 #include main() { int m=123,a; while(1) { printf("请输入您的猜测:\\n"); scanf("%d",&a); if(a==m) { printf("RIGHT"); break; } else { printf("WRONG"); if(a>m) printf("\\n该数字比您输入的小!"); else printf("\\n该数字比您输入的大!"); } } } //vc4 //prog2.cpp //编写程序,用于统计从键盘输入的字符串中的元音字母的个数。 #include #include main() { char a[100]; int i,s=0; gets(a); for(i=0;i s++; } printf("%d",s); } //vc4 //prog3.cpp //编写程序求1-100中所有同构数的个数(一个自然数的平方的末几位与该数相同时,该数就为同构数,如25^2=625) #include main() { int i,j=0; for(i=1;i<=100;i++) { if((i*i)%1000%100==i||(i*i)%1000%100%10==i) {printf("%d ",i); j++;} } printf("\\n%d",j); } //vc5 //prog1.cpp //从键盘接受一个整数X,判断X是否为含有因子7的整数,如是,则输出“YES”,否则输出“NO” #include main() { int x; scanf("%d",&x); if(x%7||x==0) printf("NO"); else printf("YES"); } //vc5 //prog2.cpp //编写一个密码检测的程序,在执行程序时,要求用户输入密码(标准密码自己预先设定),然后通过字符串比较函数比较输入密码和标准密码是否相等,若当等,则显示“口令正确”,并转去执行后续程序,若不想等,重新输入,3次都不相等则终止程序的执行。要求自己编写一个字符串比较函数,而不使用系统的strcmp函数。 #include #include #include int cmp(char a[],char b[]) { int i,j,n; i=strlen(a)>strlen(b)?strlen(a):strlen(b); for(n=0;n { if(a[n]==b[n]) j=1; else j=0; } return j; } main() { char a[100],b[100]; int i; printf("请设定密码:\\n"); gets(a); system("CLS"); system("PAUSE"); for(i=0;i<3;i++) { printf("请输入密码:\\n"); gets(b); if(cmp(a,b)) { printf("口令正确!"); break; } else { printf("口令错误!您还有%d次机会!",2-i); } } } //vc5 //prog3.cpp //编写实现求1!+2!+...+10!. #include int fun(int n) { long i,s=1; for(i=1;i<=n;i++) s*=i; return s; } main() { int i,n=0; for(i=1;i<=10;i++) n+=fun(i); printf("1!+2!+...+10!=%d",n); } //vc6 //prog1.cpp //编写程序,能对一给定的3*4的矩阵,求出其中的最大元素之及所在的行列号。 #include main() { int a[3][4]={{23,4,15,98},{122,-3441,29,33},{123,1,-99,21}};//这里自己修改 int i,j,s=a[0][0],m=0,n=0; for(i=0;i<3;i++) { for(j=0;j<4;j++) printf("%d\",a[i][j]); printf("\\n"); } for(i=0;i<3;i++) { for(j=0;j<4;j++) { if(s s=a[i][j],m=i,n=j; } } printf("最大元素是%d,位于第%d行第%d列",s,m+1,n+1); } //vc6 //prog2.cpp //求2000中含有5的因子的个数。 #include main() { int i,j,k,m,s=0; for(i=1;i<=2000;i++) { if(2000%i==0) { m=i; for(j=0;j<3;j++) { if(m%10==5) {s++;break;} else m=m/10; } } } printf("%d",s); } //vc6 //prog3.cpp //求任意一个小于65535的正整数的逆序数,并判断该数是否为回文数。 #include #include main() { char a[100],b[100]={'0'}; int i,m; printf("请输入一个小于65535的正整数\\n"); gets(a); m=strlen(a); for(i=0;i puts(b); if(strcmp(a,b)==0) printf("该数是回文数\\n"); else printf("该数不是回文数\\n"); } //vc7 //prog1.cpp //给出一个不多于5位的正整数,要求:求出其位数,分别打印每一位数字,最后按逆序打印出这个正整数 #include #include main() { char a[100],b[100]={'0'}; int i,m; printf("请输入一个小于5位的正整数\\n"); gets(a); m=strlen(a); for(i=0;i printf("%c ",a[i]); b[m-i-1]=a[i]; } puts(b); } //vc7 //prog2.cpp //求一个4行4列矩阵主对角线元素之和。 #include main() { int i,j,m=0,a[4][4]={1,23,7,-12,56,1,12,-88,34,177,1,46,14,56,-,1}; for(i=0;i<4;i++) { for(j=0;j<4;j++) { printf("%d\",a[i][j]); if(i==j) m+=a[i][j]; } printf("\\n"); } printf("主对角线元素之和是%d\\n",m); } //vc7 //prog3.cpp //编写一个程序,判断从键盘输入的两个字符串是否相同,若相同则输出“字符串相同”,否则输出“字符串不同”。 #include #include main() { char a[100],b[100]; printf("请输入字符串1:\\n"); gets(a); printf("请输入字符串2:\\n"); gets(b); if(strcmp(a,b)==0) printf("字符串相同!"); else printf("字符串不同!"); } //vc8 //prog1.cpp //输出100-200之间,能被3整除,但是不能被7整除的数。 #include main() { int i; for(i=100;i<=200;i++) if(i%3==0&&i%7!=0) printf("%d\\n",i); } //vc8 //prog2.cpp //将一个月份数字转换成月份的英文名称. #include main() { int i; printf("请输入月份(1-12):\\n"); scanf("%d",&i); switch(i) { case 1:printf("January\\n");break; case 2:printf("February\\n");break; case 3:printf("March\\n");break; case 4:printf("April\\n");break; case 5:printf("May\\n");break; case 6:printf("June\\n");break; case 7:printf("July\\n");break; case 8:printf("August\\n");break; case 9:printf("September\\n");break; case 10:printf("Octobery\\n");break; case 11:printf("November\\n");break; case 12:printf("December\\n");break; default:printf("error!\\n");break; } } //vc8 //prog3.cpp //编写一程序,用简单选择排序实现对五个整数的排序(从小到大),排序的思路:首先从n个整数中选出值最大的,将它交换到第一个元素位置,再从剩余的n-1个整数中选出值最大的整数,将它交换到第二个元素的位置,重复上述操作直到排序成功. #include main() { int i,j,temp1,temp2,a[5]={542,-14,90,-18,83}; printf("排序之前的数组为: "); for(i=0;i<5;i++) printf("%d ",a[i]); for(i=0;i<5;i++) { temp1=a[i]; for(j=i;j<5;j++) { if(temp1>a[j]) { temp1=a[j]; a[j]=a[i]; a[i]=temp1; } } } printf("\\n排序后的数组为: "); for(i=0;i<5;i++) printf("%d ",a[i]); } //vc9 //prog1.cpp //编写一个程序,实现从键盘输入一组数据,求该组整数的平均值,并将大于平均值的整数输出. #include main() { int a[100],i,sum=0,n; double avg; printf("请输入您要输入的数据个数,按Enter结束\\n"); scanf("%d",&n); printf("请输入数据:\\n"); for(i=0;i scanf("%d",&a[i]); sum+=a[i]; } avg=sum/n; printf("该组数据的平均值是:%6.2f\\n",avg); for(i=0;i if(a[i]>avg) printf("%d\",a[i]); } } //vc9 //prog2.cpp //编写程序,输出形状为直角三角形的九九乘法表. #include main() { int i,j; for(i=1;i<=9;i++) { for(j=1;j<=i;j++) printf("%d*%d=%d ",j,i,i*j); printf("\\n"); } } //vc9 //prog3.cpp //编写一个程序,判断某字符串在主串中出现的次数,字符串及主串均从键盘输入,例如主串为"asdas as d as字符串为"as则出现4次. #include #include main() { char a[100],s[100]; int i,j,flag,sum=0; printf("请输入主串\\n"); gets(a); printf("请输入子串\\n"); gets(s); for(i=0;i for(j=0;j if(s[j]==a[i+j]) flag++; } if(flag==strlen(s)) sum++; } printf("%d",sum); } //vc10 //prog1.cpp //从键盘输入一学生的成绩,判断学生成绩等级,如果成绩在90-100,等级为A,成绩在80-,成绩为B,成绩在70-79,等级为C,成绩在60-69,等级为E,成绩小于60,等级为E. #include main() { int i; printf("请输入学生成绩(0-100):\\n"); scanf("%d",&i); if(i>=100||i<=0) printf("ERROR!\\n"); else { switch(i/10) { case 9:printf("A\\n");break; case 8:printf("B\\n");break; case 7:printf("C\\n");break; case 6:printf("D\\n");break; default:printf("E\\n");break; } } } //vc10 //prog2.cpp //输出100-1000间的全部素数; #include main() { int i,j,s; for(i=100;i<=1000;i++) { for(j=2;j if(i%j==0) break; if(j==i/2) printf("%d ",i); } } //vc10 //prog3.cpp //编写程序,求出从键盘输入的字符串的长度(不能使用strlen()函数,要求用指针的知识.) #include #include int len(char a[]) { int i; char *p=a; for(i=0;i<10000;i++,*p++) { if(*p=='\\0') break; } return i; } void main() { char a[1000]; gets(a); printf("字符串长度为%d",len(a)); } //vc11 //prog1.cpp //在主函数中从键盘输入若干个整数放入数组中,用0结束输入,并放在最后一个元素中,下列程序中,fun函数的功能是:计算数组元素中值为正整数的平均值(不含0), //例如:数组中的元素中的值依次为39,-47,21,2,-8,15,9;则程序的运行结果为19.250000.请改编fun函数,使他能得出正确的结果. #include #include double fun (int x[]) { int i,j=0; double s=0; for(i=0;i<100;i++) { if(x[i]>0) { s+=x[i]; j++; } } return s/j; } main() { int x[1000],int i=0; printf("\\nPlease enter some data (end with 0): "); do { scanf("%d",&x[i]);}while(x[i++]!=0); printf("%f\\n",fun(x)); } //vc11 //prog2.cpp //编程,将一个数字字符串转换成一个整数(不得调用c语言提供的将字符串转换为整数的函数.)例如,若输入字符串"-1234则函数把它转换成整数值-1234. #include #include int change(char a) { int i; switch(a) { case '0':i=0;break; case '1':i=1;break; case '2':i=2;break; case '3':i=3;break; case '4':i=4;break; case '5':i=5;break; case '6':i=6;break; case '7':i=7;break; case '8':i=8;break; case '9':i=9;break; } return i; } int fun(char x[]) { int i,j,k,n,s,m=0; if(x[0]=='-') {i=1;j=-1;k=strlen(x);} else {i=0;j=1;k=strlen(x);} for(i;i s=change(x[i]); for(n=0;n m+=s; } return m*j; } main() { char a[100]; gets(a); printf("\\n%d",fun(a)); } } //vc11 //prog3.cpp //百马驮担问题,有100匹马,驮100担货,大马驮3担,中马驮2担,两匹小马驮1担,编程计算有多少种驮法. #include void main() { int b,m,l,i; for(b=0;b<=33;b++) for(m=0;m<=50;m++) { l=100-b-m; If((b*3+m*2+l/2==100)&&(l%2==0)) printf("大马为%d匹,中马为=%d匹,小马为=%d匹,总驮担%d担\\n",b,m,l,b*3+m*2+l/2); } } //vc12 //prog1.cpp //编写fun函数,它的功能是:根据以下公式求P的值,结果由函数值带回,m与n为两个正整数且要求m>n.P=m!/n!(m-n)! #include #include float fun(int m,int n) { int i; float s1,s2,s3; s1=s2=s3=1; if(m>n) { for(i=1;i<=m;i++) s1*=i; for(i=1;i<=n;i++) s2*=i; for(i=1;i<=m-n;i++) s3*=i; } return s1/(s2*s3); } main() { printf("p=%f\\n",fun(12,8)); } //vc12 //prog2.cpp //求出1到1000之内能被7或11整除,但不能同时被7和11整除的所有整数,并求这些数的个数. #include main() { int i,s; for(i=1,s=0;i<=1000;i++) if((i%7==0||i%11==0)&&!(i%7==0&&i%11==0)) { printf("%d ",i); s++; } printf("\\n总数为%d",s); } //vc12 //prog3.cpp //编程求一个3*3矩阵对角线元素之和 #include main() { int a[3][3],i,j; printf("请输入一个3*3的矩阵\\n"); for(i=0;i<3;i++) { for(j=0;j<3;j++) scanf("%d",&a[i][j]); } for(i=0;i<3;i++) { for(j=0;j<3;j++) printf("%d\",a[i][j]); printf("\\n"); } printf("主对角线元素之和是:%d\\n",a[0][0]+a[1][1]+a[2][2]); printf("副对角线元素之和是:%d\\n",a[0][2]+a[1][1]+a[2][0]); } //vc13 //prog1.cpp //下列程序中,函数fun的功能是:求以下分数序列的前n项之和,1/2,2/3,3/5,5/8,8/13,13/21,...和值通过函数值返回main函数. #include double fun(int n) { int i; double s=0,j=1,k=2,temp; for(i=0;i s+=j/k; temp=j; j=k; k=k+temp; } return s; } main() { int n; printf("Enter n:"); scanf("%d",&n); printf("\\nThe result:%f\\n",fun(n)); } //vc13 //prog2.cpp //编写程序,能对输入一行字符,统计其中分别有多少个单词和空格,比如输入:"How are you"有3个单词和2个空格. #include #include main() { int i,j; char a[100]; gets(a); for(i=0,j=0;i if(a[i]==' ') j++; } printf("\\n您输入的字符有%d个空格,%d个单词\\n",j,j+1); } //vc13 //prog3.cpp //编写程序,求1+3+5+7+...+195+197+199的和 #include main() { int i,s=0; for(i=1;i<200;i+=2) s+=i; printf("1+3+5+7+...+195+197+199=%d",s); } //vc14 //prog1.cpp //已知一个数列从第0项开始的前三项分别为0,0,1,以后的各项都是其相邻的前3项之和,下列程序中, //函数fun的功能是:计算并输出该数列前N项的平方根之和sum,n的值通过形参传入. #include #include #include double fun(int n) { int i,a[1000]; a[0]=0;a[1]=0;a[2]=1; double sum=1; for(i=3;i a[i]=a[i-3]+a[i-2]+a[i-1]; sum+=sqrt(a[i]); } return sum; } main() { int n; printf("Input N="); scanf("%d",&n); printf("%f\\n",fun(n)); } //vc14 //prog2.cpp //编写程序,用简单选择方法对输入的10个整数排序(从大到小). #include main() { int i,j,a[10],pos,t; printf("请输入10个整数:"); for(i=0;i<10;i++) scanf("%d",&a[i]); for(i=0;i<9;i++) { pos=i; for(j=i+1;j<10;j++) if(a[j] pos=j; if(pos!=i) { t=a[i]; a[i]=a[pos]; a[pos]=t; } } for(i=0;i<10;i++) printf(" %d",a[i]); } //vc14 //prog3.cpp //编写程序,能实现输入10个数,将其中的最大值以及平均数输出 #include main() { int i; float sum=0,m,n; printf("请输入10个数:\\n"); for(i=0;i<10;i++) { scanf("%f",&m); if(i==0) n=m; sum+=m; if(n } printf("最大值是%f,平均值是%f\\n",n,sum/10); } //vc15 //prog1.cpp //下面程序中函数fun的功能是:根据整形参数m,计算如下公式的值,y=1+1/2!+1/3!+1/4!+...+1/m!,例如,若m=6,则应输出1.718056 #include #include double fun(int m) { long float y=0.0; int i,j,n; for(j=1;j<=m;j++) { n=1; for(i=1;i<=j;i++) n*=i; y+=1.0/n; } return(y); } main() { int n; printf("Enter n:"); scanf("%d",&n); printf("\\nThe result is %lf\\n",fun(n)); } //vc15 //prog2.cpp //编写程序,求1!+2!+3!+...+9!+10!的和. #include main() { int i,j,sum=0,temp; for(i=1;i<=10;i++) { temp=1; for(j=1;j<=i;j++) temp*=j; sum+=temp; } printf("%d",sum); } //vc15 //prog3.cpp //某幼儿园只收2~6岁的小孩,2~3岁编入小班,4岁编入中班,5~6岁编入大班,编写程序实现没输入一个年龄,输出应编入什么班. #include main() { int i; printf("请输入您的小孩的年龄:\\n"); scanf("%d",&i); if(i>6||i<2) printf("非适龄儿童,该院不予接受!\\n"); else { switch (i) { case 2: case 3:printf("您的小孩应编入小班!\\n");break; case 4:printf("您的小孩应编入中班!\\n");break; default:printf("您的小孩应编入大班!\\n");break; } } } //vc16 //prog1.cpp //运用函数fun,用下面的公式求n的近似值,知道最后一项的绝对值小于制定的数(参数num)为止π/4=1-1/3+1/5-1/7+...例如,运行程序后,输入0.0001,则程序输出3.1414 #include #include float fun(float num) { int flag=1; float sum=0,n=1; while(1) { if((1/n) sum+=flag/n; n+=2; flag*=-1; } return sum*4; } void main() { float n1,n2; printf("Enter a float number:"); scanf("%f",&n1); n2=fun(n1); printf("%6.4f",n2); } //vc16 //prog2.cpp //读入一个整数m(5≤m≤20),调用函数rnd获得m个随机数,将这m个随机整数从小到大排序. #include #include main() { int i,j,temp,m,a[20]; scanf("%d",&m); for(i=0;i for(i=0;i for(j=0;j { temp=a[j+1]; a[j+1]=a[j]; a[j]=temp; } } for(i=0;i } //vc16 //prog3.cpp //如果一个数等于其所有真因子(不含自身)之和,则该数为完数,例如6的因子有1,2,3,且6=1+2+3.求2~1000中所有的完数. #include main() { int i,j,k; for(i=2;i<=1000;i++) { k=0; for(j=1;j { if(i%j==0) k+=j; } if(k==i) printf("%d ",i); } } //vc17 //prog1.cpp //下列程序中,函数fun的功能是:求三个数的最小公倍数.例如输入15,11,2,则输出结果330.试编写函数fun,使它能得到正确结果. #include fun(int x,int y,int z) { int i; for(i=1;;i++) if(i%x==0&&i%y==0&&i%z==0) break; return i; } main() { int x1,x2,x3,j; printf("Input x1,x2,x3:"); scanf("%d%d%d",&x1,&x2,&x3); printf("x1=%d,x2=%d,x3=%d\\n",x1,x2,x3); j=fun(x1,x2,x3); printf("The minimal common multiple is:%d\\n",j); } //vc17 //prog2.cpp //求1000以内的亲密数对.亲密数对定义为:若正整数a的所有因子(不含a)之和为b,b的所有因子(不含b)之和为a,且a≠b,则称a与b为亲密数对. #include int fun(int n) { int i,sum; sum=1; for(i=2;i<=n/2;i++) if (n%i==0) sum+=i; return sum; } void main() { int a,b,c; for (a=2;a<=1000;a++) { b=fun(a); c=fun(b); if ((c==a)&&(a!=b)) printf("%5d和%5d是亲密数对.\\n",a,b); } } //vc17 //prog3.cpp //若用0~9之间不同的3个数构成一个三位数,编程统计出共有多少个这种不同的三位数. #include main() { int i,s=0; for(i=100;i<999;i++) if((i%10!=(i/10)%10)&&(i%10!=i/100)&&((i/10)%10!=i/100)) s++; printf("%d\\n",s); } //vc18 //prog1.cpp //请编一个函数int fun(int pm),它的功能是:判断pm是否是素数,若pm是素数,返回1,若不是素数,返回0.pm的值由主函数从键盘读入.请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句. #include #include #include int fun(int a) { int i; for(i=2;i if(a%i==0) return 0; if(i>=a/2) return 1; } main() { int x; printf("\\nPlease enter a number:"); scanf("%d",&x); printf("%d\\n",fun(x)); } //vc18 //prog2.cpp //编程求W=1+21+22+23+...+210 #include #include main() { int sum=1,i; for(i=1;i<=10;i++) sum+=pow(2,i); printf("%d",sum); } //vc18 //prog3.cpp //若n使2n-1 为素数,则n为梅森尼数.求[1,21]范围内有多少个梅森尼数?最大的梅森尼数. #include #include main() { int i,k=0,m,n,a; for(n=1;n<=21;n++) { m=pow(2,n-1); for(i=2;i<=m/2;i++) if(m%i==0) break; if(i>m/2&&n!=1) { k++; a=n; } } printf("一共有%d个梅森尼数\\n最大的梅尼森数是%d",k,a); } //vc19 //prog1.cpp //下列程序中,函数fun的功能是:求K!(K<13),所求阶乘的值作为函数值返回,例:若K=10,则应输出3628800.轻编写fun函数,使它能得出正确的结果 #include #include long fun(int k) { int i; long s=1; for(i=1;i<=k;i++) s*=i; return s; } main() { int k=10; printf("%d!=%ld\\n",k,fun(k)); } //vc19 //prog2.cpp //编程求2~100中所有的亲密素数对的个数.亲密素数:如果x为素数,则x+2也为素数. #include int fun(int k) { int i,s=1; for(i=2;i<=k/2;i++) { if(k%i==0) s=0; } return s; } main() { int i; for(i=2;i<=98;i++) { if((fun(i)==1)&&(fun(i+2)==1)) printf("%d和%d是亲密素数对.\\n",i,i+2); } } //vc19 //prog3.cpp //编程求:S=1+(1+3)+(1+3+5)+...+(1+3+5+...+(2n-1)) #include main() { int i,j,s1,s2=0,n; printf("请输入计算上限:\\n"); scanf("%d",&n); for(i=1;i<=n;i++) { s1=0; for(j=1;j<=i;j++) s1+=(2*j-1); s2+=s1; } printf("形如S=1+(1+3)+(1+3+5)+...+(1+3+5+...+(2n-1))当n=%d时结果为%d\\n",n,s2); } //vc20 //prog1.cpp //编程,计算并输出下列级数和:S=1/(1*2)+1/(2*3)+...+1/(n*(n+1)),例如,当n=10时,函数值为0.909091. #include fun(int n) { int s; s=n*(n+1); return s; } main() { int n,i; float s=0.0; printf("Please enter n="); scanf("%d",&n); for(i=1;i<=n;i++) s=s+1.0/fun(i); printf("S=%f\\n",s); } //vc20 //prog2.cpp //从键盘输入10个整数,对其进行排序(从小到大) #include void main() { int a[10],i,j,temp; printf("请输入10个整形数据:\\n"); for(i=0;i<10;i++) scanf("%d",&a[i]); for(i=1;i<10;i++) { for(j=0;j<10-i;j++) if(a[j]>a[j+1]) { temp=a[j]; a[j]=a[j+1]; a[j+1]=temp; } } for(i=0;i<10;i++) printf("%d ",a[i]); } //vc20 //prog3.cpp //输入一元二次方程ax2+bx+c=0的系数a,b,c,求出所有可能的根. #include #include check(float a,float b,float c) { if((b*b-4*a*c)<1e-6) return 0; else return 1; } main() { float a,b,c,s1,s2; scanf("%f%f%f",&a,&b,&c); if(a==0) printf("s=%f\\n",-1*c/b); else if(check(a,b,c)==0) printf("S1=%f+%f-I,S2=%f-%f-I\\n",(-1*b)/(2*a),sqrt(-1*(b*b-4*a*c))/(2*a),(-1*b)/(2*a),sqrt(-1*(b*b-4*a*c))/(2*a)); else printf("S1=%f,S2=%f",(-1.0*b+sqrt(b*b-4*a*c))/(2*a),(-1.0*b-sqrt(b*b-4*a*c))/(2*a)); }下载本文