谁可以帮我做一下这个C++C语言的作业

一、 基础题(15%)
1.定义int n=5,a=12;写出a*=(n%=3);执行后变量n与a的值。
【答案】

2.设a=b=5;分别判断表达式的真假:6>a>2与++b==6。
【答案】

3.分别计算表达式的值:43 | 38 与 (43 ^ 38) >> 2。
【答案】

二、 改错(30%)
1、试找出程序中的语法错误,写出错误所在行号及正确内容。
#include <stdio.h>
#1 main
#2 {
#3 int m,n,k,i;
#4 scanf( "%d%d", m, n );
#5 if m < n
#6 k = 1
#7 else
#8 k = -1;
#9 for ( i = m,i != n, i+=k )
#10 printf( "%d ", i );
#11 }
【答案】

2、程序功能为:判断从键盘上输入的一个字符,并按下列要求输出。若该字符是数字 输出字符串"0-9";若该字符是大写字母 输出字符串"A-Z";若该字符是小写字母 输出字符串"a-z";若该字符是其他字符 输出字符串"!,@,…",写出错误所在行号及正确内容。

#include <stdio.h>
#1 main()
#2 { int c;
#3 printf("请输入字符,系统将显示其范围\n");
#4 scanf("%c",&c);
#5 if('0'<=c||c<='9')
#6 printf("\t0-9\n");
#7 else if('A'>=c&&c<='Z')
#8 printf("\tA-Z\n");
#9 else if('a'<=c&&c>='z')
#10 printf("\ta-z\n");
#11 else
#12 printf("\t!,@,…\n");
#13}
【答案】

三、 程序填空(15%)
下列程序的功能为:输入三角形的三边长,求三角形面积。
已知三角形的三边长a,b,c,则该三角形的面积公式为:

其中s = (a+b+c)/2,请填写适当的符号或语句,使程序实现其功能。
#include<math.h>
#include<stdio.h>
main()
{
float a,b,c,s,area;
① ;
s=1.0/2*(a+b+c);
area= ② ;
printf(“a=%7.2f,b=%7.2f,c=%7.2f,s=%7.2f\n”,a,b,c,s);
printf( ③ ,area);
}
【答案】




四、 编写程序(40%)
1、“有物不知几何,三三数余一,五五数余二,七七数余三,问:物有几何?”编程求2000以内所有解,打印时用空格隔开。将程序保存到学号文件夹下,文件名为b-1.c
急需答案!!!谢谢!!!!!

因为我对C语言的输入输出不太熟悉,对输入输出的错误不予判断!
我按C++的方式给予判断。

一、 基础题(15%)
1.定义int n=5,a=12;写出a*=(n%=3);执行后变量n与a的值。
【答案】
n%=3 取余结果n=2
执行后:n=2;a=24

2.设a=b=5;分别判断表达式的真假:6>a>2与++b==6。
【答案】
6>a>2 6>5>2,故为真;
++b操作是将b值加1,同时整个表达式的值为结果值,所以++b值为6,故++b==6为真;

3.分别计算表达式的值:43 | 38 与 (43 ^ 38) >> 2。
【答案】
43的二进制为:101011;
38的二进制为:100110;
43|38= 101111=47;或操作;
43^38= 001101,异或操作,右移2位=000011=3;
43 | 38 结果为47; (43 ^ 38)>>2结果为3;

二、 改错(30%)
1、试找出程序中的语法错误,写出错误所在行号及正确内容。
#include <stdio.h>
#1 main
#2 {
#3 int m,n,k,i;
#4 scanf( "%d%d", m, n );
#5 if m < n
#6 k = 1
#7 else
#8 k = -1;
#9 for ( i = m,i != n, i+=k )
#10 printf( "%d ", i );
#11 }
【答案】
main主函数价格括号,正确如下:
#1 main()
c++语言的每个表达式的结束都需要加上分号;故第6.9行错误,正确如下;
#6 k=1 ;
#9 for(i=m;i!=n;i+=k)

2、程序功能为:判断从键盘上输入的一个字符,并按下列要求输出。若该字符是数字 输出

字符串"0-9";若该字符是大写字母 输出字符串"A-Z";若该字符是小写字母 输出字符串"a

-z";若该字符是其他字符 输出字符串"!,@,…",写出错误所在行号及正确内容。

#include <stdio.h>
#1 main()
#2 { int c;
#3 printf("请输入字符,系统将显示其范围\n");
#4 scanf("%c",&c);
#5 if('0'<=c||c<='9')
#6 printf("\t0-9\n");
#7 else if('A'>=c&&c<='Z')
#8 printf("\tA-Z\n");
#9 else if('a'<=c&&c>='z')
#10 printf("\ta-z\n");
#11 else
#12 printf("\t!,@,…\n");
#13}
【答案】
main主函数必须有返回类型,如果不需要返回值,用无返回值类型void,正确如下:
#1 void main()
当判断表达式需要变量时,请将变量放在左边,而且范围判断要用“与”操作;
#5 if('0'<=c||c<='9') 改为if(c>='0'&&c<='9') 这边你用了或;
#7 else if('A'>=c&&c<='Z')改为else if(c>='A'&&c<='Z')
#9 else if('a'<=c&&c>='z')改为else if(c>='a'&&c<='z')

