?? 函數(shù)模塊化 輸入一組n個(gè)數(shù),求最大-小值,平均值 未抄288.cpp
字號(hào):
#include<stdio.h> /**/
/*char showMenu(); //聲明顯示菜單函數(shù) */
int showMenu(); //聲明顯示菜單函數(shù)
int checkMenu(); //聲明核對(duì)菜單函數(shù)
void max(); //聲明求最大值函數(shù)
void min(); //聲明求最小值函數(shù)
void avg(); //聲明求平均值函數(shù)
void main() //主函數(shù)
{
printf("\n\t\t\t函數(shù)調(diào)用━━結(jié)構(gòu)化編程:\n\n 一個(gè)函數(shù)實(shí)現(xiàn)一個(gè)功能,調(diào)用不同函數(shù)實(shí)現(xiàn)不同功能:\n");
int useroperate; //定義"用戶操作"變量
while(1)
{
useroperate=showMenu(); //調(diào)用showMenu()函數(shù),用戶輸入選項(xiàng)編號(hào)
/*
if(checkMenu(useroperate,1,4)) //出錯(cuò)??
{
*/
if(useroperate==1){max();} //調(diào)用求最大值函數(shù)
else if(useroperate==2){min();} //調(diào)用求最小值函數(shù)
else if(useroperate==3){avg();} //調(diào)用求平均值函數(shù)
else if(useroperate==4){break;} //退出循環(huán),程序結(jié)束
/*} */
else {printf(" 請(qǐng)選擇1~4之間的選項(xiàng)!\n"); continue;}
}
}
/*
void main() //主函數(shù)
{
printf("\n\t\t\t函數(shù)調(diào)用━━結(jié)構(gòu)化編程:\n\n 一個(gè)函數(shù)實(shí)現(xiàn)一個(gè)功能,調(diào)用不同函數(shù)實(shí)現(xiàn)不同功能:\n");
char useroperate; //定義"用戶操作"變量
while(1)
{
useroperate=showMenu(); //調(diào)用showMenu()函數(shù),用戶輸入選項(xiàng)編號(hào)
if(useroperate=='1'){max();} //調(diào)用求最大值函數(shù)
else if(useroperate=='2'){min();} //調(diào)用求最小值函數(shù)
else if(useroperate=='3'){avg();} //調(diào)用求平均值函數(shù)
else if(useroperate=='4'){break;} //退出循環(huán),程序結(jié)束
else {printf(" 請(qǐng)選擇1~4之間的選項(xiàng)!\n"); continue;}
}
}
char showMenu() //定義顯示菜單函數(shù),返回整型值,無參數(shù)
{
char select[20]; //定義"用戶選擇"變量
printf("\n\t請(qǐng)選擇下列一個(gè)選項(xiàng)(1~4): ");
printf("\n\t1)求最大值\t2)求最小值\t3)求平均值\t4)退出系統(tǒng)\n");
gets(select);
/*
while(!(select>=49&&select<=52))
{
printf(" 只能選擇1~4,請(qǐng)重新輸入!\n");
select=getchar(); //有問題?
if(select=='\n'){;}
}*/
/*
return select[0];
}*/
int showMenu() //定義顯示菜單函數(shù),返回整型值,無參數(shù)
{
int select; //定義"用戶選擇"變量
printf("\n\t請(qǐng)選擇下列一個(gè)選項(xiàng)(1~4): ");
printf("\n\t1)求最大值\t2)求最小值\t3)求平均值\t4)退出系統(tǒng)\n");
scanf("%d",&select); //不能輸入非數(shù)值?
while(!(select>=1&&select<=4))
{
printf(" 只能選擇1~4,請(qǐng)重新輸入!\n");
scanf("%d",&select); //不能輸入非數(shù)值?
}
return select;
}
/* //多余函數(shù)???沒用上?
int checkMenu(int num,int min,int max) //定義核對(duì)菜單函數(shù),返回整型值,整型形參
{
if(num<=max && num>=min){return 1;} //如選項(xiàng)編號(hào)在最小編號(hào)~最大編號(hào)之間,返回真1
else {return 0;} //否則,選項(xiàng)編號(hào)在最小編號(hào)~最大編號(hào)之外,返回假0
} */
void max() //定義求最大值函數(shù)max()
{
printf("\t輸入一組整數(shù)(n個(gè),n取值1~100),調(diào)用函數(shù)求最大值\n\n");
while(1)
{
int i,n,a[100],*p=a;
printf(" 輸入整數(shù)個(gè)數(shù)n(n<=0或n>100時(shí)結(jié)束): ");
scanf("%d",&n); //輸入非數(shù)值時(shí)死循環(huán)?
if(n<=0||n>100){break;}
for(i=0;i<n;i++)
{
printf(" 輸入第%d個(gè)數(shù): ",i+1); scanf("%d",p++);
}
p=a;
int max=*p++;
for(i=1;i<n;i++,p++)
{
if(*p>max){max=*p;}
}
printf("\t這一組數(shù)的最大值=%d\n",max); //調(diào)用max()函數(shù)返回最大值,實(shí)參a,&n傳遞地址賦予形參
printf(" 欲繼續(xù)輸入嗎? 是則回車,否則輸入'空格'回車 ");
getchar();
if(getchar()==' '){break;}
else {while(getchar()!='\n'){;}}
printf("\n");
}
}
void min() //定義求最小值函數(shù)min()
{
printf("\t輸入一組整數(shù)(n個(gè),n取值1~100),調(diào)用函數(shù)求最小值\n\n");
while(1)
{
int i,n,a[100],*p=a;
printf(" 輸入整數(shù)個(gè)數(shù)n(n<=0或n>100時(shí)結(jié)束): ");
scanf("%d",&n); //輸入非數(shù)值時(shí)死循環(huán)?
if(n<=0||n>100){break;}
for(i=0;i<n;i++)
{
printf(" 輸入第%d個(gè)數(shù): ",i+1); scanf("%d",p++);
}
int min=a[0];
for(i=1;i<n;i++)
{
if(a[i]<min){min=a[i];}
}
printf("\t這一組數(shù)的最小值=%d\n",min); //調(diào)用min()函數(shù)返回最小值,實(shí)參a,&n傳遞地址賦予形參
printf(" 欲繼續(xù)輸入嗎? 是則回車,否則輸入'空格'回車 ");
getchar();
if(getchar()==' '){break;}
else {while(getchar()!='\n'){;}}
printf("\n");
}
}
void avg() //定義求平均值函數(shù)avg()
{
printf("\t輸入一組整數(shù)(n個(gè),n取值1~100),調(diào)用函數(shù)求平均值\n\n");
while(1)
{
int i,n,a[100],*p=a;
printf(" 輸入整數(shù)個(gè)數(shù)n(n<=0或n>100時(shí)結(jié)束): ");
scanf("%d",&n); //輸入非數(shù)值時(shí)死循環(huán)?
if(n<=0||n>100){break;}
for(i=0;i<n;i++)
{
printf(" 輸入第%d個(gè)數(shù): ",i+1); scanf("%d",p++);
}
p=a;
float avg=0.0;
for(i=0;i<n;i++)
{
avg+=*p++;
}
avg/=n;
printf("\t這一組數(shù)的平均值=%.4f\n",avg); //調(diào)用avg()函數(shù)返回平均值,實(shí)參a,&n傳遞地址賦予形參
printf(" 欲繼續(xù)輸入嗎? 是則回車,否則輸入'空格'回車 ");
getchar();
if(getchar()==' '){break;}
else {while(getchar()!='\n'){;}}
printf("\n");
}
}
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -