c语言基础题(上机运行)[教材]
c语言基础题(上机运行)
1!+2!+3!+„„n~
#include"stdio.h" main()
{
int a=1,b=1,c=0,n;
printf("请输入n的值:");
scanf("%d",&n);
for(a;a<=n;a++)
{ b=b*a;
c=b+c;
}
printf("1!+2!+„„%d!=%d\n",n,c);
}
-----------------------------------------------------
1+1,2+1,3+...+1,n(直到1,n,0.05)
#include"stdio.h" main()
{
float n;
float sum;
n=1,sum=0;
while((1/n)>0.05)
{
sum=sum+1/n;
n=n+1;
}
printf("%d\n",n-1);
printf("sum=%f\n",sum);
}
------------------------------------------------------
1+1,2+1,3+1,4+1,5+„„+1,n #include"stdio.h"
main()
{
int a=1,n;
double fn=0.0;
printf("请输入n的值:");
scanf("%d",&n);
for(a;a<=n;a++)
fn=fn+(double)1/(double)a;
printf("1+1/2+1/3+„+1/%d=%f\n",n,fn);
}
--------------------------------------------------------
1+2+3+4+...+99+100
a)for循环:
#include"stdio.h"
main()
{
int a,sum=0;
for(a=1;a<=100;a++)
sum+=a;
printf("sum=%d\n",sum); }
b)while循环:
#include"stdio.h"
main()
{
int a=1,sum=0;
while(a<=100)
{
sum=sum+a;
a=a+1;
}
printf("sum=%d\n",sum); }
c)do...while循环 #include"stdio.h" main()
{
int a=1,sum=0;
do
{
sum=sum+a;
a=a+1;
}while(a<=100);
printf("sum=%d\n",sum); }
-----------------------------------------------------------
-
1+3+5+...+97+99 #include"stdio.h" main()
{
int a,sum=0;
for(a=1;a<=100;a++)
if(a%2!=0)
sum+=a;
printf("sum=%d\n",sum);
}
-----------------------------------------------------------
1×1+2×2+3×3+„„n×n #include"stdio.h"
main()
{
int n,b=1,c=0;
printf("请输入n的值:");
scanf("%d",&n);
while(b<=n)
{
c=c+b*b;
b++;
}
printf("1*1+2*2+3*3+„„%d*%d=%d\n",n,n,c);
}
-----------------------------------------------------------
a+aa+aaa+„„+aaaaaaa(n个a) #include"stdio.h"
main()
{
int a,n,m=0,t=0,s=0,y;
printf("请输入a的值:");
scanf("%d",&a);
printf("请输入n的值:");
scanf("%d",&n);
y=a;
while(m
=90&&a<=100)
printf("你的等级为A\n");
else if(a>=80)
printf("你的等级为B\n");
else if(a>=70)
printf("你的等级为C\n");
else if(a>=60)
printf("你的等级为D\n");
else if(a<60&&a>=0)
printf("你的等级为E\n");
else
printf("输入错误,请输入正确数字\n");
}
-----------------------------------------------------------
-
比较两个数的大小(单次)
#include"stdio.h" int min(int a,int b) {
int c;
c=a=n)
printf("%d*%d=%d\t",m+1,n+1,a[m][n]);
printf("\n");
}
}
-----------------------------------------------------------
--
从0开始输出n个偶数
#include"stdio.h" main()
{
int a=0,b;
printf("输入b:");
scanf("%d",&b);
while(b--)
{
printf("%d ",a++*2);
}
printf("\n");
}
-----------------------------------------------------------
----
从2开始输出十个偶数(数组)
#include"stdio.h"
main()
{
int a;
int b[10];
for(a=0;a<=9;a++)
b[a]=2*a+2;
for(a=0;a<=9;a++)
printf("b[%d]=%d\n",a,b[a]); }
-----------------------------------------------------------
---
从50开始输出20个数(自动)
#include"stdio.h"
main()
{
int a[20],b;
for(b=0;b<20;b++)
a[b]=b+50;
for(b=0;b<20;b++)
{
printf("%d",a[b]);
printf("\t");
if((b+1)%5==0)
printf("\n");
}
}
-----------------------------------------------------------
-
第几行几个字符(三角形)
a)for循环
#include"stdio.h" main()
{
int i,j,n;
char ch;
printf("请输入一个字母和数字:\n");
scanf("%c%d",&ch,&n);
for(i=1;i<=n;i++)
{
for(j=1;j<=i;j++)
putchar(ch);
putchar('\n');
}
}
b)形参
#include"stdio.h" void a(char ch,int n) {
int i,j;
for(i=1;i<=n;i++)
{
for(j=1;j<=i;j++)
putchar(ch);
putchar('\n');
}
}
main()
{
int num;
char x;
printf("请输入一个字母和数字:\n");
scanf("%c%d",&x,&num);
a(x,num);
printf("\n");
}
-----------------------------------------------------------
------
各位数立方和等于1099的三位数
#include"stdio.h" main()
{
int a,b,c,d,e;
int ge,shi,bai;
for(a=100;a<=999;a++)
{
ge=a-a/10*10;
shi=(a-a/100*100)/10;
bai=a/100;
c=ge*ge*ge;
d=shi*shi*shi;
e=bai*bai*bai;
if(c+d+e==1099)
{
b=bai*100+shi*10+ge;
printf("三位数为:%d\n",b);
}
}
}
-----------------------------------------------------------
-----
将第二个字符串连接到第一个字符串后面,形成一个新的字符串
#include"stdio.h"
main()
{
char a[80],b[80];
int m=0,n=0;
printf("请输入第一个串字符:");
scanf("%s",a);
printf("请输入第二个串字符:");
scanf("%s",b);
while(a[m]!=0)
m++;
do
{
a[m+n]=b[n];
n++;
}while(b[n]!=0);
a[m+n]='\0';
printf("新字符为:%s\n",a);
}
-----------------------------------------------------------
----
将一个数插入到从小到大排列的数组后后重新排列
#include"stdio.h"
main()
{
int a[8]={2,6,13,23,45,65,78},x,i;
printf("原数组为:");
for(i=0;i<7;i++)
printf("%3d",a[i]);
printf("\n请输入一个数:");
scanf("%d",&x);
i=6;
while(xb)
{d=a;a=b;b=d;}
if(a>c)
{e=a;a=c;c=e;}
if(b>c)
{f=b;b=c;c=f;}
printf("a=%f,b=%f,c=%f\n",a,b,c); }
-----------------------------------------------------------
-----
十个数从小到大排列
#include"stdio.h"
main()
{
int i,j,t,s[10];
printf("please enter 10 integers:\n");
for(i=0;i<10;i++)
scanf("%d",&s[i]);
for(i=0;i<9;i++)
{
for(j=i+1;j<10;j++)
{
if(s[j]
void main()
{
int a,b,c,m;
printf("请输入三个数:\n");
scanf("%d%d%d",&a,&b,&c);
m=a;
if(b>m)
m=b;
if(c>m)
m=c;
printf("最大的数是%d\n",m); }
-----------------------------------------------------------
---
输入十个数后反过来输出
#include"stdio.h"
main()
{
int a[10],m,n;
printf("请输入十个数字:\n");
for(m=0;m<10;m++)
scanf("%d",&a[m]);
for(m=9;m>=0;m--)
{
printf("%d",a[m]);
printf(" ");
}
printf("\n");
}
-----------------------------------------------------------
-----
输入一个数,判断是不是闰年 (能被4整除不能被100整除,或者能被400整除的是润年)
#include"stdio.h"
main()
{
int a,a1,a2,a3;
printf("请输入年份\n");
scanf("%d",&a);
a1=(a%4==0);
a2=(a%100!=0);
a3=(a%400==0);
if (a1&&a2||a3)
printf("您输入的年份是闰年\n");
else
printf("您输入的不是闰年\n"); }
-----------------------------------------------------------
------
输入一个字符 当输入字符为#时结束
#include"stdio.h"
main()
{
char ch;
printf("请输入一个字符:\n");
while((ch=getchar())!='#')
{
printf("%c\n",ch);
}
printf("输入为#,结束输入~\n"); }
-----------------------------------------------------------
-------
数组的行与列交换后输出
#include"stdio.h"
main()
{
int old[3][3],new[3][3],j,k,n=0;
printf("请输入九个数字:\n");
for(j=0;j<3;j++)
for(k=0;k<3;k++)
{
scanf("%d",&old[j][k]);
n++;
}
printf("原数组为:\n");
for(j=0;j<3;j++)
{
for(k=0;k<3;k++)
printf("%5d",old[j][k]);
printf("\n");
}
for(j=0;j<3;j++)
for(k=0;k<3;k++)
new[j][k]=old[k][j];
printf("新数组为:\n");
for(j=0;j<3;j++)
{
for(k=0;k<3;k++)
printf("%5d",new[j][k]);
printf("\n");
}
}
-----------------------------------------------------------
---
统计从键盘上输入的字符个数
a)#include"stdio.h" main()
{
int n=0;
printf("请输入一行字符:\n");
while(getchar()!='\n')
n++;
printf("%d个字符\n",n); }
b)#include"stdio.h" main()
{
char a[80];
int n=0,j=0;
printf("请输入一串字符:");
scanf("%s",a);
while(a[j]!=0)
{
j++;
n++;
}
printf("字符个数=%d\n",n); }
-----------------------------------------------------------
------
杨辉三角
#include"stdio.h"
main()
{
int a[10][10],m,n;
for(m=0;m<10;m++)
{
a[m][m]=1;
a[m][0]=1;
}
for(m=2;m<10;m++)
for(n=1;n