C语言上机作业题及答案

更新时间:2023-12-08 10:03:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

实验一:

1、已知华氏温度,根据转换公式计算相应的摄氏温度。 摄氏温度= 5*(华氏温度-32)/9

2.任意输入一个有五位数字的正整数,逆序输出每一数位上的数字。 如:

输入 12345

输出 5 4 3 2 1

#include\main() {

double t,T;

printf (\已知华氏温度,根据转换公式计算相应的摄氏温度\ scanf (\ T=(5*(t-32)/9);

printf (\摄氏温度=%lf\}

#include\main() {

int value,a,b,c,d,e,m,n,h;

printf (\任意输入一个有五位数字的正整数,逆序输出每一数位上的数字\ scanf (\

a=value/10000; m=value000; b=m/1000; n=m00; c=n/100; h=n0; d=h/10; e=h;

printf (\} 实验二:

1.一个成年人的身高与其父母的身高密切相关,根据以下人体标准身高预测公式计算自己或某个同学的身高,并跟实际身高比较,给出结论是否符合该公式(误

差在3厘米范围内即视为相符)。

男性身高=(父亲身高+母亲身高)×1.08÷2(厘米) 女性身高=(父亲身高×0.923+母亲身高)÷2(厘米)

2.从键盘上输入税前收入,根据以下公式及规则,计算个人所得税税额并输出。 应纳个人所得税税额=(税前收入—起征点额度)*适用税率—速算扣除数 其中,起征点额度是3500元,其他如下: 应纳税所得额 税率 速算扣除数 不超过1500元的部分 3% 0

超过1500元至4500元的部分 10% 105 超过4500元至9000元的部分 20% 555 超过9000元至35000元的部分 25% 1005 超过35000元至55000元的部分 30% 2755 超过55000元至80000元的部分 35% 5505 超过80000的部分 45% 13505

如:某人月收入5000元,则应纳个人所得税税额为(5000-3500)* 10% - 105 = 45元。

#include #include main() {

float A,a,H,h,b;

printf(\父亲身高(厘米)\\n\ scanf(\

printf(\母亲身高(厘米)\\n\ scanf(\

printf(\孩子实际身高(厘米)\\n\ scanf(\

printf(\请选择孩子性别:女=0,男=1\\n\ scanf(\ if(b)

h=(A+a)*1.08/2; else

h=(A*0.923+a)/2;

if(fabs(H-h)<=3)

printf(\实际身高符合该公式\\n\ else

printf(\实际身高不符合该公式\\n\

printf(\孩子预测身高(厘米)%f\}

#include main() {

float s,a,t;

printf(\应纳个人所得税税额=(税前收入-起征点额度)*适用税率-速算扣除数\\n\

printf(\起征点额度=3500元\\n\ printf(\税前收入s=\ scanf(\ if(s<=3500) t=0; else

{ a=s-3500; if(a<=1500)

t=a*0.03-0; else

if(a<=4500)

t=a*0.1-105; else

if(a<=9000)

t=a*0.2-555; else

if(a<=35000)

t=a*0.25-1005; else

if(a<=55000) t=a*0.3-2755;

else

if(a<=80000)

t=a*0.35-5505;

else

t=a*0.45-13505; }

printf(\应纳个人所得税税额=%f\\n\} 实验三:

1. 编程解决鸡兔同笼问题(无解时给出输入错误提示)。描述如下:一个笼子里关了鸡和兔子,已知鸡和兔子的总数a以及脚的总数b,问笼子里面有多少只鸡,有多少只兔子。

2.设计并编程实现一个猜数游戏:由计算机随机产生一个1~100之间的整数请人猜,如果猜对了,则在屏幕上输出猜了多少次才猜对此数,结束游戏;否则计算机给出提示,说明所猜的数是太大还是太小,最多可以猜10次,如果猜10次仍未猜中的话,则给出正确答案并结束游戏。

#include\main() {

int a,b,i,j;

printf(\一个笼子里关了鸡和兔子,已知鸡和兔子的总数a以及脚的总数b,求鸡兔各几只\\n\ printf(\ scanf(\ printf(\ scanf(\ for(i=0;i<=a;i++)

{ for(j=0;j<=a;j++) {

if(i+j==a&&i*2+j*4==b)

printf(\鸡的只数=%d\\n兔子的只数=%d\\n\

if(i+j==a&&i*2+j*4==b) break; }

if(i+j==a&&i*2+j*4==b) break; }

if(i+j!=a&&i*2+j*4!=b)

printf(\输入错误\\n\}

#include\#include\#include\main() {

int a,b,i;

srand(time(0)); a=rand()0+1; for(i=1;i<=10;i++)

{ printf(\请猜一个1-100的数字b=\ scanf(\ if(b==a)

{printf(\猜了的次数=%d\\n\ if(b>a)

printf(\猜的数太大\\n\ if(b

printf(\猜的数太小\\n\ }

printf(\正确答案是%d\\n\} 实验四:

1.从键盘输入一个班(不超过30人)学生某门课的成绩,当输入成绩为负值时,则输入结束,统计并输出不及格人数并打印不及格学生的成绩,按成绩高低排序,输出该班最高分及最低分。

2.从键盘上输入一个字符串存放在一个字符数组中,按照以下规则对其加密:其中所有的大写英文字母加3,小写英文字母减4,其它字符不变,将加密后的字符串存放到另一个字符数组中,输出原字符串和加密后的字符串。 如:

输入 Microsoft Visual C++ 输出 Pe_nkokbp Yeoq]h F++

#include \#define N 30 main() {

int a[N],i=0,j,k,m=0,t; do {

printf(\输入学生成绩a[%d]=\

scanf(\ i++; }

while(a[i-1]>=0); k=i-2;

for(i=0;i

{ for(j=i+1;ja[j]){

t=a[i];a[i]=a[j];a[j]=t;} if(a[i]<60){

printf(\不及格成绩a[%d]=%d\\n\ m++;} }

printf(\不及格人数m=%d\\n\

printf(\该班最高成绩a[%d]=%d\\n\ printf(\该班最低成绩a[0]=%d\\n\}

#include\#include\#define N 50 void main() {

char strl[2][N]; char c; int i=0,k;

while((c=getch())!=13) //回车键停止输入

{

strl[0][i]=c; putch(c); i++; }

strl[0][i]='\\0'; k=i;

for(i=0;i

{ if(strl[0][i]>='A'&&strl[0][i]<='Z') strl[1][i]=strl[0][i]+3;

else if(strl[0][i]>='a'&&strl[0][i]<='z') strl[1][i]=strl[0][i]-4; else{

strl[1][i]=strl[0][i];} strl[1][k]='\\0'; }

printf(\

printf(\}

实验五:

1.编写求和函数和求平均值函数。在主函数中,输入一组10个整数,存储在一个数组中,调用求和函数求出这10个整数的和值,调用求平均值函数求出这10个整数的平均值,输出计算结果。

2.编写函数,统计字符串中字母、数字、空格和其他字符的个数,在主函数中输入字符串并输出统计结果。

#include int sum(int a[]); float aver(int a[]); main() {

int i,a[10];

for(i=0;i<10;i++)

{ printf(\请输入整数a[%d]=\ scanf(\ }

printf(\这10个整数的和为%d\\n\ printf(\这10个整数的平均数为%.3f\\n\}

int sum(int a[])

{ int i,sum=0;

for(i=0;i<10;i++)

sum=sum+a[i]; return sum; }

float aver(int a[]) { int i,s=0; float aver;

for(i=0;i<10;i++) s=s+a[i]; aver=s/10.0; return aver; }

#include #include void count(char str[]);

int chars = 0,nums = 0,spaces = 0,others = 0; main()

{ char s[100];

printf(\请输入字符串s[100]:\ gets(s); count(s);

printf(\字母的个数为%d\\n\ printf(\数字的个数为%d\\n\ printf(\空格的个数为%d\\n\ printf(\其他字符的个数为%d\\n\

}

void count(char str[]) { int i,length;

length = strlen(str);

for (i=0;i<=length-1;i++)

{ if((str[i]>='A'&&str[i]<='Z')||(str[i]>='a'&&str[i]<='z')) chars++;

else if((str[i]>='0')&&(str[i]<='9')) nums++; else if(str[i]==' ')

spaces++; else others++; } }

本文来源:https://www.bwwdw.com/article/d23t.html

Top