C语言程序简单例子.docx
《C语言程序简单例子.docx》由会员分享,可在线阅读,更多相关《C语言程序简单例子.docx(12页珍藏版)》请在冰豆网上搜索。
![C语言程序简单例子.docx](https://file1.bdocx.com/fileroot1/2023-4/18/12b95a3f-6190-4b06-ac6d-1142111feba0/12b95a3f-6190-4b06-ac6d-1142111feba01.gif)
C语言程序简单例子
求
1+2+3+.+100。
(循环)
答案
#include
voidmain()
{
inti,sum=0;
for(i=1;iv=100;i++)
sum=sum+i;
printf("%d",sum);
}
2、求1*2*3*.*10(循环)
答案
voidmain()
{
inti=0,j=1;
for(i=2;i<=10;i++)
{
j*=i;
}
printf("%d",j);
return0;
}
3、输入三个数字,输出他们的最大值。
(if)
答案
#include
voidmain()
{inta,b,c,d;
scanf("%d,%d,%d",&a,&b,&c);
d=max(a,b,c);
printf("max=%d",d);
getch();/*暂停看运行结果*/
}
intmax(intx,inty,intz)
{intu;
if(x>=y&&x>=z)
u=x;
elseif(y>=x&&y>=z)
u=y;
else
u=z;
return(u);
4.用起泡法对十个数据排序(数
组实现)
答案
#include
main()
{inti,j,t;
staticint
a[10]={5,7,4,2,3,6,1,0,9,8};
for(j=0;j<9;j++)
{for(i=0;i<9-j;i++)
{if(a[i]>a[i+1])
{t=a[i];a[i]=a[i+1];a[i+1]=
t;
}
}
}
for(i=0;i<10;i++)
printf("%2d",a[i]);
}
5、输入十个数字,逆序输出。
(数
组实现)
答案
#include
main()
{inta[10],i=0;
for(i=0;i<=9;i++)
scanf("%f",&a[i]);
printf("\n");
for(i=9;i>=0;i--)
printf("%f",a[i]);
}
6输入两个数,交换他们的值并输
出。
(元素交换)
答案
#include
intmain()
{
intm,n,temp;
scanf("%d%d",&m,&n);
if(m{
temp二m;
m=n;
n=temp;
}
printf("%d",m);
return0;
}
7.输出9*9乘法表。
(双层循环)答案
#include
voidmain()
{
inti=1;
for(i;i<=9;i++)
{
intj=1;
for(j;j<=i;j++)
{
printf("%d*%d=%d",i,j,
i*j);
}
printf("\n");
}
}
8.输入一行字符,将所有的小写字母转换成大写字母,大写字母转换成小写字母,其余字符不变输出转变后的这行字符。
答案
#include"stdio.h"
voidmain()
{
chara[n];
inti;
scanf("%s",a);
printf(”大写为:
”);
for(i=0;i<二n;i++)
{
if(a[i]<='z'&&a[i]>='a')
a[i]=a[i]-32;
printf("%c",a[i]);
}
printf("\n小写为:
");
for(i=0;i<=3;i++)
{
a[i]=a[i]+32;
printf("%c",a[i]);
}
9、编写一个简单计算器程序,要求能够完成两个数的+,-,*,/四种运算。
输出运算式及运算结果。
(switch)
6.2
#include"stdio.h"
main()
{charc;inti=O,j=O,k=O,l=O;
while((c=getchar())!
='\n'){if(c>=65&&c<=90||c>=97&&c<=122)i++;
elseif(c>=48&&c<=57)j++;
elseif(c==32)k++;
else1++;}
n",i,j,k,l);
}
6.6
#include"math.h"
while(x>=100&&x<1000)
{a=0.01*x;b=10*(0.01*x-a);c=x-100*a-10*b;
if(x==(pow(a,3)+pow(b,3)+pow
(c,3)))
printf("%5d",x);x++;}
}
6.7
main()
{intm,i,j,s;
for(m=6;m<10000;m++)
{s=1;
for(i=2;iif(m%i==0)s=s+i;
if(m-s==0)
{printf("%5ditsfastorsare1
",m);for(j=2;jif(m%j==0)
printf("%d
",j);printf("\n");}
}
或
main()
{intm,i,j,s;
for(m=6;m<1000;m++)
{s=m-1;
for(i=2;iif(m%i==0)s=s-i;
if(s==0)
{printf("%5ditsfastorsare1
",m);for(j=2;jif(m%j==0)
printf("%d
",j);printf("\n");}
}
}
6.8
main()
{inti=1,n;double
t,x=1,y=2,s,sum=0;
scanf("%ld",&n);
while(i<二n)
{s=y/x;sum=sum+s;t=y;y=y+x;x
=t;i++;}
printf("%f\n",sum);
}
11,P128例6.10(译码)
#include
voidmain()
{
charc;
while((c=getchar())!
='\n')
{
c=c+4;
if(c>'Z'+4||c>'z')
c=c-26;
}
printf("%c",c);
}
printf("\n");
}
12,P1115.55.6(switch)
5.5
#include
main()
main()
{intx,y;
{floatscore;
printf("输入x:
");
chargrade;
seanf("%d",&x);
ease2:
if(x<1)
printf("请输入学生成绩:
");
{y=x;
seanf("%f",&score);
printf("x=%3d,
while(score>100||(score<0)
y=x=%d\n",x,y);
{printf("\n输入有误,请重新
}
输入:
");
elseif(x<10)
scanf("%f",&score);
{y=2*x-1;
}
printf("x=%3d,
switch((int)(score/10))
y=2*x-仁%d\n",x,y);
{case10:
}
case9:
grade='A';break;
else
case8:
grade='B';break;
{y=3*x-11;
case7:
grade='C;break;
printf("x=%3d,
case6:
grade='D;break;
y=3*x-11=%d\n",x,y);
case5:
}
case4:
}
case3:
5.6
case1:
#inelude
case0:
grade='E';
}
printf(”成绩是%5.1f,相应的等
级是%c\n”,score,grade);
}
13,P108例5.5(一元二次方程求
根)例5.6(求闰年)
5.5
#include
voidmain()
{
intyear,leap;
scanf("%d",&year);
if(year%4==0)
{
if(year%100==0)
{
if(year%400==0)
leap=1;
else
leap=0;
}
else
leap=1;
}
else
leap=0;
if(leap)
printf("%dis",year);
else
printf("%disnot",year);
printf("aleapyear.\n")
}
5.6
14,P31例2.17例2.18
2.17
输出50个学生中成绩高于80分者
的学号和成绩
2.18
输出2000——2500年每一年是否
闰年
#include
voidmain()
{
intyear;year=2000;
go:
if(((year%4
II
run
0)&&(year%100!
=0))
(year%400==0))printf("%dis
nian",year);
if(year<=2500)
year二year++;if(year>2500)gotoend;
gotogo;
end:
getch();