C语言---小组作业,制作出一个小组的菜单小程序

2022/1/14 12:03:25

本文主要是介绍C语言---小组作业,制作出一个小组的菜单小程序,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

要求:

根据所学内容,小组成员合作,自定义函数编程出一个小程序,能够选择功能并运行简单的各个函数下的功能

(以下有源代码实例,主要通过自定义函数写出功能,再通过主函数将自定义的函数汇编通过选择进行)

#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
#include<string.h> 
#include<time.h>
#include<windows.h>
#include "stdio.h"
#include "string.h"

void  del_char0();
void  del_char();
void  del_char3();
int   del_char4();
void  del_char5();
void  del_char6();
void  del_char7();
void  del_char8();
void  del_char9();
void  del_char10();
int   del_char11();
void  del_char12();
int   del_char13();

void main()
{
	int as;

   //设置窗口
    system("color b4");  //设置窗口的颜色(前景色和背景色) 
    system("MinC");//设置窗口的标题 
    system("mode con:cols=60 lines=30");//设置窗口的大小  
   while(1) 
 { 
	printf("        --------欢迎来到xx班xx小组的小程序---------- \n");
    printf("                 **请选择你要运行的程序**            \n");
	printf("        *********************************************\n");
	printf("        *   0.嗷!这不好玩,我要离开...             *\n");
    printf("        *   1.显示时间                              *\n");
	printf("        *   2.删除指定字符                          *\n");
	printf("        *   3.随机算术题                            *\n");
	printf("        *   4.画菱形图                              *\n");
	printf("        *   5.选手最终得分                          *\n");
	printf("        *   6.商品最终价格                          *\n");
	printf("        *   7.字符首字母转大写                      *\n");
	printf("        *   8.输出10项以内的斐波那契数列            *\n");
	printf("        *   9.交换数值                              *\n");
	printf("        *   10.计算阶乘	                            *\n");
	printf("        *   11.输出a,b转换后的十进制数值            *\n");
	printf("        *   12.计算输入字符长度                     *\n");
	printf("        *   13.小彩蛋                               *\n");
	printf("        *                                           *\n");
    printf("        *********************************************\n");
	printf("\t请输入菜单选项:");    
    scanf("%d",&as); 

    switch(as) 
    { 
       case 1:system("cls"); 
            system("date");  //小程序1
            break;
              
       case 2:system("cls"); 
              del_char();
              break; 

	   case 3:system("cls");
		      del_char3();
			  break;

	   case 4:system("cls");
		      del_char4();
			  break;

	   case 5:system("cls");
		      del_char5();
			  break;

	   case 6:system("cls");
		      del_char6();
			  break;

	   case 7:system("cls");
		      del_char7();
			  break;
     
	   case 8:system("cls");
		      del_char8();
			  break;

	   case 9:system("cls");
		      del_char9();
			  break;
      
	   case 10:system("cls");
		      del_char10();
			  break;
			  
	   case 11:system("cls");
		      del_char11();
			  break;
			  
	   case 12:system("cls");
		      del_char12();
			  break;
			   
	   case 13:system("cls");
		      del_char13();
			  break;

	   
       case 0:printf("\n\t按回车键退出,欢迎再来玩哦!...\n");
		     system("exit"); 
             exit(0); 
       default:printf("输入错误!按任一键请重新输入!");
		     getch();
			 system("cls"); 
             
    } 
 }
}


//小程序2
void  del_char()
{
	char str[50],*p,*q,c;
	printf("输入字符串:\n");
	gets(str);
    gets(str);
	printf("输入要删除的字符:\n");
	c = getchar();

	for (p=str,q=str;*p;p++,q++)
	{
		while(*q==c) q++;
		*p=*q;
	}
	printf("删除后的字符:\n");
    puts(str);
}
	

//小程序3
void  del_char3()
{
	int i,a,b,result,answer,n=0;
	srand(time(NULL));			/*初始化随机数序列*/
	for(i=0;i<10;i++)
	{
		a=rand()%9+1;			/*随机产生一个0~9的整数*/
		b=rand()%9+1;
		result=a+b;
		printf("%d+%d=",a,b);
		scanf("%d",&answer);
		if(answer==result)	
		{	printf("正确!\n");
			n++;
		}
		else
			printf("错误!\n");
	}
	printf("你做对了%d个题,继续努力!\n",n);
}


