C语言程序设计题!!!

下面的程序实现求解:x*x(x*x-10>0)y={-x*x(x*x-10<或=0)(1)程序运行中如果输入X的值为2,上机验证分析结果。(2)1#include<std... 下面的程序实现求解:
x*x (x*x-10>0)
y={
-x*x (x*x-10<或=0)
(1)程序运行中如果输入X的值为2,上机验证分析结果。

(2)1 #include <stdio.h>
2 int main()
3 { int i;
4 scanf("%d", &i);
5 switch(i %3)
6 {
7 case 0:
8 ++i; putchar('#'); break;
9 case 1:
10 i=i+3;
11 case 2:
12 putchar('$');
13 default:
14 putch('^');
15 }
16 }
a.程序运行时,如果输入的i分别是6,7,8时,观察程序的运行结果。
b.如在程序中的第10行以及第12行后面添加一个break;再运行程序,如果输入数据i的值分别是6,7,8时,观察程序运行结果。
c.比较两种情况下程序运行结果的差异,并对结果的差异进行分析。

谢谢!!!
展开
 我来答
佟佳侠营能
2019-09-08 · TA获得超过3.1万个赞
知道大有可为答主
回答量:1.1万
采纳率:33%
帮助的人:743万
展开全部
内容确实有点长,我们有做过类似的
,你参考下:
#include<stdio.h>
#include<stdlib.h>
struct
student
{
char
no[11];
char
name[11];
int
a;
int
b;
int
c;
struct
student
*next;
};
struct
student
*head;
float
ave1,ave2,ave3;
#define
N
3
void
main()
{
struct
student
*poin;
struct
student
*input();
void
average();
struct
student
*max();
input();
average();
printf("三门课的总平均分分别为:%f,%f,%f\n",ave1,ave2,ave3);
poin=max();
printf("最高分学生的数据为:\n");
printf("学号\t姓名\t成绩1\t成绩2\t成绩3\n");
printf("%s\t%s\t",poin->no,poin->name);
printf("%d\t%d\t%d\n",poin->a,poin->b,poin->c);
}
struct
student
*input()
{
struct
student
*p,*tail=NULL;
char
select;
head=NULL;
p=head;
do
{
p=(struct
student
*)malloc(sizeof(struct
student));
if(head==NULL)
{
head=p;
tail=p;
tail->next=NULL;
}
else
{
tail->next=p;
tail=p;
tail->next=NULL;
}
printf("请输入该学生的学号:\n");
scanf("%s",p->no);
printf("请输入该学生的姓名:\n");
scanf("%s",p->name);
printf("请输入该学生的三门课成绩:\n");
scanf("%d%d%d",&p->a,&p->b,&p->c);
printf("是否继续?Y/N\n");
fflush(stdin);
scanf("%c",&select);
p=p->next;
}while(select!='n');
return
head;
}
void
average()
{
struct
student
*p;
int
sum1=0,sum2=0,sum3=0;
p=head;
while(p!=NULL)
{
sum1+=p->a;
sum2+=p->b;
sum3+=p->c;
p=p->next;
}
ave1=float(sum1)/N;
ave2=float(sum2)/N;
ave3=float(sum3)/N;
}
struct
student
*max()
{
struct
student
*po;
int
sum[N],b,i;
po=head;
for(i=0;i<N;i++)
{
sum[i]=po->a+po->b+po->c;
po=po->next;
}
b=sum[0];
for(i=1;i<N;i++)
if(sum[i]>b)
b=sum[i];
po=head;
while(po!=NULL)
{
if(po->a+po->b+po->c==b)
break;
else
po=po->next;
}
return
po;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
贸水风梁玲
2019-03-29 · TA获得超过3万个赞
知道大有可为答主
回答量:1.1万
采纳率:28%
帮助的人:794万
展开全部
M个学生考试N门课程,用二维数组表示他们的平均成绩
a[M][N]
M个学生
N个课程
a[3][3]
for
(i=0;i<3;i++)
for
(j=0;j<3;j++)
a[i][j];
每输入一个学生之后输入3个课程!
不知道答案满意不?
祝生活愉快
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
worker43433
2009-07-11 · 超过34用户采纳过TA的回答
知道答主
回答量:224
采纳率:0%
帮助的人:0
展开全部
# include"stdio.h"
void main()
{int n;
scanf("%d",&n);
if(n*n>10) printf("%d",n*n);
else printf("%d",-n*n);
getch();

# $^ $^
# 不输出 $ 怎么又来了
上次符号错了西西n*n>0
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
墨丹心_lifi
2009-07-11
知道答主
回答量:12
采纳率:0%
帮助的人:0
展开全部
(1)-4
(2)a.i=6,结果:#
i=7,结果:$^
i=8,结果:$^
b. i=6,结果:#
i=7,结果:(无)
i=8,结果:$
c.switch语句中 case 分句后没有break则继续往后走,有break则跳出
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式