预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共26页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

C语言程序设计什么是选择结构?#include<stdio.h>#include<math.h>main(){floata,b,c,x1,x2,beta;scanf("a=%f,b=%f,c=%f",&a,&b,&c);beta=b*b-4.0*a*c;if(beta>=0)x1=(-b+sqrt(flag*beta))/(2.0*a);elsex1=-9999;if(beta>=0)x2=(-b-sqrt(flag*beta))/(2.0*a);elsex2=-9999;printf("x1=%8.3f\n",x1);printf("x2=%8.3f\n",x2);}条件表达式条件表达式注意事项:注意事项:if语句的形式例:输入一个整数a,判断它是偶数还是奇数?if语句的形式复合语句if(a<b){t=a;a=b;b=t;}if(a<c){t=a;a=c;c=t;}if(b<c){t=b;b=c;c=t;}if(表达式1)if(表达式2)语句1else语句2elseif(表达式3)语句3else语句4例:设平面上一点M,其坐标为(x,y),若M落在圆心在坐标原点的半径为r的圆上,则置key=1,落在圆外置key=2,落在圆内置key=0。#include<stdio.h>#include<math.h>voidmain(){floatx,y,d,r;intkey;printf("inputx,y,r:");scanf("%f,%f",&x,&y,&r);d=sqrt(x*x+y*y);if(d>=r)if(d==r)key=1;//在圆上elsekey=2;/*在圆外*/elsekey=0;//在圆内printf("(%.1f,%.1f):%d\n",x,y,key);}例:输入年份,判断是否是闰年例:给一个不多于5位的正整数:①求出它是几位数;②分别输出每一位数字;③按逆序输出各位数字。#include<stdio.h>main(){intdata,length,wan,qian,bai,shi,ge;scanf("%d",&data);if(data<0||data>99999)printf("错误!");else{length=5;wan=data/10000;if(wan==0)length--;qian=data%10000/1000;if(qian==0&&length==4)length--;bai=(data%1000)/100;if(bai==0&&length==3)length--;shi=(data%100)/10;if(shi==0&&length==2)length--;ge=data%10;printf("数字长度为:%d位\n",length);作业:?switch语句例:用switch语句评价学生成绩60分以下为“E”;61~70分为“D”;71~80分为“C”;81~89分为“B”;90分以上为“A”。#include<stdio.h>main(){chargrade;printf("inputagrade:");scanf("%c",&grade);switch(grade){case'A':printf("优秀\n");break;case'B':printf("良好\n");break;case'C':printf("合格\n");break;case'D':printf("及格\n");break;case'E':printf("不及格\n");break;default:printf("输入错误!\n");}}例:将阿拉伯数字的金额转换成中文大写。如:3254.76元写为:叁千贰佰伍拾肆圆柒角陆分例:从键盘不断输入数据,计算所有数据的平均值及均方根值,直至输入-9999为止。作业:输入小于5位的数字,要求统计位数,逐个输出各位数字,逐个逆序输出各位数字。书P112,5.8题,要求用switch结构完成。解二元一次方程组(需要考虑到系数的各种可能)。