三、 程序填空(15%)
下列程序的功能为:输入三角形的三边长,求三角形面积。
已知三角形的三边长a,b,c,则该三角形的面积公式为:

其中s = (a+b+c)/2,请填写适当的符号或语句,使程序实现其功能。
#include<math.h>
#include<stdio.h>
main()
{
float a,b,c,s,area;
① ;
s=1.0/2*(a+b+c);
area= ② ;
printf(“a=%7.2f,b=%7.2f,c=%7.2f,s=%7.2f\n”,a,b,c,s);
printf( ③ ,area);
}
【答案】
①输入语句:scanf("%a%b%c",&a,&b,&c); 这个是按你前面的写法写的,不懂对错!
②这个语句是计算面积的,用海伦公式:S=[p(p - a)(p - b)(p - c)]^(1/2);
语句为:area=sqrt(s*(s-a)*(s-b)*(s-c));
③ printf( "%area",area);

四、 编写程序(40%)
1、“有物不知几何,三三数余一,五五数余二,七七数余三,问:物有几何?”编程求2000

以内所有解,打印时用空格隔开。将程序保存到学号文件夹下,文件名为b-1.c
问题补充:急需答案!!!谢谢!!!!!
【答案】
我用C++给你弄一下:
#include<iostream.h>
void mani()
{
for(int i=1;i<=2000;i++)//从1到2000开始遍历,查找符合条件的数
{
if((i%3==1)&&(i%5==2)&&(i%7==3))//判断3个条件是否都满足
cout<<i<<" ";//输出结果,用空格隔开,C++的输入输出比C简单很多
}

做完收工,如果有错误的地方请指教,没对着电脑编程,难免会做错,谅解!
温馨提示:答案为网友推荐,仅供参考
第1个回答  2009-04-15
一、 基础题(15%)
1.定义int n=5,a=12;写出a*=(n%=3);执行后变量n与a的值。
【答案】
执行后:n=2;a=24

2.设a=b=5;分别判断表达式的真假:6>a>2与++b==6。
【答案】
6>a>2为真;++b==6为假

3.分别计算表达式的值:43 | 38 与 (43 ^ 38) >> 2。
【答案】
43 | 38 结果为47; (43 ^ 38) >> 2结果为3

二、 改错(30%)
1、试找出程序中的语法错误,写出错误所在行号及正确内容。
#include <stdio.h>
#1 main
#2 {
#3 int m,n,k,i;
#4 scanf( "%d%d", m, n );
#5 if m < n
#6 k = 1
#7 else
#8 k = -1;
#9 for ( i = m,i != n, i+=k )
#10 printf( "%d ", i );
#11 }
【答案】
#1 main改为void main()
#4改为scanf( "%d%d", &m, &n );
#5 if (m < n ) 必须加括号
#6 k = 1; 必须加分号
#9 for ( i = m;i != n; i+=k ) for语句以;隔开,而不是以逗号隔开

2、程序功能为:判断从键盘上输入的一个字符,并按下列要求输出。若该字符是数字 输出字符串"0-9";若该字符是大写字母 输出字符串"A-Z";若该字符是小写字母 输出字符串"a-z";若该字符是其他字符 输出字符串"!,@,…",写出错误所在行号及正确内容。

#include <stdio.h>
#1 main()
#2 { int c;
#3 printf("请输入字符,系统将显示其范围\n");
#4 scanf("%c",&c);
#5 if('0'<=c||c<='9')
#6 printf("\t0-9\n");
#7 else if('A'>=c&&c<='Z')
#8 printf("\tA-Z\n");
#9 else if('a'<=c&&c>='z')
#10 printf("\ta-z\n");
#11 else
#12 printf("\t!,@,…\n");
#13}
【答案】
#1改为 void main()
#2 { char c; 不应该是整型,应该是字符型
#5 if('0'<=c && c<='9') 用与运算,而不是用或运算
#7 else if('A'<=c && c<='Z')
#9 else if('a'<=c && c<='z') 这两句符号弄反了

三、 程序填空(15%)
下列程序的功能为:输入三角形的三边长,求三角形面积。
已知三角形的三边长a,b,c,则该三角形的面积公式为:
, 其中s = (a+b+c)/2,请填写适当的符号或语句,使程序实现其功能。
#include<math.h>
#include<stdio.h>
main()
{
float a,b,c,s,area;
① ;
s=1.0/2*(a+b+c);
area= ② ;
printf(“a=%7.2f,b=%7.2f,c=%7.2f,s=%7.2f\n”,a,b,c,s);
printf( ③ ,area);
}
【答案】
① scanf("%f %f %f",&a,&b,&c); 输入三条边长
② sqrt(s*(s-a)*(s-b)*(s-c)); 计算面积
③ "%7.2f" 设置输出精度

四、 编写程序(40%)
1、“有物不知几何,三三数余一,五五数余二,七七数余三,问:物有几何?”编程求2000以内所有解,打印时用空格隔开。将程序保存到学号文件夹下,文件名为b-1.c
#include<stdio.h>
void main()
{
int i;
for (i = 0 ;i<=2000;i++)
{
if(((i%3) == 1) && ((i%5) == 2) && ((i%7) == 3))
printf("%d\t",i);
}
}
再以规定的文件名保存到规定的路劲就可以了!!!
第2个回答  2009-04-15
同学:你的很多都抄错了,认真点吧!

一、 基础题(15%)
1.定义int n=5,a=12;写出a*=(n%=3);执行后变量n与a的值。
【答案】 写错了吧

2.设a=b=5;分别判断表达式的真假:6>a>2与++b==6。
【答案】 第一个真,第二个也真,++优先级大于==

3.分别计算表达式的值:43 | 38 与 (43 ^ 38) >> 2。
【答案】

二、 改错(30%)
1、试找出程序中的语法错误,写出错误所在行号及正确内容。
#include <stdio.h>
#1 main
#2 {
#3 int m,n,k,i;
#4 scanf( "%d%d", m, n );
#5 if m < n
#6 k = 1
#7 else
#8 k = -1;
#9 for ( i = m,i != n, i+=k )
#10 printf( "%d ", i );
#11 }
【答案】
#4 #4 scanf( "%d%d",& m,& n );
#5 if (m < n)
#6 k = 1 ;
#9 for ( i = m;i != n; i+=k )

2、程序功能为:判断从键盘上输入的一个字符,并按下列要求输出。若该字符是数字 输出字符串"0-9";若该字符是大写字母 输出字符串"A-Z";若该字符是小写字母 输出字符串"a-z";若该字符是其他字符 输出字符串"!,@,…",写出错误所在行号及正确内容。

#include <stdio.h>
#1 main()
#2 { int c;
#3 printf("请输入字符,系统将显示其范围\n");
#4 scanf("%c",&c);
#5 if('0'<=c||c<='9')
#6 printf("\t0-9\n");
#7 else if('A'>=c&&c<='Z')
#8 printf("\tA-Z\n");
#9 else if('a'<=c&&c>='z')
#10 printf("\ta-z\n");
#11 else
#12 printf("\t!,@,…\n");
#13}
【答案】
#5 if('0'<=c&&c<='9')

三、 程序填空(15%)
下列程序的功能为:输入三角形的三边长,求三角形面积。
已知三角形的三边长a,b,c,则该三角形的面积公式为:

其中s = (a+b+c)/2,请填写适当的符号或语句,使程序实现其功能。
#include<math.h>
#include<stdio.h>
main()
{
float a,b,c,s,area;
① ;
s=1.0/2*(a+b+c);
area= ② ;
printf(“a=%7.2f,b=%7.2f,c=%7.2f,s=%7.2f\n”,a,b,c,s);
printf( ③ ,area);
}
【答案】
① scanf("%d%d%d",&a,&b,&c);
② aqrt(s*(s-a)*(s-b)*(s-c);
③ “%5d、n”

四、 编写程序(40%)
1、“有物不知几何,三三数余一,五五数余二,七七数余三,问:物有几何?”编程求2000以内所有解,打印时用空格隔开。将程序保存到学号文件夹下,文件名为b-1.c
include <stdio.h>
void main( )
{
int i;
for (i=8;i<=2000;i++)
if (i%3==1&&i%5==2&&i%7==3)
printf("%d\t",i);
}
第3个回答  2009-04-14
一:
1:a=24 n=2
2: 6>a>2 FALSE
++b==6 TRUE
3: 47和 3


1:
4改为scanf( "%d%d", &m, &n );
5改为if (m < n)
6改为 k = 1;
2:
2改为{ char c;
5改为 if('0'<=c && c<='9')
7改为else if('A'<=c&&c<='Z')
9改为else if('a'<=c&&c<='z')

三:
① scanf("%f %f %f",&a,&b,&c);
② sqrt(s*(s-a)*(s-b)*(s-c));
③ "%7.2f"


void main()
{
int i;
for (i = 0 ;i<=2000;i++)
{
if(((i%7) == 3) && ((i%5) == 2) && ((i%3) == 1))
printf("%d\t",i);

}
}
第4个回答  2009-04-15
一:
1:a=24 n=2
2: 6>a>2 FALSE
++b==6 TRUE
3: 47和 3


1:
1 void main()
4 scanf( "%d%d", &m, &n );
5 if (m < n)
6 k = 1;
9 for(i=m;i!=n;i+=k)

2:
1 void main()
2 { char c;
5 if('0'<=c && c<='9')
7 else if('A'<=c&&c<='Z')
9 else if('a'<=c&&c<='z')

三:
① scanf("%f %f %f",&a,&b,&c);
② sqrt(s*(s-a)*(s-b)*(s-c));
③ "%7.2f"


void main()
{
for (int i = 0 ;i<=2000;i++)
{
if(((i%7) == 3) && ((i%5) == 2) && ((i%3) == 1))
printf("%d ",i);
}
}
相似回答