C语言:萌新求助。可以看下我的代码哪里出问题了吗

xianmujiang 2017-12-08 07:05:04
#include <stdio.h>
#include<windows.h>

int main()
{
int a[10],n=0,i,x,count,p,j;
char s;
do
{
system("cls");
printf("\t(1)添加一个数\n");
printf("\t(2)查找一个数\n");
printf("\t(3)删除一个数\n");
printf("\t(4)对数组排序\n");
printf("\t(5)显示这个数的所有数\n");
printf("\t(6)退出\n");
printf("请选择\n");
fflush(stdin);
s = getchar();

switch(s)
{
case'1':
if (n>=10)
printf("数组已满\n");
else
{
printf("输入第%d个数\n",n+1);
scanf("%d",&x);
n++;
}
break;
case'2':
printf("输入你要查找的数\n");
scanf("%d",&x);
count=0;
for (i=0;i<n;i++)
{
if (a[i]==x)
{
count++;
printf("找到第%d个数是%d\n",i+1,x);
}
}
if (count==0)
printf("没有要找的数");
else
printf("共找到%d个数\n",count);
break;
case'3':
printf("输入你想删除的数\n");
scanf("%d",&x);
count=0;
for (i=0;i<n;i++)
{
if (a[i]==x)
{
count++;

printf("第%d个数是%d\n",i+1,x);
p=i;
}
}
if (count==0)
printf("没有要删除的数\n");
else if (count==1)
{
for (i=p;i<n-1;i++)
a[i] = a[i+1];
printf("删除成功\n");
n--;
}
else
{
printf("共找到%d个数\n",count);
printf("输入你要删除第几个数: ");
scanf("%d",&p);
if(a[p-1]==x)
{
for (i=p-1;i<n-1;i++)
a[i]=a[i-1];
printf("删除成功\n");
n--;
}
}
printf("删除错误\n");
break;
case'4':
printf("请选择(1)升序(2)降序:");
scanf("%d",&p);
if (p==1||p==2)
{
for (i=0;i<n-1;i++)
{
for (j=0;j<n-1-i;j++)
{
if ((p==1 && a[j]>a[j+1])||(p==2 && a[j]<a[j+1]))
{
x=a[j];
a[j]=a[j+1];
a[j+1]=x;
}
}
}
printf("排序成功\n");
}
case'5':
for (i=0;i<n;i++)
printf("%d",a[i]);
printf("\n");
}
}while(s!='6');
return 1;
}




除了1。其他的运行不出来
...全文
147 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
xianmujiang 2017-12-08
  • 打赏
  • 举报
回复
QAQ再次求助啊
xianmujiang 2017-12-08
  • 打赏
  • 举报
回复
这样啊。那要怎么改。QWQ
引用 3 楼 Intel0011 的回复:
printf("数组已满\n"); else { printf("输入第%d个数\n",n+1); scanf("%d",&x); --> scanf("%d",&a[n]); 另外你的break只是跳出来switch,程序显示被接下来的新一轮循环的system("cls");清除了
xianmujiang 2017-12-08
  • 打赏
  • 举报
回复
还没。。。。
引用 4 楼 htltju 的回复:
解决了吗请问
htltju 2017-12-08
  • 打赏
  • 举报
回复
解决了吗请问
Intel0011 2017-12-08
  • 打赏
  • 举报
回复
printf("数组已满\n"); else { printf("输入第%d个数\n",n+1); scanf("%d",&x); --> scanf("%d",&a[n]); 另外你的break只是跳出来switch,程序显示被接下来的新一轮循环的system("cls");清除了
xianmujiang 2017-12-08
  • 打赏
  • 举报
回复
QAQ还是没有人帮忙吗
xianmujiang 2017-12-08
  • 打赏
  • 举报
回复
没有人吗QWQ QAQ

69,382

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