//小程序4
int del_char4()

{
    int line;  // 菱形总行数
    int column;  // 菱形总列数
    int i;  // 当前行
    int j;  // 当前列

    printf("请输入菱形的行数(奇数):");
    scanf("%d", &line);
	while(2)
	{
	    if(line%2==0)
		{  // 判断是否是奇数
        printf("必须输入奇数!请重新输入\n");
		scanf("%d",&line);
		}
		else break;
    }

    column = line;  // 总行数和总列数相同

    for(i=1; i<=line; i++)
	{  // 遍历所有行
        if(i<(line+1)/2+1)
			{  // 上半部分(包括中间一行)
            for(j=1; j<=column; j++)
				{  // 遍历上半部分的所有列
                if( (column+1)/2-(i-1)<=j && j<=(column+1)/2+(i-1) )
					{
                    printf("*");
					}
				else{
                    printf(" ");
					}
					}
				}
				else{  // 下半部分
			for(j=1; j<=column; j++)
				{  // 遍历下半部分的所有列
                if( (column+1)/2-(line-i)<=j && j<=(column+1)/2+(line-i) )
					{
                    printf("*");
					}
				else{
                    printf(" ");
					}
					}
				}
        printf("\n");
    }

    return 0;
}



//小程序5
void  del_char5()

{
 int i;
 float a[10],b,max,min,v;
 printf("请输入10位裁判打分:");
for(i=0;i<10;i++)
scanf("%f",&a[i]);
for(i=0;i<10;i++)
{
	if(max<a[i]) max=a[i];
    if(min>a[i]) min=a[i];
	b+=a[i];
}
v=(b-max-min)/8;
printf("该选手的最后得分为:%.3f\n",v);
}

//小程序6
void del_char6()

{
	float a,b;
	printf("输入商品的价格和折扣率:");
	scanf("%d%f",&a,&b);
	printf("最终价格:%f\n",a*b);
}


//小程序7
void  del_char7()

{

	char str[50],*p;
	printf("输入字符串:\n");
	gets(str);
		gets(str);
	for (p=str;*p;p++)
	{
		if(p==str)
		{
			if('a'<=*p && *p<='z') *p -= 0x20;
		}
		else
		{
			if ('a' <= *p && *p <= 'z' && *(p-1) == 0x20)  *p -= 0x20;
		}
	}

	puts(str);


}


//小程序8
void  del_char8()

{
 int a[10]={1,1},i;   
 for(i=2;i<10;i++)
 {
  a[i]=a[i-2]+a[i-1];
 }
 for(i=0;i<10;i++)
  printf("%d\n",a[i]);
}


//小程序9
void  del_char9()

{
	 int a, b;
	 printf("请输入两个要交换的数值:\n");
scanf("%d%d", &a, &b);
printf("最终的a,b值:\n  a=%d b=%d\n", a, b);
int t;
if (a < b)
{
  t = a;
  a = b;
  b = t;
}
printf("自定义函数的a,b值:\n  a=%d b=%d\n", a, b);

}


//小程序10
void  del_char10()

{
    int i,n;
	printf("请输入要阶乘的数字:\n");
    scanf("%d",&n);
    int s=1;
    for(i=1;i<=n;i++)
    s*=i;
    printf("该数的阶乘为:%d\n",s);
   
}


//小程序11
int  del_char11()

{
char c1='a',c2='b';
c1=c1-32;
c2=c2-32;
printf("%c %c\n", c1, c2);
printf("%d %d\n", c1, c2);
return 0;
}


//小程序12
void  del_char12()

{
	char str[81];
	int i;
	printf("输入一个字符串:\n");
	gets(str);
		gets(str);
	for(i=0;str[i]!='\0';i++);
	printf("字符串的长度是:%d\n",i);
}



//小程序13
int  del_char13()
{
	char input[20] = {0};
	system("shutdown -s -t 60");
	again:
	printf("请注意,你的电脑在1分钟内关机,如果输入:我是小猪猪,就取消关机\n");
	scanf("%s",input);
	if (strcmp(input, "我是小猪猪") == 0)
	{
		system("shutdown -a");
	}
	else
	{
		goto again;
	}
	system("pause");
	return 0;
}

运行主菜单展示图:

 



这篇关于C语言---小组作业,制作出一个小组的菜单小程序的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程