C语言例题.docx
- 文档编号:12755196
- 上传时间:2023-04-21
- 格式:DOCX
- 页数:89
- 大小:31.71KB
C语言例题.docx
《C语言例题.docx》由会员分享,可在线阅读,更多相关《C语言例题.docx(89页珍藏版)》请在冰豆网上搜索。
C语言例题
C语言例题
一、C语言概述
二、数据类型、运算符和表达式
三、简单程序设计
四、选择结构程序设计
例4-1分析下面程序段的运行结果。
//EX4-1.C
#include
main()
{
inta=14,b=15,x;
charc=’A’;
x=(a&&b)&&(c<’B’)
printf(“a=%d,b=%d”,a,b);
printf(“x=%d”,x);
}
例4-2从键盘输入学生成绩并判断是否合格,若及格输出”pass”。
//EX4-2.C
#include
main()
{
floata;
printf(“pleaseinputthescore:
“);
scanf(“%f”,&a);
if(a>=60)printf(“pass\n”);
}
例4-3从键盘输入两个整数,输出其中最大者。
//EX4-3.C
#include
main()
{
inta,b;
printf(“inputthetwonumbers:
\n”);
scanf(“%d,%d”,&a,&b);
if(a>b)
printf(“max=%d\n”,a);
else
printf(“max=%d\n”,b);
for(i=0;i<10;i++)
scanf(“%d”,&a[i]);
}
例4-4分段函数
(x+1)/(x-2),x>0
y=0,x=0或x=2
(x-1)/(x-2),x<0
输入任意x,求y的值。
//EX4-4.C
#include
main()
{
floatx,y;
printf(“inputthenumber:
“);
scanf(“%f”,&x);
if(x==0||x==2)
y=0;
else
if(x>0)
y=(x+1)/(x-2);
else
y=(x-1)/(x-2);
printf(“y=%f”,y);
}
例4-5从键盘输入一个正整数作为年份,编程判断该年是不是闰年。
若是输出”YES”,否则输出”NO”。
//EX4-5.C
#include
main()
{
intyear,flag;
scanf(“%d”,&year);
if(year%4==0)
if(year%100==0)
if(year%400==0)flag=1;
elseflag=0;
elseflag=1;
elseflag=0;
if(flag)printf(“YES”);
elseprintf(“NO”);
}
例4-6输入两个十进制数,输出这两个数的关系。
如若输入的数据为2,3;则输出结果为2<3。
若输入数据为3,2;则输出结果为3>2。
若输入数据为3,3,则输出结果为3=3。
//EX4-6.C
#include
main()
{
inta,b;
printf(“inputthetwonumbers:
”);
scanf(“%d,%d”,&a,&b);
if(a>=b)
if(a>b)printf(“%d>%d\n”,a,b);
elseprintf(“%d=%d\n”,a,b);
elseprintf(“%d<%d\n”,a,b);
}
例4-7用条件运算符对例4-3重新编程,输出两个整数中的最大者。
//EX4-7.C
#include
main()
{
inta,b;
printf(“inputthetwonumbers:
“);
scanf(“%d,%d”,&a,&b);
printf(“max=%d”,a>b?
a:
b);
}
例4-8输入一个十进制数,根据输入的数输出所对应的英文星期单词,若所输入的数小于1或大于7,则输出”Error”。
//EX4-8.C
#include
main()
{
inta;
scanf(“%d”,&a);
switch(a)
{
case1:
printf(“Monday\n”);
case2:
printf(“Tuesday\n”);
case3:
printf(“Wednesday\n”);
case4:
printf(“Thursday\n”);
case5:
printf(“Friday\n”);
case6:
printf(“Saturday\n”);
case7:
printf(“Sunday\n”);
default:
printf(“Error\n”);
}
}
例4-9修改例4-8的程序,在每一个case语句之后增加break语句,使每一个case执行之后均可跳出switch语句,从而避免输出不需要的结果。
//EX4-9.C
#include
main()
{
inta;
scanf(“%d”,&a);
switch(a)
{
case1:
printf(“Monday\n”);break;
case2:
printf(“Tuesday\n”);break;
case3:
printf(“Wednesday\n”);break;
case4:
printf(“Thursday\n”);break;
case5:
printf(“Friday\n”);break;
case6:
printf(“Saturday\n”);break;
case7:
printf(“Sunday\n”);break;
default:
printf(“Error\n”);
}
}
例4-10输入一个十进制正整数,判断该数是否是7的倍数,若是输出”Yes!
”,否则输出”No!
”。
//EX4-10.C
#include
main()
{
inta;
printf(“Enteraninteger:
“);
scanf(“%d”,&a);
if(a%7==0)
printf(“Yes!
\n”);
else
printf(“No!
\n”);
}
例4-11输入3个数,按从大到小的顺序输出。
//EX4-11.C
#include
main()
{
inta,b,c,t;
printf(“pleaseinputthethreenumber:
”);
scanf(“%d,%d,%d”,&a,&b,&c);
if(a
if(a if(b printf(“%d>=%d>=%d\n”,a,b,c); } 例4-12将一个百分制的成绩转化成5个等级: 90分以上为’A’,80~89分为’B’,70~79分为’C’,60~69分为’D’,60分以下为’E’。 例如输入75,则显示C。 //EX4-12.C #include main() { inta; printf(“inputthescore: ”); scanf(“%d”,&a); if(a<0||a>100) printf(“dataerror\n”); else { if(a>90)printf(“A\n”); elseif(a>=80)printf(“B\n”); elseif(a>=70)printf(“C\n”); elseif(a>=60)printf(“D\n”); Elseprintf(“E\n”); } } 例4-13用switch….case语句来实现例4-12。 //EX4-13.C #include main() { inta; scanf(“%d”,&a); if(a<0||a>100) printf(“dataerror\n”); else switch(a/10) { case10: case9: printf(“A\n”);break; case8: printf(“B\n”);break; case7: printf(“C\n”);break; case6: printf(“D\n”);break; default: printf(“E\n”); } } 例4-14输入2005年的一个月份,输出这个月的天数。 (2005年为平年) //EX4-14.C #include main() { intmonth,days; printf(“inputthemonthnumber: “); scanf(“%d”,&month); switch(month) { case1: case3: case5: case7: case8: case10: case12: days=31;break; case4: case6: case9: case11: days=30;break; case2: days=28;break; default: days=-1; } if(days==-1) printf(“inputerror! ”); else printf(“2005years%monthhas%ddays\n”,month,days); } 五、循环结构程序设计 例5-1计算s=1+2+3+…..+100。 //EX5-1.C #include main() { inti,s; i=1;s=0; while(i<=100) { s=s+i; i=i+1; } printf(“s=%d\n”,s); } 例5-2计算1~100之间所有3的倍数的和。 //EX5-2.C #include main() { inti,s; i=3;s=0; while(i<=99) { s=s+i; i=i+3; } Printf(“s=%d\n”,s); } #include main() { inti,s; i=1;s=0; while(i<=100) { if(i%3==0) s=s+i; i=i+1; } Printf(“s=%d\n”,s); } 例5-3计算s=1+2+3+…..+100。 //EX5-3.C #include main() { inti,s; i=1;s=0; do { s=s+i; i=i+1; }while(i<=100) printf(“s=%d\n”,s); } 例5-4计算s=1+2+3+…..+100。 //EX5-4.C #include main() { inti,s; for(i=1,s=0;i<=100;i++) s=s+i; printf(“s=%d\n”,s); } 例5-5计算s=1+1.5+2.0++2.5+3.0+3.5+…..+10。 //EX5-5.C #include main() { floati,s; for(i=1,s=0;i<=10;i=i+0.5) s=s+i; printf(“s=%f\n”,s); } 例5-6计算s=1+(1+2)+(1+2+3)+…+(1+2+3+4+…..+10)。 //EX5-6.C #include main() { inti,j,s; for(i=1,s=0;i<=10;i++) for(j=1;j<=i;j++) s=s+j; printf(“s=%d\n”,s); } 例5-7阅读下面程序,写出运行结果。 //EX5-7.C #include main() { inti,s; for(i=1,s=0;i<=10;i++) { if(i%2==0) continue; if(i%10==7) break; s=s+i; } printf(“s=%d\n”,s); } 例5-8计算s=1*2*3*4*5*6*7*8。 //EX5-8.C #include main() { inti; longs; for(i=1,s=1;i<=8;i++) s=s*i; printf(“s=%ld\n”,s); } 例5-9打印图5-14所示的图形。 * ** *** **** ***** //EX5-9.C #include main() { inti,j; for(i=1;i<=5;i++) { for(j=1;j<=i;j++) printf(“*”); printf(“\n”); } } 例5-10计算100以内的所有素数的和。 //EX5-10.C #include main() { inti,j,s=0; for(i=2;i<=100;i++) { for(j=2;j<=i-1;j++) if(i%j==0)break; if(j>i-1) s=s+i; } printf(“%d\n”,s); } 例5-11计算Fibonacci数列的前20项的和。 //EX5-11.C #include main() { intf1,f2,f; inti; longs=0; f1=f2=1;s=f1+f2; for(i=1;i<=18;i++) { f=f1+f2; s=s+f; f1=f2; f2=f; } printf(“%ld\n“,s); } 六、数组 例6-1将数字0~9存入一个整数数组a中,并输出。 //EX6-1.C #include main() { inta[10]; inti; for(i=0;i<10;i++) { a[i]=i; printf(“%d”,a[i]); } } 例6-2用数组求Fibonacci数列的前20项。 //EX6-2.C #include main() { inti; intf[20]={1,1}; for(i=2;i<20;i++) f[i]=f[i-2]+f[i-1]; for(i=0;i<20;i++) { if(i%5==0) printf(“\n”); printf(“%6d”,f[i]); } } 例6-3随机输入10个数,选出其中的最小数。 //EX6-3.C #include main() { inti,min,a[10]; printf(“input10number: \n”); for(i=0;i<10;i++) scanf(“%d”,&a[i]); min=a[0]; for(i=1;i<10;i++)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 例题
![提示](https://static.bdocx.com/images/bang_tan.gif)