c语言上机答案

发布 2022-09-05 11:18:28 阅读 7977

2010c语言实验报告参***。

实验一熟悉c语言程序开发环境及数据描述。

四、程序清单。

1.编写程序实现在屏幕上显示以下结果:

the dress is long

the shoes are big

the trousers are black

答案:#include<>

main()

printf("the dress is long");

printf("the shoes are big");

printf("the trousers are black");

正确的程序为:

#include <>

main()

printf("商品名称**");

printf("tcl电视机 ¥7600");

printf("美的空调 ¥2000");

printf("sunrose键盘 ¥50.5");

2.编写程序: a=150,b=20,c=45,编写求a/b、a/c(商)和a%b、a%c(余数)的程序。

答案:#include<>

main()

int a,b,c,x,y;

a=150;

b=20;c=45;

x=a/b;

y=a/c;

printf("a/b的商=%d",x);

printf("a/c的商=%d",y);

x=a%b;

y=a%c;

printf("a/b的余数=%d",x);

printf("a/c的余数=%d",y);

4. 设变量a的值为0,b的值为-10,编写程序:当a>b时,将b赋给c;当a<=b时,将a赋给c。(提示:用条件运算符)

答案:#include<>

main()

int a,b,c;

a=0;b=-10;

c= (a>b) ?b:a;

printf("c = d",c);

五、调试和测试结果。

1.编译、连接无错,运行后屏幕上显示以下结果:

the dress is long

the shoes are big

the trousers are black

3、 编译、连接无错,运行后屏幕上显示以下结果:

a/b的商=7

a/c的商=3

a/b的余数=10

a/c的余数=15

4. 编译、连接无错,运行后屏幕上显示以下结果:

c =-10

实验二顺序结构程序设计。

四、程序清单。

问题1 d 。

问题2 改printf("%c,%c,%d",a,b,c);这条语句。

改成:printf("%c %c %d",a,b,c);

问题3 改scanf("%c%c%d",&a,&b,&c);这条语句。

改为:scanf("%c,%c,%d",&a,&b,&c);

问题4 改printf("%c,%c,%d",a,b,c);这条语句。

改成:printf("\c\’ c\’ d",a,b,c);

2(1)从键盘输入两个八进制数,计算两数之和并分别用十进制和十六进制数形式输出。

#include <>

int main()

int a,b,c

printf("enter a and b:")

scanf("%o%o",&a,&b);

c = a + b;

printf("d:%d",c);

printf("x:%x",c);

return 0;

2(2)编写程序:从键盘输入两个实数a和x,按公式计算并输出y的值:

#include<>

#include<>

int main()

float a,x,y

scanf("%f%f",&a,&x);

y = pow(a,5) +sin(a*x) +exp(a*x) +log(a+x);

printf("y=%f",y);

return 0;

正确的程序为:

#include <>

main()

int a,b,c,s;

scanf("%d%d%d",&a,&b,&c);

s=a+b+c;

printf("%d=%d+%d+%d",s,a,b,c); 输出s=a+b+c*/

printf("%d+%d+%d=%d",a,b,c,s输出a+b+c=s*/

五、调试和测试结果。

2(1) 输入: 12 14

输出:261a

2(2) 输入:1 0

输出:2.000000

实验三选择结构程序设计。

四、设计流程(算法描述)

(请写出上机内容2(2)题的算法描述)

主要是两两比较,然后得出最大的数。

五、程序清单。

2(1) 输入整数x和a,计算并输出下列分段函数f(x)的值(保留2位小数),请调用log函数求自然对数,调用fabs函数求绝对值。

程序为:#include <>

#include <>

main()

int x,a;

double y;

printf("enter a and x:")

scanf("%d%d",&a,&x);

if(fabs(x)!=a)

y=log(fabs((float)(a+x)/(a-x)))2*a);

elsey=0;

printf("a=%d,f(%d)=%2f",a,x,y);

(2)输入a、b、c三个整数,输出最大数。

#include<>

main()

int a,b,c,x;

scanf("%d%d%d",&a,&b,&c);

if(a>=b)

x=a;else

x=b;if (x x=c;

printf("the max number is:%d",x);

return 0;

正确程序为:

#include <>

main()

double n;

printf("enter n:")

scanf("%lf",&n);

if(n<0)

printf("%lf is less than 0",n);

else if(n==0)

printf("%lf is equal to 0",n);

elseprintf("%lf is greater 0",n);

六、调试和测试结果。

2(1) enter a and x:5 6

a=5,f(6)=0.24

enter a and x:5 5

a=5,f(5)=0.00

2(2) 输入:3 2 1 输出:the max number is:3

输入:2 3 1 输出:the max number is:3

输入:1 2 3 输出:the max number is:3

实验四循环结构程序设计。

四、设计流程(算法描述)

请写出上机内容2的算法描述)

首先求出每一个给定数的所有因子和,然后从2到5000循环,那一个数x与因子之和相等,就是完数。

五、程序清单。

1.编写程序:求1+2+3+…+100和12+22+33+…+1002。

#include<>

#include<>

int main()

int i,j,sum;

sum = 0;

for (i=1;i<=100;i++)

sum +=i;

printf("the sum is:%d",sum);

sum =0;

for(i=1;i<=100;i++)

printf("the square sum is:%d",sum);

return 0;

2.一个数如果恰好等于它的因子之和,这个数就称为“完数”,编写程序找出2~5000中的所有完数。

#include<>

#include<>

main()

int i,j,sum=0;

for(i=2;i<=5000;i++)遍历从2到5000的所有数。

if(i ==sumsum为因子和,如果和i相等,则输出。

printf("%d ",i);

return 0;

正确的程序为:

#include <>

main()

int n=1;

int find=0;

while(!find)n++;

六、调试和测试结果。

1:结果:the sum is:5050

the square sum is:338350

2:结果:6 28 496

实验五函数和预处理命令。

四、设计流程(算法描述)

请写出上机内容1的算法描述)

利用循环将m乘n次。

五、程序清单。

1.编写自定义函数long power(int m,int n),计算的值。利用此函数编程序实现:从键盘输入两个整数m和n,计算出的值。

#include<>

long power(int m,int n)//要返回的是long型。

int i;

long s;//因为是要返回的数,所以这里也定义为long型。

s=1;for(i=1;i<=n;i++)

return s;

int main(void)

int m,n;

scanf("%d%d",&m,&n);

printf("s=%ld",power ( m,n));

return 0;

2、写出两个函数,分别求两个整数的最大公约数和最小公倍数,用主函数调用这两个函数,并输出结果,两个整数由键盘输入。

C语言上机答案

一次。编程题 1 编程完成如下功能 将1元人民币兑换成1分 2分 5分的硬币,输出所有的兑换法 比如 1 fen 0 2 fen 50 5 fen 0 即为其中的一种兑换法。将该程序文件以 的名字保存到 my 文件夹中。提示 用三重循环。思考 能统计出一共有多少种兑换法吗?因为共有541种兑换法,屏...

C语言上机题库答案

1 程序填空题。给定的程序的功能是调用fun函数建立班级通讯录。通讯录中记录。填空 1 stype 2 file 3 fp 改错 1 for i 0 i sl i 2 t 2 sl 0 或t sl sl 0 编程 c a 10 1000 b 10 100 a 10 10 b 10 2 程序填空题。给...

C语言上机作业12答案

data next struct link node 5 变量root有如图所示的存储结构,其中sp是指向字符串的指针的指针域,next是指向该结构的指针域,data用以存放整型数。请填空,完成此结构的类型说明和变量root的定义。rootstruct list char sp root 6 以下函...