dev c++问题 ,编译运行没毛病 ,但是输出有问题,从case5开始出现问题
#include <stdio.h>#include <string.h>
#include <stdlib.h>
#include <math.h>
#define N 10
/* run this program using the console pauser or add your own getch, system("pause") or input loop */
void Menu();
float Radius_Area(float Radius);
void Diamond(n);
void Hunderd();
void Prime(int n);
void Bubble(int arr[]);
void add(char arr[]);
char change(char x);
int main(int argc, char *argv[]) {
float Radius;int x,n,i;int arr[N];char x1,arr1[50];
Menu();
printf("\n*****************\n");
printf("input number please!\n");
scanf("%d",&x);
switch(x)
{
case 1: printf("input : Radius\n");scanf("%f",&Radius);
printf("圆的面积为;%.2f\n",Radius_Area(Radius));break;
case 2: printf("input :n\n");scanf("%d",&n);Diamond(n);break;
case 3: Hunderd();break;
case 4: printf("please input :n\n");scanf("%d",&n);Prime(n);break;
case 5: for(i=0;i<N;i++)
{
printf("please input :arr[%d]\n",i);
scanf("%d",arr);
}
Bubble(arr);break;
case 6: printf("please input:arr1\n");gets(arr1);add(arr1);break;
case 7: printf("please input:x1\n");scanf("%c",&x1);printf("%c转换后:%c",x1,change(x1));break;
}
return 0;
}
void Menu() //菜单函数//
{
printf("\n 1 随机输入r,求圆的面积");
printf("\n 2 打印菱形");
printf("\n 3 百钱买百鸡问题");
printf("\n 4 素数问题");
printf("\n 5 数组冒泡排序");
printf("\n 6 随机输入字符串求其中数字、大写字母、空格出现的次数,以问号结束");
printf("\n 7 大小写字母转换");
}
float Radius_Area(float Radius) //圆的面积//
{ float Radius_Area;
Radius_Area=3.14*Radius*Radius;
return (Radius_Area);
}
void Diamond(n) //打印菱形//
{
int i,j;
for(i=1;i<=n;i++)
{
for(j=1;j<=n-i;j++) printf(" ");
for(j=1;j<=2*i-1;j++) printf("*");
printf("\n");
}
for(i=n-1;i>=1;i--)
{
for(j=1;j<=n-i;j++) printf(" ");
for(j=1;j<=2*i-1;j++) printf("*");
printf("\n");
}
}
void Hunderd() //百钱买百鸡问题//
{ int Male,Trigamous,Small;float t;t=0;
for(Male=1;Male<=19;Male++)
{
for(Trigamous=1;Trigamous<=32;Trigamous++)
{
Small=100-Male-Trigamous;
t=(float)Small/3;
if(5*Male+3*Trigamous+t==100)
printf("公鸡=%d,母鸡=%d,小鸡=%d\n",Male,Trigamous,Small);
}
}
}
void Prime(int n) //素数问题//
{
int i,m;m=0;
for(i=2;i<=sqrt(n);i++)
{
if(n%i==0)
{
printf("n不是素数\n");
m=1;
break;
}
}
if(m==0)printf("n是素数\n");
}
void Bubble(int ar[]) //冒泡排序//
{
int i,j,t;t=0;
for(i=0;i<N-1;i++)
for(j=0;j<N-1-i;j++)
if(ar[j]>ar[j+1])
{
t=ar[j];ar[j]=ar[j+1];ar[j+1]=t;
}
for(i=0;i<N;i++)printf("%d\n",ar[i]);
}
void add(char arr[50]) //字符串统计问题//
{
int k,j,i,n;i=0;j=0;n=0;k=0;
while(arr[i]!='?');
{
if(arr[i]==' ')k++;
if(arr[i]>='0'&&arr[i]<='9')j++;
if(arr[i]>='A'&&arr[i]<='z')n++;
i++;
}
printf("数字:%d,字母:%d,空格:%d\n",j,n,k);
}
char change(char x) //字母转换问题//
{
char y;
if(x>='a'&&x<='z')y=y-32;
if(x>='A'&&x<='Z')y=y+32;
return(y);
}