C语言历次上机作业总汇 下载本文

C语言历次上机作业总汇

选作题:有3个整数a,b,c,由键盘输入,输出其中最大的数。 #include void main() { int a,b,c,max; scanf(\ if(a>=b && a>=c) max=a; else if(b>=a && b>=c) max=b; else max=c; printf(\}

选作题:输入一个字符,判定它的类别,比如是数字、小写字母、大写字母和其他字符。 #include void main() { char c; scanf(\ if(c>='0' && c<='9') printf(\数字\\n\ else if(c>='a' && c<='z') printf(\小写字母\\n\ else if(c>='A' && c<='Z') }

printf(\大写字母\\n\else printf(\其他字符\\n\

第六次作业

作业1:请用switch语句实现“奖学金评定”的编程。如输入一个百分制成绩,要求输出成绩等级‘A’‘B’‘C’‘D’‘E’。

判别学生成绩的等级: 90~100分 A级; 80~89分 B级; 70~79分 C级; 60~69分 D级; <60分 E级。

当输入为负数或者大于100的数提示出错。保存为test1.c #include void main() { float a; printf(\请输入成绩:\\n\ scanf(\ if(a>100)

C语言历次上机作业总汇

printf(\ //防止输入104?输出A

else switch((int)(a/10)) //int取整如10.26 舍入后为10,如-5.2 舍入后为-6 {

case 10 : case 9: printf(\ case 8: printf(\ case 7: printf(\ case 6: printf(\ case 5: case 4: case 3: case 2: case 1: case 0: printf(\ default: printf(\ } }

作业2:请输入3个整数,输出其中最大的数。保存为test2.c #include void main() { int a,b,c,max; printf(\请输入三个整数:\\n\ scanf(\ max=a; if(a

作业3:给一个不多于5位的正整数,请输入它是几位数。保存为test3.c #include void main() {

int a,b;

printf(\请输入一个不多于5位的正整数:\scanf(\

if(a>9999 && a<100000) b=5;

else if(a>999 && a<10000) b=4;

else if(a>999 && a<10000) b=3;

else if(a>999 && a<10000) b=2;

else if(a>-1 && a<10) b=1;

C语言历次上机作业总汇

else printf(\

printf(\这是一个%d位数\}

作业4:从键盘上输入三个数据(要求有数据输入前提示),看是否可以构成三角形,如果可以构成三角形,然后判断它是否为等腰三角形以及等边三角形还是直角三角形,否则输出不构成三角形。保存为test4.c #include void main() { int a,b,c; printf(\请输入三个数据:\\n\ scanf(\ if(a>0 && b>0 && c>0 && a+b>c && b+c>a && a+c>b) { printf(\这三边能够成三角形\\n\ if(a==b==c) printf(\这三边构成等边三角形\ else if(a==b || b==c || c==a)

printf(\这三边构成等腰三角形\

else if(a*a+b*b==c*c || c*c+b*b==a*a || c*c+a*a==b*b) printf(\这三边构成直角三角形\ } else

printf(\这三边不能够成三角形\\n\

}

作业5:输入一个实数,求该实数的绝对值,要求用条件表达式来完成。保存为test5.c #include void main() { float a; printf(\请输入一个实数\\n\ scanf(\

printf(\该实数的绝对值为%.2f\}

作业6:输入某年某月某日,输出这一天是这一年的第几天?保存为test6.c Input

输入数据有多组,每组占一行,数据格式为YYYY/MM/DD组成,具体参见sample input ,另外,可以向你确保所有的输入数据是合法的。

Output

对于每组输入数据,输出一行,表示该日期是该年的第几天。

Sample Input 1985/1/20 2006/3/12

Sample Output 20 71

算法分析提示:第一步:注意scanf输入格式,哪个变量接收”月”,哪个变量接收”日”

C语言历次上机作业总汇

第二步:先计算某月以前月份的总天数 第三步:注意闰年的判断 最后输出天数。

可以用if elseif elseif elseif ??.等完成,也可以用switch 语句来实现。 #include void main() { int year,month,day; printf(\请输入年月日\\n\ scanf(\ switch(month) {

case 1:day+=0;break; case 2:day+=31;break; case 3:day+=59;break; case 4:day+=90;break; case 5:day+=120;break; case 6:day+=151;break; case 7:day+=181;break; case 8:day+=212;break; case 9:day+=243;break; case 10:day+=273;break; case 11:day+=304;break; case 12:day+=334;break; default:printf(\ if((year%4==0 && year0!=0) || (year@0==0)) day+=1; else day=day; printf(\这是%d年的第%d天\}

第7次作业

作业1:编程序完成以下功能:输入一个整数判断它能不能被3整除,如果能被3整除,就输出这个数,否则不输出。保存为test1.c #include void main() { int a; printf(\请输入一个整数\\n\ scanf(\ if(a%3==0) printf(\ else printf(\}

作业2:编程序完成以下功能:输入数字1-7中的一个数,按照输入的值输出对应的星期(星期一到星期天),请用switch语句来实现。保存为test2.c #include

C语言历次上机作业总汇

void main() { int a;

printf(\请输入一个1到7的整数\\n\scanf(\switch(a) {

case 1:printf(\星期一\case 2:printf(\星期二\case 3:printf(\星期三\case 4:printf(\星期四\case 5:printf(\星期五\case 6:printf(\星期六\case 7:printf(\星期日\default:printf(\}

}

作业3:编程序完成以下功能:输入三个学生的成绩(整型),求这三个学生的总成绩和平均成绩(保留2位小数)。保存为test3.c #include void main() { int a,b,c; float aver; printf(\请输入三名学生的成绩\\n\ scanf(\ aver=(a+b+c)/3.0; printf(\总成绩为%d\\n\ printf(\平均成绩为%.2f\\n\}

作业4:编程序完成以下功能:输入两点坐标(X1,Y1),(X2,Y2),计算并输出两点间的距离(保留2位小数)。提示:开平方用sqrt函数,因为要用到数学函数,要在main()前加 #include,保存为test4.c #include #include void main() { float x1,y1,x2,y2; double d; printf(\请输入第一个坐标\\n\ scanf(\ printf(\请输入第二个坐标\\n\ scanf(\ d=sqrt((x2-x1)*(x2-x1)+(y2-y1)*(y2-y1)); printf(\这两点之间的距离是%.2f\\n\}

作业5:编程序完成以下功能:根据输入的半径值,计算球的体积(保留2位小数)。保存为test5.c #include #define P 3.1415926